--- linux-2.4.17-pre7/drivers/block/floppy.c-orig Mon Dec 10 16:39:30 2001 +++ linux-2.4.17-pre7/drivers/block/floppy.c Mon Dec 10 16:48:40 2001 @@ -4170,6 +4170,15 @@ else floppy_sizes[i] = MAX_DISK_SIZE; + /* disable read-ahead on floppies */ + max_readahead[MAJOR_NR] = kmalloc(sizeof(*max_readahead) * 256, GFP_KERNEL); + if (max_readahead[MAJOR_NR] == NULL) { + return -ENOMEM; + } + + for (i=0; i<256; i++) + max_readahead[MAJOR_NR][i] = 0; + blk_size[MAJOR_NR] = floppy_sizes; blksize_size[MAJOR_NR] = floppy_blocksizes; blk_init_queue(BLK_DEFAULT_QUEUE(MAJOR_NR), DEVICE_REQUEST); @@ -4461,7 +4470,8 @@ void cleanup_module(void) { int dummy; - + + kfree(max_readahead[MAJOR_NR]); devfs_unregister (devfs_handle); devfs_unregister_blkdev(MAJOR_NR, "fd");