Re: [Bug 200917] 4.18 regression: I/O error on external icybox disk enclosures

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hello,

On 09/09/2018 21:28, Alan Stern wrote:
On Sun, 9 Sep 2018, Klaus Kusche wrote:

Hello,

On 01/09/2018 17:38, Alan Stern wrote:
However, the USB layer does set certain quirk bits which can cause
those other parts to avoid sending certain commands.  Perhaps your
controller needs the BROKEN_FUA flag (see the existing entries in
drivers/usb/storage/unusual_devs.h with that flag).

The following seems to fix the problem (I don't know if I did it right):

--- unusual_uas.h.orig  2018-09-09 10:31:20.440751625 +0200
+++ unusual_uas.h       2018-09-09 10:32:30.491381466 +0200
@@ -95,7 +95,7 @@
                  "JMicron",
                  "JMS566",
                  USB_SC_DEVICE, USB_PR_DEVICE, NULL,
-               US_FL_NO_REPORT_OPCODES | US_FL_IGNORE_UAS),
+               US_FL_NO_REPORT_OPCODES | US_FL_IGNORE_UAS | US_FL_BROKEN_FUA),

   /* Reported-by: Hans de Goede <hdegoede@xxxxxxxxxx> */
   UNUSUAL_DEV(0x4971, 0x1012, 0x0000, 0x9999,

Okay.  You should submit this in the proper format for inclusion in the
kernel.  Follow the instructions in
Documentation/process/submitting-patches.rst.

Sorry for the long delay, I was not able to spare some time earlier
(winter semester has started...).

I just wanted to submit the patch as advised above,
but noticed that it does not apply to the current usb git tree:

Both the usb tree and linus's tree do not have US_FL_IGNORE_UAS
set for device JMS566 (357d:7788).
So I checked where my version came from and found a patch
which gentoo applies to all its kernels, but which is not mainline:

--- a/drivers/usb/storage/unusual_uas.h
+++ b/drivers/usb/storage/unusual_uas.h
@@ -141,12 +141,15 @@ UNUSUAL_DEV(0x2109, 0x0711, 0x0000, 0x9999,
 		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
 		US_FL_NO_ATA_1X),

-/* Reported-by: Takeo Nakayama <javhera@xxxxxxx> */
+/*
+ * Initially Reported-by: Takeo Nakayama <javhera@xxxxxxx>
+ * UAS Ignore Reported by Steven Ellis <sellis@xxxxxxxxxx>
+ */
 UNUSUAL_DEV(0x357d, 0x7788, 0x0000, 0x9999,
 		"JMicron",
 		"JMS566",
 		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
-		US_FL_NO_REPORT_OPCODES),
+		US_FL_NO_REPORT_OPCODES | US_FL_IGNORE_UAS),

 /* Reported-by: Hans de Goede <hdegoede@xxxxxxxxxx> */
 UNUSUAL_DEV(0x4971, 0x1012, 0x0000, 0x9999,

So is my patch still relevant or is it obsolete?
Shall I add only US_FL_BROKEN_FUA even without US_FL_IGNORE_UAS,
or shall I add both flags?

(I noticed that US_FL_BROKEN_FUA without US_FL_IGNORE_UAS is set
for two entries for "JMS567").

--
Prof. Dr. Klaus Kusche
Private address: Rosenberg 41, 07546 Gera, Germany
+49 365 20413058 klaus.kusche@xxxxxxxxxxxxxxx https://www.computerix.info
Office address: DHGE Gera, Weg der Freundschaft 4, 07546 Gera, Germany
+49 365 4341 306 klaus.kusche@xxxxxxx https://www.dhge.de



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux