Re: Re: [PATCH] Revert "usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS"

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

 



Posted a new patch:
https://lore.kernel.org/all/20230117061046.114145-1-qkrwngud825@xxxxxxxxx/T/#u

This issue has been stalled for way too long. If string-based
comparisons are too ugly, we can improve it later when Hongling is
more active towards this issue.

ps) More Linux users on RTL9210 here:
https://github.com/raspberrypi/linux/issues/4130#issuecomment-1320988449

On Tue, Jan 10, 2023 at 2:37 PM Juhyung Park <qkrwngud825@xxxxxxxxx> wrote:
>
> And please leave all the mail addresses, especially the mailing list
> addresses intact.
>
> It makes it really hard to track this down later in the public domain.
>
> On Tue, Jan 10, 2023 at 2:34 PM Juhyung Park <qkrwngud825@xxxxxxxxx> wrote:
> >
> > Thanks for the log, we're getting somewhere.
> >
> > Thankfully, it seems to report "HIKSEMI" as the manufacturer and "MD202" as the product name.
> >
> > Please post `sudo lsusb -v` for the product as well, and please determine whether UAS works on Windows by checking TRIM functionality.
> > I assume you're using an SSD with that enclosure.
> > Check this for how: https://www.anandtech.com/show/13953/plugable-usbcnvme-toolless-nvme-ssd-enclosure-capsule-review
> >
> > > the firmware of rtl9210 is contantly updating and fixing problem
> >
> > IMHO, this is just them maintaining the product well. USB to SATA/NVMe enclosures are notorious for having firmware problems unfixed for the entire lifespan of the device.
> >
> > > but continuous high speed read/write can cause kernel panic
> >
> > This leads me to believe that the device itself having problems with some power management (weak regulator, etc).
> >
> > I have multiple RTL9210 drives, some connected to a server running 24/7 and not one has ever given me a problem, unlike some ASMedia or JMicron products I've tried.
> >
> > On Tue, Jan 10, 2023 at 2:26 PM 曾红玲 <zenghongling@xxxxxxxxxx> wrote:
> >>
> >> Hi:
> >>
> >>    The screenshot information and error log.
> >>
> >>    I don't think this version of firmware is stable,normal loading of uas driver is fine,but continuous high speed read/write
> >>
> >> can cause kernel panic,I have researched a lot about rtl9210, this is no relevant better support for uas driver, the firmware
> >>
> >> of rtl9210 is contantly updating and fixing problem,self-updating firmware is not an effective management method,I suggest you fixed
> >>
> >> with regenerate PID/VID like other product.
> >>
> >>
> >>
> >>
> >>
> >> [   39.510571] usb 2-2: new SuperSpeed USB device number 2 using xhci_hcd
> >> [   39.546117] usb 2-2: New USB device found, idVendor=0bda, idProduct=9210
> >> [   39.553989] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> >> [   39.562354] usb 2-2: Product: MD202
> >> [   39.566641] usb 2-2: Manufacturer: HIKSEMI
> >> [   39.571606] usb 2-2: SerialNumber: 012345680663
> >> [   39.609717] calling  usb_storage_driver_init+0x0/0x1000 [usb_storage] @ 2635
> >> [   39.618026] usbcore: registered new interface driver usb-storage
> >> [   39.625132] initcall usb_storage_driver_init+0x0/0x1000 [usb_storage] returned 0 after 6981 usecs
> >> [   39.636463] calling  uas_driver_init+0x0/0x1000 [uas] @ 2635
> >> [   39.674761] scsi host8: uas
> >> [   39.678333] usbcore: registered new interface driver uas
> >> [   39.681043] scsi 8:0:0:0: Direct-Access     HIKSEMI  MD202            1.00 PQ: 0 ANSI: 6
> >> [   39.686646] sd 8:0:0:0: Attached scsi generic sg1 type 0
> >> [   39.689021] sd 8:0:0:0: [sda] 250069680 512-byte logical blocks: (128 GB/119 GiB)
> >> [   39.698524] sd 8:0:0:0: [sda] Write Protect is off
> >> [   39.698526] sd 8:0:0:0: [sda] Mode Sense: 37 00 00 08
> >> [   39.701341] sd 8:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
> >> [   39.702439] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled endpoint or incorrect stream ring
> >> [   39.702442] xhci_hcd 0000:0c:00.3: @000000026c61f810 00000000 00000000 1b000000 05038000
> >> [   39.720357]  sda: sda1
> >> [   39.737829] sd 8:0:0:0: [sda] Attached SCSI disk
> >> [   39.760140] initcall uas_driver_init+0x0/0x1000 [uas] returned 0 after 114228 usecs
> >> [   39.923773] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
> >> [  587.113528] sd 8:0:0:0: [sda] tag#27 uas_eh_abort_handler 0 uas-tag 28 inflight: CMD OUT
> >> [  587.123050] sd 8:0:0:0: [sda] tag#27 CDB: Write(10) 2a 00 03 6f b0 00 00 04 00 00
> >> [  587.131819] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled endpoint or incorrect stream ring
> >> [  587.142599] xhci_hcd 0000:0c:00.3: @000000026c61f1a0 00000000 00000000 1b000000 05048000
> >> [  587.152037] sd 8:0:0:0: [sda] tag#26 uas_eh_abort_handler 0 uas-tag 27 inflight: CMD OUT
> >> [  587.161557] sd 8:0:0:0: [sda] tag#26 CDB: Write(10) 2a 00 03 6f ac 00 00 04 00 00
> >> [  587.170317] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled endpoint or incorrect stream ring
> >> [  587.181095] xhci_hcd 0000:0c:00.3: @000000026c61f1c0 00000000 00000000 1b000000 05048000
> >> [  587.190530] sd 8:0:0:0: [sda] tag#25 uas_eh_abort_handler 0 uas-tag 26 inflight: CMD OUT
> >> [  587.200046] sd 8:0:0:0: [sda] tag#25 CDB: Write(10) 2a 00 03 6f a8 00 00 04 00 00
> >> [  587.208804] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled endpoint or incorrect stream ring
> >> [  587.219574] xhci_hcd 0000:0c:00.3: @000000026c61f1e0 00000000 00000000 1b000000 05048000
> >> [  587.229006] sd 8:0:0:0: [sda] tag#24 uas_eh_abort_handler 0 uas-tag 25 inflight: CMD OUT
> >> [  587.238523] sd 8:0:0:0: [sda] tag#24 CDB: Write(10) 2a 00 03 6f a4 00 00 04 00 00
> >> [  587.247270] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled endpoint or incorrect stream ring
> >> [  587.258047] xhci_hcd 0000:0c:00.3: @000000026c61f200 00000000 00000000 1b000000 05048000
> >> [  587.267471] sd 8:0:0:0: [sda] tag#23 uas_eh_abort_handler 0 uas-tag 24 inflight: CMD OUT
> >> [  587.276988] sd 8:0:0:0: [sda] tag#23 CDB: Write(10) 2a 00 03 6f a0 00 00 04 00 00
> >> [  587.285745] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled endpoint or incorrect stream ring
> >> [  587.296522] xhci_hcd 0000:0c:00.3: @000000026c61f220 00000000 00000000 1b000000 05048000
> >> [  587.305955] sd 8:0:0:0: [sda] tag#22 uas_eh_abort_handler 0 uas-tag 23 inflight: CMD OUT
> >> [  587.315473] sd 8:0:0:0: [sda] tag#22 CDB: Write(10) 2a 00 03 6f 9c 00 00 04 00 00
> >> ...........................
> >>
> >>   592.553969] sd 8:0:0:0: [sda] tag#1 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD
> >> [  592.553971] sd 8:0:0:0: [sda] tag#1 CDB: Write(10) 2a 00 03 6f 48 00 00 04 00 00
> >> [  592.553983] scsi host8: uas_eh_bus_reset_handler start
> >> [  592.553987] usb 2-2: cmd cmplt err -2
> >> [  592.852532] xhci_hcd 0000:0c:00.3: HC died; cleaning up
> >> [  592.858832] usb 1-1: USB disconnect, device number 2
> >> [  592.864765] usb 1-1.3: USB disconnect, device number 4
> >> [  592.870979] usb 2-2: USB disconnect, device number 0
> >> [  592.973600] usb 1-3: USB disconnect, device number 3
> >> [  593.021342] usb 1-4: USB disconnect, device number 5
> >> [  593.073210] usb 2-2: device not accepting address 2, error -22
> >> [  720.510582] INFO: task kworker/1:2:154 blocked for more than 120 seconds.
> >> [  720.518551]       Tainted: G         C  E   4.4.131-20210120.kylin.x86-generic #kylin-KylinOS
> >> [  720.528466] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> >> [  720.537601] kworker/1:2     D ffff88026c143c38     0   154      2 0x00000000
> >> [  720.545894] Workqueue: usb_hub_wq hub_event
> >> [  720.550971]  ffff88026c143c38 0000000000016300 ffff8802755bb900 ffff88026cb80000
> >> [  720.559673]  ffff88026c144000 ffff88026ca88100 0000000000000000 ffff88026cb80000
> >> [  720.568374]  ffff88026cb80000 ffff88026c143c50 ffffffff8186ae25 ffff88026ca880f8
> >> [  720.577076] Call Trace:
> >> [  720.580201]  [<ffffffff8186ae25>] schedule+0x35/0x80
> >> [  720.586137]  [<ffffffff8186b0ce>] schedule_preempt_disabled+0xe/0x10
> >> [  720.593623]  [<ffffffff8186cb94>] __mutex_lock_slowpath+0x164/0x1e0
> >> [  720.601012]  [<ffffffff8186cc3f>] mutex_lock+0x2f/0x40
> >> [  720.607141]  [<ffffffff8162b8e9>] usb_disconnect+0x59/0x290
> >> [  720.613757]  [<ffffffff8162bb68>] hub_quiesce+0x48/0xa0
> >> [  720.619983]  [<ffffffff8162e06e>] hub_event+0x16e/0xb10
> >> [  720.626209]  [<ffffffff810af0f9>] ? ttwu_do_wakeup+0x19/0xf0
> >> [  720.632921]  [<ffffffff810af26d>] ? ttwu_do_activate.constprop.91+0x5d/0x70
> >> [  720.641086]  [<ffffffff810afd19>] ? try_to_wake_up+0x49/0x400
> >> [  720.647896]  [<ffffffff810f2445>] ? lock_timer_base+0x55/0x70
> >> [  720.654704]  [<ffffffff8109d70b>] process_one_work+0x16b/0x4b0
> >> [  720.661609]  [<ffffffff8109da9b>] worker_thread+0x4b/0x4d0
> >> [  720.668124]  [<ffffffff8109da50>] ? process_one_work+0x4b0/0x4b0
> >> [  720.675224]  [<ffffffff810a3ee7>] kthread+0xe7/0x100
> >> [  720.681162]  [<ffffffff810a3e00>] ? kthread_create_on_node+0x1e0/0x1e0
> >> [  720.688845]  [<ffffffff818700b5>] ret_from_fork+0x55/0x80
> >> [  720.695263]  [<ffffffff810a3e00>] ? kthread_create_on_node+0x1e0/0x1e0
> >> [  720.702947] INFO: task kworker/u32:6:254 blocked for more than 120 seconds.
> >> [  720.711112]       Tainted: G         C  E   4.4.131-20210120.kylin.x86-generic #kylin-KylinOS
> >> [  720.721021] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> >> [  720.730153] kworker/u32:6   D ffff88026bb475e8     0   254      2 0x00000000
> >> [  720.738438] Workqueue: writeback wb_workfn (flush-8:0)
> >> [  720.744593]  ffff88026bb475e8 0000000000000200 ffff88026ab81c80 ffff880275318000
> >> [  720.753297]  ffff88026bb48000 ffff88027ec56300 7fffffffffffffff ffff8801c0b48060
> >> [  720.762001]  ffff8801c0b48000 ffff88026bb47600 ffffffff8186ae25 0000000000000000
> >> [  720.770705] Call Trace:
> >> [  720.773823]  [<ffffffff8186ae25>] schedule+0x35/0x80
> >> [  720.779762]  [<ffffffff8186e446>] schedule_timeout+0x1b6/0x270
> >> [  720.786670]  [<ffffffff810fc2ee>] ? ktime_get+0x3e/0xb0
> >> [  720.792897]  [<ffffffff8186a594>] io_schedule_timeout+0xa4/0x110
> >> [  720.799995]  [<ffffffff813c4971>] get_request+0x411/0x7a0
> >>
> >>   TKS!
> >>
> >>
> >> ----
> >>
> >>
> >>
> >>
> >>
> >>
> >> 主 题:Re: [PATCH] Revert "usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS"
> >> 日 期:2023-01-09 20:16
> >> 发件人:qkrwngud825
> >> 收件人:oneukum;
> >>
> >> Hi Oliver,
> >>
> >> On Mon, Jan 9, 2023 at 9:02 PM Oliver Neukum wrote:
> >> >
> >> >
> >> >
> >> > On 09.01.23 12:55, Juhyung Park wrote:
> >> > > This reverts commit e00b488e813f0f1ad9f778e771b7cd2fe2877023.
> >> > >
> >> > > The commit e00b488e813f ("usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS")
> >> > > blacklists UAS for the entire RTL9210 enclosures. Realtek's VendorId is 0x0bda
> >> > > and RTL9210 enclosures reports 0x9210 for its ProductId.
> >> > >
> >> > > The RTL9210 controller was advertised with UAS since its release back in 2019
> >> > > and was shipped with a lot of enclosure products with different firmware
> >> > > combinations.
> >> > >
> >> > > If UAS blacklisting is really required said product (Hiksemi USB3-FW), it
> >> > > should be done without blacklisting the entire RTL9210 products.
> >> >
> >> > Hi,
> >> >
> >> > I see this the issue. Do you have an idea how to limit the scope.
> >>
> >> Unfortunately, no.
> >>
> >> This might be the ugly case where, if a proper workaround could be
> >> found (if the original report is valid at all), it may change the code
> >> logic itself with some if branch rather than just unusual_uas.h.
> >>
> >> With my RTL9210 enclosure, using multiple different firmware versions
> >> still reports the same bcdDevice.
> >>
> >> Note that, despite Hongling reporting that Windows doesn't use UAS in
> >> https://lore.kernel.org/all/fbeffee7-3ac5-4798-14b0-724e0ed01947@xxxxxxx/
> >> , Windows uses it on mine and respectively trim works.
> >>
> >> >
> >> > Hongling Zeng, do you have an idea, respectively if not, could
> >> > you provide "lsusb -v" for the defective device?
> >> >
> >>
> >> Hongling didn't respond to Greg when he asked the same question back
> >> in November: https://lore.kernel.org/all/Y29RtXGcey6V9iTY@xxxxxxxxx/
> >>
> >> Anyways, here's my lsusb -v output. Hope it helps:
> >> Bus 004 Device 002: ID 0bda:9210 Realtek Semiconductor Corp. RTL9210
> >> M.2 NVME Adapter
> >> Device Descriptor:
> >> bLength 18
> >> bDescriptorType 1
> >> bcdUSB 3.20
> >> bDeviceClass 0
> >> bDeviceSubClass 0
> >> bDeviceProtocol 0
> >> bMaxPacketSize0 9
> >> idVendor 0x0bda Realtek Semiconductor Corp.
> >> idProduct 0x9210 RTL9210 M.2 NVME Adapter
> >> bcdDevice 20.01
> >> iManufacturer 1 Realtek
> >> iProduct 2 RTL9210
> >> iSerial 3 012345678906
> >> bNumConfigurations 1
> >> Configuration Descriptor:
> >> bLength 9
> >> bDescriptorType 2
> >> wTotalLength 0x0079
> >> bNumInterfaces 1
> >> bConfigurationValue 1
> >> iConfiguration 0
> >> bmAttributes 0x80
> >> (Bus Powered)
> >> MaxPower 896mA
> >> Interface Descriptor:
> >> bLength 9
> >> bDescriptorType 4
> >> bInterfaceNumber 0
> >> bAlternateSetting 0
> >> bNumEndpoints 2
> >> bInterfaceClass 8 Mass Storage
> >> bInterfaceSubClass 6 SCSI
> >> bInterfaceProtocol 80 Bulk-Only
> >> iInterface 0
> >> Endpoint Descriptor:
> >> bLength 7
> >> bDescriptorType 5
> >> bEndpointAddress 0x81 EP 1 IN
> >> bmAttributes 2
> >> Transfer Type Bulk
> >> Synch Type None
> >> Usage Type Data
> >> wMaxPacketSize 0x0400 1x 1024 bytes
> >> bInterval 0
> >> bMaxBurst 15
> >> Endpoint Descriptor:
> >> bLength 7
> >> bDescriptorType 5
> >> bEndpointAddress 0x02 EP 2 OUT
> >> bmAttributes 2
> >> Transfer Type Bulk
> >> Synch Type None
> >> Usage Type Data
> >> wMaxPacketSize 0x0400 1x 1024 bytes
> >> bInterval 0
> >> bMaxBurst 15
> >> Interface Descriptor:
> >> bLength 9
> >> bDescriptorType 4
> >> bInterfaceNumber 0
> >> bAlternateSetting 1
> >> bNumEndpoints 4
> >> bInterfaceClass 8 Mass Storage
> >> bInterfaceSubClass 6 SCSI
> >> bInterfaceProtocol 98
> >> iInterface 0
> >> Endpoint Descriptor:
> >> bLength 7
> >> bDescriptorType 5
> >> bEndpointAddress 0x81 EP 1 IN
> >> bmAttributes 2
> >> Transfer Type Bulk
> >> Synch Type None
> >> Usage Type Data
> >> wMaxPacketSize 0x0400 1x 1024 bytes
> >> bInterval 0
> >> bMaxBurst 15
> >> MaxStreams 32
> >> Data-in pipe (0x03)
> >> Endpoint Descriptor:
> >> bLength 7
> >> bDescriptorType 5
> >> bEndpointAddress 0x02 EP 2 OUT
> >> bmAttributes 2
> >> Transfer Type Bulk
> >> Synch Type None
> >> Usage Type Data
> >> wMaxPacketSize 0x0400 1x 1024 bytes
> >> bInterval 0
> >> bMaxBurst 15
> >> MaxStreams 32
> >> Data-out pipe (0x04)
> >> Endpoint Descriptor:
> >> bLength 7
> >> bDescriptorType 5
> >> bEndpointAddress 0x83 EP 3 IN
> >> bmAttributes 2
> >> Transfer Type Bulk
> >> Synch Type None
> >> Usage Type Data
> >> wMaxPacketSize 0x0400 1x 1024 bytes
> >> bInterval 0
> >> bMaxBurst 15
> >> MaxStreams 32
> >> Status pipe (0x02)
> >> Endpoint Descriptor:
> >> bLength 7
> >> bDescriptorType 5
> >> bEndpointAddress 0x04 EP 4 OUT
> >> bmAttributes 2
> >> Transfer Type Bulk
> >> Synch Type None
> >> Usage Type Data
> >> wMaxPacketSize 0x0400 1x 1024 bytes
> >> bInterval 0
> >> bMaxBurst 0
> >> Command pipe (0x01)
> >> Binary Object Store Descriptor:
> >> bLength 5
> >> bDescriptorType 15
> >> wTotalLength 0x003e
> >> bNumDeviceCaps 4
> >> USB 2.0 Extension Device Capability:
> >> bLength 7
> >> bDescriptorType 16
> >> bDevCapabilityType 2
> >> bmAttributes 0x00000006
> >> BESL Link Power Management (LPM) Supported
> >> SuperSpeed USB Device Capability:
> >> bLength 10
> >> bDescriptorType 16
> >> bDevCapabilityType 3
> >> bmAttributes 0x00
> >> wSpeedsSupported 0x000e
> >> Device can operate at Full Speed (12Mbps)
> >> Device can operate at High Speed (480Mbps)
> >> Device can operate at SuperSpeed (5Gbps)
> >> bFunctionalitySupport 1
> >> Lowest fully-functional device speed is Full Speed (12Mbps)
> >> bU1DevExitLat 10 micro seconds
> >> bU2DevExitLat 2047 micro seconds
> >> SuperSpeedPlus USB Device Capability:
> >> bLength 20
> >> bDescriptorType 16
> >> bDevCapabilityType 10
> >> bmAttributes 0x00000001
> >> Sublink Speed Attribute count 1
> >> Sublink Speed ID count 0
> >> wFunctionalitySupport 0x1100
> >> bmSublinkSpeedAttr[0] 0x000a4030
> >> Speed Attribute ID: 0 10Gb/s Symmetric RX SuperSpeedPlus
> >> bmSublinkSpeedAttr[1] 0x000a40b0
> >> Speed Attribute ID: 0 10Gb/s Symmetric TX SuperSpeedPlus
> >> Container ID Device Capability:
> >> bLength 20
> >> bDescriptorType 16
> >> bDevCapabilityType 4
> >> bReserved 0
> >> ContainerID {03020100-0504-0706-0002-020200020202}
> >> Device Status: 0x0000
> >> (Bus Powered)
> >>
> >>
> >> > Regards
> >> > Oliver




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

  Powered by Linux