linux/block
Zachary Amsden b8ea2cb512 [BLOCK] elevator init fixes
I got a panic in the elevator code, backtrace :

Unable to handle kernel NULL pointer dereference at virtual address 00000060
..
EIP is at elevator_put+0x0/0x30 (null elevator_type passed)
..
elevator_init+0x38
blk_init_queu_node+0xc9
floppy_init+0xdb
do_initcalls+0x23
init+0x10a
init+0x0

Clearly if the kmalloc here fails, e->elevator_type is not yet set; this
appears to be the correct fix, but I think I probably hit the second case
due to a race condition.  Someone more familiar with the elevator code
should look at this more closely until I can determine if I can reproduce.

Signed-off-by: Zachary Amsden <zach@vmware.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jens Axboe <axboe@suse.de>
2005-11-12 10:54:48 +01:00
..
as-iosched.c Merge branch 'block-dir' of git://brick.kernel.dk/data/git/linux-2.6-block 2005-11-07 08:32:39 -08:00
cfq-iosched.c [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
deadline-iosched.c [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
elevator.c [BLOCK] elevator init fixes 2005-11-12 10:54:48 +01:00
genhd.c [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
ioctl.c [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
Kconfig [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
Kconfig.iosched [BLOCK] iosched: fix setting of default io scheduler 2005-11-04 08:44:58 +01:00
ll_rw_blk.c Merge branch 'block-dir' of git://brick.kernel.dk/data/git/linux-2.6-block 2005-11-07 08:32:39 -08:00
Makefile [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
noop-iosched.c [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00
scsi_ioctl.c [BLOCK] Move all core block layer code to new block/ directory 2005-11-04 08:43:35 +01:00