lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <54311549.4070808@redhat.com>
Date:	Sun, 05 Oct 2014 11:54:17 +0200
From:	Hans de Goede <hdegoede@...hat.com>
To:	Jan Kiszka <jan.kiszka@....de>,
	linux-usb <linux-usb@...r.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: uas: module not loaded automatically

Hi,

On 10/05/2014 11:48 AM, Jan Kiszka wrote:
> On 2014-10-05 11:43, Hans de Goede wrote:
>> Hi,
>>
>> On 10/05/2014 11:31 AM, Jan Kiszka wrote:
>>> On 2014-10-05 11:23, Hans de Goede wrote:
>>>> Hi,
>>>>
>>>> On 10/05/2014 11:14 AM, Jan Kiszka wrote:
>>>>> On 2014-10-05 11:08, Hans de Goede wrote:
>>>>>> Hi,
>>>>>>
>>>>>> On 10/04/2014 08:35 PM, Jan Kiszka wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> my Delock external USB drive stopped working after updating from a
>>>>>>> UAS-disabled distro kernel to latest 3.17-rc7 with UAS on. That UAS was
>>>>>>> key became clear to me only after looking at storage_probe(): the device
>>>>>>> is ignored by usb-storage if it is UAS-capable. However, nothing causes
>>>>>>> uas.ko to be loaded when the drive is plugged here. How is this supposed
>>>>>>> to work in the normal case?
>>>>>>
>>>>>> Is the uas.ko module installed, and was depmod run after installing it ?
>>>>>
>>>>> Definitely. Just retried after another depmod -a, and only modprobe uas
>>>>> made it work.
>>>>>
>>>>>>
>>>>>> uas.c has the following:
>>>>>>
>>>>>>         { USB_INTERFACE_INFO(USB_CLASS_MASS_STORAGE, USB_SC_SCSI, USB_PR_BULK) },
>>>>>>         { USB_INTERFACE_INFO(USB_CLASS_MASS_STORAGE, USB_SC_SCSI, USB_PR_UAS) },
>>>>>>
>>>>>> Which should make it load automatically on your device.
>>>>>
>>>>> Should this match with what lsusb -v reports for the device? 
>>>>
>>>> Yes, and it does, for both alt settings of your device:
>>>>
>>>>       bInterfaceClass         8 Mass Storage
>>>>       bInterfaceSubClass      6 SCSI
>>>>       bInterfaceProtocol     80 Bulk-Only
>>>>
>>>>       bInterfaceClass         8 Mass Storage
>>>>       bInterfaceSubClass      6 SCSI
>>>>       bInterfaceProtocol     98
>>>>
>>>> Where 98 == USB_PR_UAS, seems you have an quite old lsusb if it does not
>>>
>>> It says "007".
>>>
>>>> know that though. Could it be the rest of your userspace is old too, and is
>>>> not smart enough to load all matching drivers, instead only loading the first matching
>>>> driver (which happens to be usb-storage) ?
>>>
>>> OpenSUSE 13.1, all updates installed. Which components are involved?
>>> udev - Version 208? Below is the udevadm monitor output.
>>
>> Hmm, that is not all that old, I would expect that to work.
>>
>> Here is how things "work" on my system:
>>
>> [hans@...lem ~]$ lsmod | grep uas
>> uas                    22414  0
>> usb_storage            65065  1 uas
>> [hans@...lem ~]$ sudo rmmod uas
>> [hans@...lem ~]$ lsmod | grep uas
>> [hans@...lem ~]$ sudo modprobe usb:v174Cp5136d0100dc00dsc00dp00ic08isc06ip50in00
>> [hans@...lem ~]$ lsmod | grep uas
>> uas                    22414  0
>> usb_storage            65065  1 uas
>>
>> So as you can see the modalias taken from your udev debug output causes
>> uas to get loaded, can you try the above ?
> 
> That command sequence doesn't cause uas to be reloaded. Anything I need
> to customize for my setup?

Not that I know of, so this seems to be a modprobe issue, and this should
probably be taken to the relevant list for modprobe. Please put me in the CC
when you send a mail there, and you likely will want to include the output
of the above commands + the modinfo output for both uas and usb-storage.

> 
>>
>> Also what does "modinfo uas" say? For me it says:
>>
>> [hans@...lem ~]$ modinfo uas
>> filename:       /lib/modules/3.17.0-rc6+/kernel/drivers/usb/storage/uas.ko
>> author:         Hans de Goede <hdegoede@...hat.com>, Matthew Wilcox and Sarah Sharp
>> license:        GPL
>> alias:          usb:v*p*d*dc*dsc*dp*ic08isc06ip62in*
>> alias:          usb:v*p*d*dc*dsc*dp*ic08isc06ip50in*
>> alias:          usb:v174Cp5106d*dc*dsc*dp*ic*isc*ip*in*
>> alias:          usb:v152Dp0567d*dc*dsc*dp*ic*isc*ip*in*
>> alias:          usb:v0BC2pAB20d*dc*dsc*dp*ic*isc*ip*in*
>> alias:          usb:v0BC2p3312d*dc*dsc*dp*ic*isc*ip*in*
>> alias:          usb:v0BC2p2312d*dc*dsc*dp*ic*isc*ip*in*
>> depends:        usb-storage
>> vermagic:       3.17.0-rc6+ SMP mod_unload
>> signer:         Magrathea: Glacier signing key
>> sig_key:        9B:56:00:B2:C4:97:8D:4A:A9:B3:0B:54:32:F7:B7:B2:2F:3E:FB:D8
>> sig_hashalgo:   sha256
>>
>> Note the alias-es with vendor and product ids are from quirks, and your version
>> will likely not have these. But the first 2 generic ones should be there, and
>> match the modalias from the udev output.
> 
> filename:       /lib/modules/3.17.0-rc7-homebrewed+/kernel/drivers/usb/storage/uas.ko
> author:         Hans de Goede <hdegoede@...hat.com>, Matthew Wilcox and Sarah Sharp
> license:        GPL
> srcversion:     597B27EF314ADC559827CBD
> alias:          usb:v*p*d*dc*dsc*dp*ic08isc06ipAAin*
> alias:          usb:v*p*d*dc*dsc*dp*ic08isc06ip62in*
> alias:          usb:v*p*d*dc*dsc*dp*ic08isc06ip50in*
> depends:        usb-storage
> intree:         Y
> vermagic:       3.17.0-rc7-homebrewed+ SMP preempt mod_unload modversions 

That looks good, so no idea why modprobe is not loading it.

Regards,

Hans


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ