Re: [PATCH] usb-storage: Add quirks to make G-Technology "G-Drive" work

From: Alan Stern
Date: Thu May 17 2018 - 14:17:21 EST


On Thu, 17 May 2018, Alexander Kappner wrote:

> Oliver and Alan,
>
> thank for investigating.
>
> > this is suspicious. You do not actually whether US_FL_NO_WP_DETECT
> > by itself would make the device work. Can you please test that?
>
> US_FL_NO_WP_DETECT without US_FL_IGNORE_UAS does not make a difference,
> even with the patch you included applied:

Are you certain Oliver's new code was executed? If you put
US_FL_NO_WP_DETECT only in unusual_devs.h and not in ususual_uas.h then
it would not affect the uas driver.

> > That's bizarre too. Even though the only difference is a MODE SENSE
> > command, the command that actually faliled was WRITE(16).
> It looks to me like the MODE SENSE simply hangs the drive, so anything
> issued after that will fail. Of course the drive says it's the "current
> command" that caused the failure, but I wouldn't give too much credence to
> that. FYI -- this device is a consumer grade rotational drive that you can
> get for less than $200, so I wouldn't be surprised if the implementations
> have issues.
>
> Also, I noticed that copying onto the drive with dd works fine, whereas
> trying to mount a filesystem immediately crashes it. I suspect this is
> because check_disk_change is called on mount (which eventually calls down
> to sd_read_write_protect_flag, which is where the US_FL_NO_WP_DETECT flag
> comes into play).

Was this tested with uas or usb-storage?

Alan Stern