USB: uas: heed CAPACITY_HEURISTICS
authorOliver Neukum <oneukum@suse.com>
Thu, 14 Nov 2019 11:27:57 +0000 (12:27 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 18 Nov 2019 11:41:55 +0000 (12:41 +0100)
There is no need to ignore this flag. We should be as close
to storage in that regard as makes sense, so honor flags whose
cost is tiny.

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

index def2d4aba54935bb80906dccc76cf8dc05f8130e..475b9c692827a3a0742b8f295ceab1ef4f7256df 100644 (file)
@@ -837,6 +837,12 @@ static int uas_slave_configure(struct scsi_device *sdev)
        if (devinfo->flags & US_FL_FIX_CAPACITY)
                sdev->fix_capacity = 1;
 
+       /*
+        * in some cases we have to guess
+        */
+       if (devinfo->flags & US_FL_CAPACITY_HEURISTICS)
+               sdev->guess_capacity = 1;
+
        /*
         * Some devices don't like MODE SENSE with page=0x3f,
         * which is the command used for checking if a device