On Thu, Nov 15, 2007 at 03:38:13AM +0100, Kay Sievers wrote:Yes, I debugged it, there's some new findings. It is freed by put_disk. The floppy driver alloc_disk and then call put_disk without register_disk. in kobject_cleanup line 551: if(s) kset_put(s); Now the kset is set in alloc_disk after kobject_init, so it is not refereced yet. please try this patch: block/genhd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -upr linux/block/genhd.c linux.new/block/genhd.c --- linux/block/genhd.c 2007-11-15 15:59:11.000000000 +0800 +++ linux.new/block/genhd.c 2007-11-15 15:59:39.000000000 +0800 @@ -718,9 +718,9 @@ struct gendisk *alloc_disk_node(int mino } } disk->minors = minors; - kobject_init(&disk->kobj); disk->kobj.kset = block_kset; disk->kobj.ktype = &ktype_block; + kobject_init(&disk->kobj); rand_initialize_disk(disk); INIT_WORK(&disk->async_notify, media_change_notify_thread); -
| James Bottomley | Re: Integration of SCST in the mainstream Linux kernel |
| Greg Kroah-Hartman | [PATCH 007/196] Chinese: add translation of stable_kernel_rules.txt |
| david | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Jan Engelhardt | intel iommu (Re: -mm merge plans for 2.6.23) |
git: | |
| Alexey Dobriyan | Re: [GIT]: Networking |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | Re: [BUG] New Kernel Bugs |
