Re: r8152: data corruption in various scenarios
From: Mark Lord <hidden>
Date: 2019-01-06 21:13:27
Also in:
lkml
On 2019-01-06 2:14 p.m., Kai Heng Feng wrote:>> On Jan 5, 2019, at 10:14 PM, Mark Lord [off-list ref] wrote: ..
quoted
There is even now a special hack in the upstream r8152.c to attempt to detect a Dell TB16 dock and disable RX Aggregation in the driver to prevent such issues. Well.. I have a WD15 dock, not a TB16, and that same hack also catches my dock in its net: [5.794641] usb 4-1.2: Dell TB16 Dock, disable RX aggregationThe serial should be unique according to Dell.quoted
So one issue is that the code is not correctly identifying the dock, and the WD15 is claimed to be immune from the r8152 issues.The WD15 I tested didn't use that serial number though...
What info do you need from me about the WD15 so this can be corrected?
quoted
xhci_hcd 0000:39:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 13 comp_code 1This is probably an xHC bug. A similar issue is fixed by commit 9da5a1092b13 ("xhci: Bad Ethernet performance plugged in ASM1042A host”).quoted
I just got that exact message above, with the r8152 in my 1-day old WD15 dock, with the TB16 "workaround" enabled in Linux kernel 4.20.0.Is the xHC WD15 connected an ASMedia one?
I don't know. I *think* it identifies as a DSL6340 (see below).
Here is lspci and lsusb:
$ lspci -vt
-[0000:00]-+-00.0 Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers
+-02.0 Intel Corporation UHD Graphics 620
+-04.0 Intel Corporation Skylake Processor Thermal Subsystem
+-14.0 Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller
+-14.2 Intel Corporation Sunrise Point-LP Thermal subsystem
+-15.0 Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0
+-15.1 Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1
+-16.0 Intel Corporation Sunrise Point-LP CSME HECI #1
+-1c.0-[01-39]----00.0-[02-39]--+-00.0-[03]--
| +-01.0-[04-38]--
| \-02.0-[39]----00.0 Intel Corporation DSL6340 USB 3.1
Controller [Alpine Ridge]
+-1c.4-[3a]----00.0 Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter
+-1d.0-[3b]----00.0 Samsung Electronics Co Ltd Device a808
+-1f.0 Intel Corporation Device 9d4e
+-1f.2 Intel Corporation Sunrise Point-LP PMC
+-1f.3 Intel Corporation Sunrise Point-LP HD Audio
\-1f.4 Intel Corporation Sunrise Point-LP SMBus
$ lsusb -t
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/7p, 5000M
|__ Port 2: Dev 3, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/7p, 480M
|__ Port 5: Dev 3, If 1, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 5: Dev 3, If 2, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 5: Dev 3, If 0, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 5: Dev 3, If 3, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 6: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 6: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 6: Dev 4, If 2, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 7: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
|__ Port 3: Dev 2, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 3: Dev 2, If 1, Class=Wireless, Driver=btusb, 12M
Thanks for having a look.
--
Mark Lord
Real-Time Remedies Inc.
mlord@pobox.com