[PATCH] 2.5.17 IDE 66
authorMartin Dalecki <dalecki@evision-ventures.com>
Wed, 22 May 2002 04:22:11 +0000 (21:22 -0700)
committerLinus Torvalds <torvalds@home.transmeta.com>
Wed, 22 May 2002 04:22:11 +0000 (21:22 -0700)
commit6b4fef7ad8297f840fc6c1a8e6ff3ca7a525fb2b
tree3c6ccaf86e0ea9c26bb0f6686b3017f4190114a8
parent694793903207ecf6a4a1b508b636f02cfb3a3016
[PATCH] 2.5.17 IDE 66

 - Move ll_10byte_cmd_build to the only place where it's used: ide-cd.  The SCSI
   layer does have it's own implementation which additionally it's messing
   around with the hard_nr_sectors struct request value.  One should *not*
   provide "infrastructure" until its really used as such.

   If anywhere this should reside in a file called ATAPI.

 - Unfold the INIT_REQUEST macro from blk.h. This showed up plenty of duplicate
   checks for QUEUE_EMPTY. Clean them as well. Remove the over cautious
   major(CURRENT->rq_dev != MAJOR_NR) checks. During the last several years I
   never saw any report about it. Looking at the !CURRENT->bio it is clear that
   dereferencing NULL will provide the same kind of panic as the check.  Some
   comments around the code in question show nicely that indeed INIT_REQUEST
   was a good example of code obfuscation.

 - A short look at RQ_INACTIVE shows that it is only used inside the scsi.c file
   and during the removal of devices. This shows that the many checks for
   RQ_INACTIVE are not necessary. Looking closer even shows that some of them
   did happen before checks for an empty queue. Plenty of drivers didn't care
   about it and the CD-ROM ones should be handled properly, because the
   most common drivers would fail as well. Comments indicate that this
   was an leftover from 1.3 days...
25 files changed:
arch/m68k/atari/stram.c
drivers/acorn/block/mfmhd.c
drivers/block/ll_rw_blk.c
drivers/block/paride/pcd.c
drivers/block/paride/pd.c
drivers/block/paride/pf.c
drivers/block/ps2esdi.c
drivers/block/xd.c
drivers/block/z2ram.c
drivers/cdrom/cdu31a.c
drivers/cdrom/cm206.c
drivers/cdrom/gscd.c
drivers/cdrom/mcdx.c
drivers/cdrom/sbpcd.c
drivers/cdrom/sonycd535.c
drivers/ide/hd.c
drivers/ide/ide-cd.c
drivers/mtd/ftl.c
drivers/mtd/mtdblock.c
drivers/mtd/mtdblock_ro.c
drivers/mtd/nftlcore.c
drivers/s390/block/xpram.c
drivers/sbus/char/jsflash.c
include/linux/blk.h
include/linux/blkdev.h