]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
USB: uas: honor flag to avoid CAPACITY16
authorOliver Neukum <oneukum@suse.com>
Thu, 14 Nov 2019 11:27:56 +0000 (12:27 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 17 Dec 2019 19:06:48 +0000 (20:06 +0100)
commit bff000cae1eec750d62e265c4ba2db9af57b17e1 upstream.

Copy the support over from usb-storage to get feature parity

Signed-off-by: Oliver Neukum <oneukum@suse.com>
Cc: stable <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20191114112758.32747-2-oneukum@suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/storage/uas.c

index 0d044d59317edb2f16da69f32644ecb28c6c2161..8ce763088eee615300573c75dc4fe6389810d699 100644 (file)
@@ -825,6 +825,10 @@ static int uas_slave_configure(struct scsi_device *sdev)
                sdev->wce_default_on = 1;
        }
 
+       /* Some disks cannot handle READ_CAPACITY_16 */
+       if (devinfo->flags & US_FL_NO_READ_CAPACITY_16)
+               sdev->no_read_capacity_16 = 1;
+
        /*
         * Some disks return the total number of blocks in response
         * to READ CAPACITY rather than the highest block number.