From: Hermann Lauer <Hermann.Lauer@xxxxxxxxxxxxxxxxxxxxx> Date: Wed, 28 Jan 2009 09:45:18 +0100 > It's hanging in kset_register. Does this ring a bell to you ? > Will move the full output to the usual place. Thanks. ... > [ 47.553935] calling of_bus_driver_init+0x0/0x12c > [ 47.610180] Setting up of bus > [ 47.645596] In bus_register(). > [ 47.682056] Doing kobject_set_name() > [ 47.724764] kset_register() I suspect it's hanging in uevent generation, let's verify that. Something really weird is going on in your box, I wonder if the bug is surfacing because of all of the non-standard options you have enabled in your build such as cgroups and stuff like that. Anyways, add this patch on top of your tree and please send the tail of the new output. One thing you might want to try to do when it hangs is go: 1) Send a 'break' over the console then immediately type '8'. This will increase the kernel log level. 2) Send a 'break' then 'p', this will dump the current cpu's registers. 3) Send a 'break' then 'y', this will give a brief backtrace on all cpus. 4) Send a 'break' then 't', this will dump the state of all processes on the system. Unfortunately, none of those will work if the cpu handling console interrupts has cpu interrupts disabled for whatever reason :-/ But it is definitely worth a try. Thanks. diff --git a/lib/kobject.c b/lib/kobject.c index fbf0ae2..4553903 100644 --- a/lib/kobject.c +++ b/lib/kobject.c @@ -708,11 +708,17 @@ int kset_register(struct kset *k) if (!k) return -EINVAL; + printk(KERN_ERR "kset_register: kset_init()\n"); kset_init(k); + printk(KERN_ERR "kset_register: kset_add_internal()\n"); err = kobject_add_internal(&k->kobj); - if (err) + if (err) { + printk(KERN_ERR "kset_register: Got error %d\n", err); return err; + } + printk(KERN_ERR "kset_register: kobject_uevent()\n"); kobject_uevent(&k->kobj, KOBJ_ADD); + printk(KERN_ERR "kset_register: Done\n"); return 0; } -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html