Date: Sat, 21 Mar 2009 21:19:42 -0600 (MDT) From: "M. Warner Losh" <imp@bsdimp.com> To: pluknet@gmail.com Cc: mav@freebsd.org, freebsd-current@freebsd.org Subject: Re: Unable to set devclass (devname: (null) Message-ID: <20090321.211942.-1540398823.imp@bsdimp.com> In-Reply-To: <a31046fc0903091538gab6014cqe7a6d24fc060cf6e@mail.gmail.com> References: <49B594B5.2060706@FreeBSD.org> <a31046fc0903091526m33363223ja667eff83de19ff0@mail.gmail.com> <a31046fc0903091538gab6014cqe7a6d24fc060cf6e@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
In message: <a31046fc0903091538gab6014cqe7a6d24fc060cf6e@mail.gmail.com> pluknet <pluknet@gmail.com> writes: : 2009/3/10 pluknet <pluknet@gmail.com>: : > 2009/3/10 Alexander Motin <mav@freebsd.org>: : >> pluknet wrote: : >>> : >>> 2009/3/10 Alexander Motin <mav@freebsd.org>: : >>>> : >>>> pluknet wrote: : >>>>> : >>>>> Is it ok (and how much harmfull) to see this message? : >>>>> : >>>>> driver bug: Unable to set devclass (devname: (null)) : >>>>> : >>>>> P.S. : >>>>> This is introduced in subr_bus.c, v1.216 : >>>>> - PDEBUG(("Unable to set device : >>>>> class")); : >>>>> + printf("driver bug: Unable to : >>>>> set : >>>>> devclass (devname: %s)\n", : >>>>> + (child ? : >>>>> device_get_name(child) : : >>>>> + "no device")); : >>>>> : >>>>> where PDEBUG was moved from BUS_DEBUG to general output. : >>>> : >>>> Actually this check was introduced in rev. 1.214, just was not logged. : >>>> Before this change system could crash soon after this message. Now it : >>>> should : >>>> not, but related device probably will not work properly. It is probably : >>>> not : >>>> good and should be fixed, but it can be just a low memory symptom. It was : >>>> noticed for ata driver, but I hope it was fixed. Where have you get it? : >>> : >>> This is during the boot, see dmesg (attached). : >> : >> It does not gives much info. Can you try to add dl->driver->name, : >> device_get_unit(child) and device_set_devclass() result printing there? : >> : > : > That gives: : > atkbd0: [GIANT-LOCKED] : > atkbd0: [ITHREAD] : > driver bug: Unable to set devclass (devname: (null)) : > dl->driver->name: atkbdc : > device_get_unit(child): -1 : > device_set_devclass(): 17 : > : : Well, yes. That confirms with numerous devclass_alloc_unit() EEXIST : hidden messages; : : atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0 : atkbd0: <AT Keyboard> irq 1 on atkbdc0 : atkbd: the current kbd controller command byte 0065 : atkbd: keyboard ID 0x83ab (2) : kbd0 at atkbd0 : kbd0: atkbd0, AT 101/102 (2), config:0x0, flags:0x3d0000 : ioapic0: routing intpin 1 (ISA IRQ 1) to lapic 0 vector 54 : atkbd0: [GIANT-LOCKED] : atkbd0: [ITHREAD] : psm0: unable to allocate IRQ : atkbdc: atkbdc-1 already exists; skipping it Can you set a breakpoint on this line and give a traceback? : driver bug: Unable to set devclass (devname: (null)) : dl->driver->name: atkbdc : device_get_unit(child): -1 : atkbdc: atkbdc-1 already exists; skipping it Ditto : device_set_devclass(): 17 : psmcpnp0: <PS/2 mouse port> port 0x60,0x64 irq 12 on acpi0 : psm0: current command byte:0065 : psm0: <PS/2 Mouse> irq 12 on atkbdc0 : ioapic0: routing intpin 12 (ISA IRQ 12) to lapic 0 vector 55 : psm0: [GIANT-LOCKED] : psm0: [ITHREAD] : psm0: model IntelliMouse Explorer, device ID 4-00, 5 buttons : psm0: config:00000000, flags:00000008, packet size:4 : psm0: syncmask:08, syncbits:00 : ppc0: using extended I/O port range : ppc0: using extended I/O port range : pnp_identify: Trying Read_Port at 203 : pnp_identify: Trying Read_Port at 243 : pnp_identify: Trying Read_Port at 283 : pnp_identify: Trying Read_Port at 2c3 : pnp_identify: Trying Read_Port at 303 : pnp_identify: Trying Read_Port at 343 : pnp_identify: Trying Read_Port at 383 : pnp_identify: Trying Read_Port at 3c3 : PNP Identify complete : isa_probe_children: disabling PnP devices : pmtimer0 on isa0 : ata: ata0 already exists; skipping it : ata: ata1 already exists; skipping it : atkbdc: atkbdc0 already exists; skipping it : sc: sc0 already exists; skipping it : vga: vga0 already exists; skipping it No need for these... Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090321.211942.-1540398823.imp>