From: Greg KH <gregkh@linuxfoundation.org>
To: JC Kuo <jckuo@nvidia.com>
Cc: linux-usb@vger.kernel.org, stern@rowland.harvard.edu,
usb-storage@lists.one-eyed-alien.net, oneukum@suse.com
Subject: Re: [PATCH] usb: storage: skip only when uas driver is loaded
Date: Tue, 2 Jul 2019 06:42:49 +0200 [thread overview]
Message-ID: <20190702044249.GA694@kroah.com> (raw)
In-Reply-To: <8e8e8703-8620-b625-4917-bbb8d999caa4@nvidia.com>
On Tue, Jul 02, 2019 at 10:36:59AM +0800, JC Kuo wrote:
> On 7/1/19 4:52 PM, Greg KH wrote:
> > On Mon, Jul 01, 2019 at 04:48:48PM +0800, JC Kuo wrote:
> >> When usb-storage driver detects a UAS capable device, it ignores the
> >> device if CONFIG_USB_UAS is enabled. usb-storage driver assumes uas
> >> driver certainly will be loaded. However, it's possible that uas
> >> driver will not be loaded, for example, uas kernel module is not
> >> installed properly or it is in modprobe blacklist.
> >>
> >> In case of uas driver not being loaded, the UAS capable device will
> >> not fallback to work at Bulk-only-transfer mode. The device just
> >> disappears without any notification to user/userspace.
> >>
> >> This commit changes usb-storage driver to skip UAS capable device
> >> only when uas driver is already loaded to make sure the device will
> >> at least work with Bulk protocol.
> >
> > But what happens if the driver is loaded afterward, because 'modprobe'
> > was called by the driver core (or it should have been, because this is a
> > device that supports that protocol)?
> If uas driver is loaded after usb-storage driver probed the device,
> the device will still work with Bulk-only protocol, though it can't
> make uses of streams.
Which is not a good thing, and is what the original code was there to
prevent happening.
> > I think you just broke working systems :(
> >
> > Why wouldn't the UAS driver get loaded automatically if it is configured
> > in the system as it is today?
> An user might want to completely disable uas for some reason so he/she
> adds "blacklist uas" to modprobe conf file. I think in case of this,
> usb-storage driver has to enable this device with the legacy Bulk-only
> protocol instead of ignoring the device.
Why would they want to do that? Where are people doing this in ways
that breaks their systems?
> As an alternative to this patch, I thought I could get uas driver
> loaded before usb-storage driver so I tried moving the functions in
> drivers/usb/storage/uas-detect.h into uas.c and letting usb-storage
> links uas_use_uas_driver() of uas.ko. However, that didn't work
> because uas driver actually depends on usb-storage driver for
> usb_stor_adjust_quirks(). There will be a recursive dependency.
>
> Please let me know if there is better approach to avoid the issue.
If users blacklist the uas driver, that's their choice and they should
rebuild their kernel :)
Or better yet, talk to us to get the issue fixed for why they would want
to blacklist such a driver.
As it is, this patch is not acceptable.
thanks,
greg k-h
next prev parent reply other threads:[~2019-07-02 4:42 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-01 8:48 [PATCH] usb: storage: skip only when uas driver is loaded JC Kuo
2019-07-01 8:52 ` Greg KH
2019-07-02 2:36 ` JC Kuo
2019-07-02 4:42 ` Greg KH [this message]
2019-07-02 5:29 ` JC Kuo
2019-07-02 6:56 ` JC Kuo
2019-07-02 7:34 ` Greg KH
2019-07-02 7:57 ` JC Kuo
2019-07-02 8:14 ` Greg KH
2019-07-02 9:11 ` Oliver Neukum
2019-07-02 14:05 ` JC Kuo
2019-07-02 15:29 ` Oliver Neukum
2019-07-02 6:53 ` Oliver Neukum
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190702044249.GA694@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=jckuo@nvidia.com \
--cc=linux-usb@vger.kernel.org \
--cc=oneukum@suse.com \
--cc=stern@rowland.harvard.edu \
--cc=usb-storage@lists.one-eyed-alien.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).