Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#76616 - [linux] PCIe/Thunderbolt: USB Type-C NIC cannot be detected after reboot; UnsupReq warning logs

Attached to Project: Arch Linux
Opened by Frederick Zhang (FrederickZh) - Friday, 18 November 2022, 10:32 GMT
Last edited by Toolybird (Toolybird) - Friday, 10 February 2023, 20:43 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To Jan Alexander Steffens (heftig)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

On a ThinkPad X1 with PCIe 4.0 and Thunderbolt 4, after a reboot, USB
Type-C NICs are not detected by the system (not even in BIOS). I am
using a Realtek 0bda:8156 (Lenovo OEM).

And at the same time, logs are flooded by messages like:

[ 30.100211] pcieport 0000:00:1d.0: AER: Uncorrected (Non-Fatal) error received: 0000:00:1d.0
[ 30.100251] pcieport 0000:00:1d.0: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, (Requester ID)
[ 30.100256] pcieport 0000:00:1d.0: device [8086:7ab0] error status/mask=00100000/00004000
[ 30.100262] pcieport 0000:00:1d.0: [20] UnsupReq (First)
[ 30.100267] pcieport 0000:00:1d.0: AER: TLP Header: 34000000 08000052 00000000 00000000
[ 30.100372] thunderbolt 0000:0a:00.0: AER: can't recover (no error_detected callback)
[ 30.100401] xhci_hcd 0000:3e:00.0: AER: can't recover (no error_detected callback)
[ 30.100427] pcieport 0000:00:1d.0: AER: device recovery failed


Additional info:
* package version: linux 6.0.8.arch1-1
* link to upstream bug report: [1]

Steps to reproduce:

1. Cold boot
2. Reboot

The logs issue [1] has been resolved by [2], and the series of patches
has been backported to both Ubuntu [3] and Fedora [4].

And I've identified the commit that solved my NIC issue was [6] after
bisecting it. Backporting [5][6] onto 6.0.8.arch1-1 together with [4]
fixed everything for me.

I wonder if it's ok to backport these to Arch as well? Thank you.

[1] https://bugzilla.kernel.org/show_bug.cgi?id=215453
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c01163dbd1b8aa016c163ff4bf3a2e90311504f1
[3] https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy/log/drivers/pci/?h=master-next
[4] https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2141/commits#902b0e8348344b59b5bf7d4af7c8115227a859d4
[5] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e7fd8b68404f3d8bc03f85bc3c078d67096be06f
[6] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=38f34dba806a4cb54ef3b2256948e770699a5769
This task depends upon

Closed by  Toolybird (Toolybird)
Friday, 10 February 2023, 20:43 GMT
Reason for closing:  None
Additional comments about closing:  Reporter says "Probably not relevant any more."
Comment by none given (hoban) - Monday, 21 November 2022, 18:10 GMT
Possibly related to this bug, I discovered that my thunderbolt dock stopped working with either 6.0.8.arch1-1 or 6.0.9.arch1-1 (I didn't reboot between those upgrades).
When booted to the newer kernel mentioned above, my dock-attached keyboard & display (displayport) stopped working. The GNOME settings Thunderbolt tab said "No Thunderbolt Support (newline) Thunderbolt security level could not be determined.".
From the CLI, this is what I saw:
```
❯ sudo boltctl enroll 004c3845-3baa-0801-ffff-ffffffffffff
device with id '004c3845-3baa-0801-ffff-ffffffffffff' already enrolled.

❯ sudo boltctl authorize 004c3845-3baa-0801-ffff-ffffffffffff
Authorization error: wrong device state: disconnected

❯ sudo boltctl
○ Lenovo ThinkPad Thunderbolt 3 Dock
├─ type: peripheral
├─ name: ThinkPad Thunderbolt 3 Dock
├─ vendor: Lenovo
├─ uuid: 004c3845-3baa-0801-ffff-ffffffffffff
├─ generation: Thunderbolt 3
├─ status: disconnected
├─ authorized: Sun 20 Nov 2022 07:00:57 PM UTC
├─ connected: Sun 20 Nov 2022 07:00:56 PM UTC
└─ stored: Mon 02 Dec 2019 10:15:28 PM UTC
├─ policy: auto
└─ key: no

❯ modinfo thunderbolt
\

filename: /lib/modules/6.0.9-arch1-1/kernel/drivers/thunderbolt/thunderbolt.ko.zst
license: GPL
srcversion: 7F199159495E857F4B0612C
alias: pci:v*d*sv*sd*bc0Csc03i40*
alias: pci:v00008086d0000A76Dsv*sd*bc*sc*i*
alias: pci:v00008086d0000A73Esv*sd*bc*sc*i*
alias: pci:v00008086d0000466Dsv*sd*bc*sc*i*
alias: pci:v00008086d0000463Esv*sd*bc*sc*i*
alias: pci:v00008086d00009A21sv*sd*bc*sc*i*
alias: pci:v00008086d00009A1Fsv*sd*bc*sc*i*
alias: pci:v00008086d00009A1Dsv*sd*bc*sc*i*
alias: pci:v00008086d00009A1Bsv*sd*bc*sc*i*
alias: pci:v00008086d00008A0Dsv*sd*bc*sc*i*
alias: pci:v00008086d00008A17sv*sd*bc*sc*i*
alias: pci:v00008086d000015EBsv*sd*bc*sc*i*
alias: pci:v00008086d000015E8sv*sd*bc*sc*i*
alias: pci:v00008086d000015DEsv*sd*bc*sc*i*
alias: pci:v00008086d000015D2sv*sd*bc*sc*i*
alias: pci:v00008086d000015D9sv*sd*bc*sc*i*
alias: pci:v00008086d000015DCsv*sd*bc*sc*i*
alias: pci:v00008086d000015BFsv*sd*bc*sc*i*
alias: pci:v00008086d000015DDsv*sd*bc*sc*i*
alias: pci:v00008086d00001577sv*sd*bc*sc*i*
alias: pci:v00008086d00001575sv*sd*bc*sc*i*
alias: pci:v00008086d0000156Csv*sd*bc08sc80i00*
alias: pci:v00008086d0000156Asv*sd*bc08sc80i00*
alias: pci:v00008086d00001547sv00002222sd00001111bc08sc80i00*
alias: pci:v00008086d00001513sv00002222sd00001111bc08sc80i00*
depends:
retpoline: Y
intree: Y
name: thunderbolt
vermagic: 6.0.9-arch1-1 SMP preempt mod_unload
sig_id: PKCS#7
signer: Build time autogenerated kernel key
sig_key: 3D:46:8E:FD:C0:6E:F0:00:1D:6D:E7:AC:86:A5:69:B2:0E:15:6D:CB
sig_hashalgo: sha512
signature: 30:65:02:30:73:B1:E8:FC:B8:25:A6:38:48:AE:E0:0A:B2:D4:AA:95:
02:08:5C:25:01:0C:3B:BB:21:3E:3A:8D:82:38:12:8F:7B:F4:2A:B4:
8E:41:C4:27:4B:3A:FA:C2:BE:7C:C2:8A:02:31:00:DB:3A:70:BD:61:
A6:DC:4B:CE:A0:4B:26:90:34:F4:64:90:E5:66:A7:76:65:42:0D:D1:
DF:6E:5B:26:03:A2:B1:28:6B:A4:CA:99:D4:84:D9:A0:94:DF:3A:E6:
CE:04:12
parm: xdomain:allow XDomain protocol (default: true) (bool)
parm: start_icm:start ICM firmware if it is not running (default: false) (bool)
parm: clx:allow low power states on the high-speed lanes (default: true) (bool)
```

I downgraded to the following to get my thunderbolt dock working:
```
❯ pacman -Q linux-lts linux-lts-headers nvidia-lts
linux-lts 5.15.79-1
linux-lts-headers 5.15.79-1
nvidia-lts 1:520.56.06-9
```
Comment by Frederick Zhang (FrederickZh) - Tuesday, 22 November 2022, 09:05 GMT
@hoban You can bisect it if you already knew the change range.
Comment by Frederick Zhang (FrederickZh) - Monday, 12 December 2022, 14:11 GMT
Since v6.1 is out, I'm happy to wait for v6.1.x to land in Core repo. Please feel free to close this ticket (or leave it open for other kernels if you want of cos).

Loading...