[SCSI] usbstorage: use last_sector_bug flag universally
authorHans de Goede <j.w.r.degoede@hhs.nl>
Sun, 20 Jan 2008 10:27:29 +0000 (11:27 +0100)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Fri, 25 Jan 2008 22:50:31 +0000 (16:50 -0600)
This patch sets the last_sector_bug flag to 1 for all USB disks. This is
needed to makes the cardreader on various HP multifunction printers work.

Since the performance impact is negible we set this flag for all USB disks to
avoid an unusual_devs.h nightmare.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Acked-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
drivers/usb/storage/scsiglue.c

index dd8b13ef2414b5996426cfe0989bb306ec114caa..8c1e2954f3b9e8556601b823bb0238a8ed41b0a6 100644 (file)
@@ -187,6 +187,10 @@ static int slave_configure(struct scsi_device *sdev)
                 * automatically, requiring a START-STOP UNIT command. */
                sdev->allow_restart = 1;
 
+               /* Some USB cardreaders have trouble reading an sdcard's last
+                * sector in a larger then 1 sector read, since the performance
+                * impact is negible we set this flag for all USB disks */
+               sdev->last_sector_bug = 1;
        } else {
 
                /* Non-disk-type devices don't need to blacklist any pages