我正在尝试连接乔鼎 SANLink2Thunderbolt-2-to-10-GbE-Ethernet 设备连接到运行 Ubuntu 16.04 的 Lenovo ThinkPad。系统无法识别设备上的双以太网接口。如果我dmesg
在插入设备后查看,则会看到以下内容:
[ 169.822146] pci 0000:06:00.0: [8086:1567] type 01 class 0x060400
[ 169.822534] pci 0000:06:00.0: supports D1 D2
[ 169.822536] pci 0000:06:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.830152] pci 0000:07:00.0: [8086:1567] type 01 class 0x060400
[ 169.830362] pci 0000:07:00.0: supports D1 D2
[ 169.830364] pci 0000:07:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.830522] pci 0000:07:03.0: [8086:1567] type 01 class 0x060400
[ 169.830729] pci 0000:07:03.0: supports D1 D2
[ 169.830730] pci 0000:07:03.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.830841] pci 0000:07:04.0: [8086:1567] type 01 class 0x060400
[ 169.831018] pci 0000:07:04.0: supports D1 D2
[ 169.831019] pci 0000:07:04.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.831117] pci 0000:07:05.0: [8086:1567] type 01 class 0x060400
[ 169.831350] pci 0000:07:05.0: supports D1 D2
[ 169.831351] pci 0000:07:05.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.831491] pci 0000:07:06.0: [8086:1567] type 01 class 0x060400
[ 169.831609] pci 0000:07:06.0: supports D1 D2
[ 169.831610] pci 0000:07:06.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.831753] pci 0000:06:00.0: PCI bridge to [bus 07-3f]
[ 169.831768] pci 0000:06:00.0: bridge window [mem 0xb8000000-0xce0fffff]
[ 169.831785] pci 0000:06:00.0: bridge window [mem 0xd0000000-0xf1ffffff 64bit pref]
[ 169.831915] pci 0000:08:00.0: [8086:1566] type 00 class 0x088000
[ 169.831966] pci 0000:08:00.0: reg 0x10: [mem 0xce000000-0xce03ffff]
[ 169.831982] pci 0000:08:00.0: reg 0x14: [mem 0xce040000-0xce040fff]
[ 169.832327] pci 0000:08:00.0: supports D1 D2
[ 169.832328] pci 0000:08:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 169.832498] pci 0000:07:00.0: PCI bridge to [bus 08]
[ 169.832525] pci 0000:07:00.0: bridge window [mem 0xce000000-0xce0fffff]
[ 169.832648] pci 0000:07:03.0: PCI bridge to [bus 09-34]
[ 169.832675] pci 0000:07:03.0: bridge window [mem 0xb8000000-0xc5ffffff]
[ 169.832693] pci 0000:07:03.0: bridge window [mem 0xd0000000-0xe9ffffff 64bit pref]
[ 169.832833] pci 0000:07:04.0: PCI bridge to [bus 35-3d]
[ 169.832860] pci 0000:07:04.0: bridge window [mem 0xc6000000-0xcdffffff]
[ 169.832877] pci 0000:07:04.0: bridge window [mem 0xea000000-0xf1ffffff 64bit pref]
[ 169.833017] pci 0000:07:05.0: PCI bridge to [bus 3e]
[ 169.833181] pci 0000:07:06.0: PCI bridge to [bus 3f]
[ 169.833301] pci_bus 0000:07: Allocating resources
[ 169.833365] pci 0000:07:00.0: bridge window [io 0x1000-0x0fff] to [bus 08] add_size 1000
[ 169.833369] pci 0000:07:00.0: bridge window [mem 0x00100000-0x000fffff 64bit pref] to [bus 08] add_size 200000 add_align 100000
[ 169.833395] pci 0000:07:03.0: bridge window [io 0x1000-0x0fff] to [bus 09-34] add_size 1000
[ 169.833421] pci 0000:07:04.0: bridge window [io 0x1000-0x0fff] to [bus 35-3d] add_size 1000
[ 169.833446] pci 0000:07:05.0: bridge window [io 0x1000-0x0fff] to [bus 3e] add_size 1000
[ 169.833448] pci 0000:07:05.0: bridge window [mem 0x00100000-0x000fffff 64bit pref] to [bus 3e] add_size 200000 add_align 100000
[ 169.833450] pci 0000:07:05.0: bridge window [mem 0x00100000-0x000fffff] to [bus 3e] add_size 200000 add_align 100000
[ 169.833475] pci 0000:07:06.0: bridge window [io 0x1000-0x0fff] to [bus 3f] add_size 1000
[ 169.833477] pci 0000:07:06.0: bridge window [mem 0x00100000-0x000fffff 64bit pref] to [bus 3f] add_size 200000 add_align 100000
[ 169.833478] pci 0000:07:06.0: bridge window [mem 0x00100000-0x000fffff] to [bus 3f] add_size 200000 add_align 100000
[ 169.833505] pci 0000:07:00.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833507] pci 0000:07:03.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833509] pci 0000:07:04.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833511] pci 0000:07:05.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833514] pci 0000:07:06.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833516] pci 0000:06:00.0: bridge window [io 0x1000-0x0fff] to [bus 07-3f] add_size 5000
[ 169.833519] pci 0000:06:00.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 5000 min_align 1000
[ 169.833521] pci 0000:06:00.0: res[13]=[io 0x1000-0x5fff] res_to_dev_res add_size 5000 min_align 1000
[ 169.833525] pci 0000:06:00.0: BAR 13: assigned [io 0x6000-0xafff]
[ 169.833532] pci 0000:07:00.0: res[15]=[mem 0x00100000-0x000fffff 64bit pref] res_to_dev_res add_size 200000 min_align 100000
[ 169.833534] pci 0000:07:00.0: res[15]=[mem 0x00100000-0x002fffff 64bit pref] res_to_dev_res add_size 200000 min_align 100000
[ 169.833537] pci 0000:07:05.0: res[14]=[mem 0x00100000-0x000fffff] res_to_dev_res add_size 200000 min_align 100000
[ 169.833539] pci 0000:07:05.0: res[14]=[mem 0x00100000-0x002fffff] res_to_dev_res add_size 200000 min_align 100000
[ 169.833542] pci 0000:07:05.0: res[15]=[mem 0x00100000-0x000fffff 64bit pref] res_to_dev_res add_size 200000 min_align 100000
[ 169.833544] pci 0000:07:05.0: res[15]=[mem 0x00100000-0x002fffff 64bit pref] res_to_dev_res add_size 200000 min_align 100000
[ 169.833547] pci 0000:07:06.0: res[14]=[mem 0x00100000-0x000fffff] res_to_dev_res add_size 200000 min_align 100000
[ 169.833549] pci 0000:07:06.0: res[14]=[mem 0x00100000-0x002fffff] res_to_dev_res add_size 200000 min_align 100000
[ 169.833552] pci 0000:07:06.0: res[15]=[mem 0x00100000-0x000fffff 64bit pref] res_to_dev_res add_size 200000 min_align 100000
[ 169.833554] pci 0000:07:06.0: res[15]=[mem 0x00100000-0x002fffff 64bit pref] res_to_dev_res add_size 200000 min_align 100000
[ 169.833556] pci 0000:07:00.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833559] pci 0000:07:00.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833561] pci 0000:07:03.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833563] pci 0000:07:03.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833565] pci 0000:07:04.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833568] pci 0000:07:04.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833570] pci 0000:07:05.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833573] pci 0000:07:05.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833575] pci 0000:07:06.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833577] pci 0000:07:06.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000
[ 169.833581] pci 0000:07:00.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833583] pci 0000:07:00.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833585] pci 0000:07:05.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833587] pci 0000:07:05.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833590] pci 0000:07:05.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833593] pci 0000:07:05.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833595] pci 0000:07:06.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833597] pci 0000:07:06.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833600] pci 0000:07:06.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833602] pci 0000:07:06.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833605] pci 0000:07:00.0: BAR 13: assigned [io 0x6000-0x6fff]
[ 169.833607] pci 0000:07:03.0: BAR 13: assigned [io 0x7000-0x7fff]
[ 169.833609] pci 0000:07:04.0: BAR 13: assigned [io 0x8000-0x8fff]
[ 169.833611] pci 0000:07:05.0: BAR 13: assigned [io 0x9000-0x9fff]
[ 169.833614] pci 0000:07:06.0: BAR 13: assigned [io 0xa000-0xafff]
[ 169.833618] pci 0000:07:06.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833621] pci 0000:07:06.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833624] pci 0000:07:06.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833626] pci 0000:07:06.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833629] pci 0000:07:05.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833631] pci 0000:07:05.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833634] pci 0000:07:05.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833636] pci 0000:07:05.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833640] pci 0000:07:00.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833642] pci 0000:07:00.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833645] pci 0000:07:00.0: PCI bridge to [bus 08]
[ 169.833652] pci 0000:07:00.0: bridge window [io 0x6000-0x6fff]
[ 169.833668] pci 0000:07:00.0: bridge window [mem 0xce000000-0xce0fffff]
[ 169.833699] pci 0000:07:03.0: PCI bridge to [bus 09-34]
[ 169.833706] pci 0000:07:03.0: bridge window [io 0x7000-0x7fff]
[ 169.833722] pci 0000:07:03.0: bridge window [mem 0xb8000000-0xc5ffffff]
[ 169.833733] pci 0000:07:03.0: bridge window [mem 0xd0000000-0xe9ffffff 64bit pref]
[ 169.833754] pci 0000:07:04.0: PCI bridge to [bus 35-3d]
[ 169.833760] pci 0000:07:04.0: bridge window [io 0x8000-0x8fff]
[ 169.833776] pci 0000:07:04.0: bridge window [mem 0xc6000000-0xcdffffff]
[ 169.833787] pci 0000:07:04.0: bridge window [mem 0xea000000-0xf1ffffff 64bit pref]
[ 169.833807] pci 0000:07:05.0: PCI bridge to [bus 3e]
[ 169.833813] pci 0000:07:05.0: bridge window [io 0x9000-0x9fff]
[ 169.833889] pci 0000:07:06.0: PCI bridge to [bus 3f]
[ 169.833896] pci 0000:07:06.0: bridge window [io 0xa000-0xafff]
[ 169.833937] pci 0000:06:00.0: PCI bridge to [bus 07-3f]
[ 169.833943] pci 0000:06:00.0: bridge window [io 0x6000-0xafff]
[ 169.833968] pci 0000:06:00.0: bridge window [mem 0xb8000000-0xce0fffff]
[ 169.833978] pci 0000:06:00.0: bridge window [mem 0xd0000000-0xf1ffffff 64bit pref]
[ 169.834050] pcieport 0000:06:00.0: enabling device (0006 -> 0007)
[ 169.834409] pcieport 0000:07:00.0: enabling device (0006 -> 0007)
[ 169.834672] pcieport 0000:07:03.0: enabling device (0006 -> 0007)
[ 169.834952] pcieport 0000:07:04.0: enabling device (0006 -> 0007)
[ 169.835555] pcieport 0000:07:05.0: enabling device (0004 -> 0005)
[ 169.835778] pcieport 0000:07:06.0: enabling device (0004 -> 0005)
请注意出现问题的区域:
[ 169.833581] pci 0000:07:00.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833583] pci 0000:07:00.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833585] pci 0000:07:05.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833587] pci 0000:07:05.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833590] pci 0000:07:05.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833593] pci 0000:07:05.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833595] pci 0000:07:06.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833597] pci 0000:07:06.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833600] pci 0000:07:06.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833602] pci 0000:07:06.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833605] pci 0000:07:00.0: BAR 13: assigned [io 0x6000-0x6fff]
[ 169.833607] pci 0000:07:03.0: BAR 13: assigned [io 0x7000-0x7fff]
[ 169.833609] pci 0000:07:04.0: BAR 13: assigned [io 0x8000-0x8fff]
[ 169.833611] pci 0000:07:05.0: BAR 13: assigned [io 0x9000-0x9fff]
[ 169.833614] pci 0000:07:06.0: BAR 13: assigned [io 0xa000-0xafff]
[ 169.833618] pci 0000:07:06.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833621] pci 0000:07:06.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833624] pci 0000:07:06.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833626] pci 0000:07:06.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833629] pci 0000:07:05.0: BAR 14: no space for [mem size 0x00200000]
[ 169.833631] pci 0000:07:05.0: BAR 14: failed to assign [mem size 0x00200000]
[ 169.833634] pci 0000:07:05.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833636] pci 0000:07:05.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
[ 169.833640] pci 0000:07:00.0: BAR 15: no space for [mem size 0x00200000 64bit pref]
[ 169.833642] pci 0000:07:00.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref]
lspci
显示插入 SANLink2 时出现的 PCI 桥接设备,但没有显示连接到这些桥接器的任何东西。lspci -vvxxxx
您可以在此处查看完整输出。
我发现其他发行版错误跟踪器上提到了类似的问题,但没有解决方案可以解决我的问题。我尝试了最新的主线内核 (v4.7),看看最近的错误修复是否有效果,但我看到了相同的行为。
答案1
如果我可以发表评论,这将是一条评论 - 因为我还没有明确的解决方案。我在使用 Titan Ridge 附加卡的 Thunderbolt 3 上遇到了这个问题。它似乎只影响我的 eGPU - 我的 SANLink3 N1 和 Dell Thunderbolt 3 SSD 似乎不受影响。要么它们的 BAR 已分配,要么它们不受分配失败的影响。我已经做了一些事情来提供帮助,但还没有完全解决它。我的外部 R9 Nano 有一个像你的 BAR,可能具有完全相同的大小和类型,但出现故障:[mem size 0x00200000 64bit pref]
我发现有些东西可能会有帮助:
- 安装 BIOS 更新(如果可用)
- 更新 NVM Thunderbolt 固件(如果可用)https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/thunderbolt.rst)
- BIOS 中启用了 Intel VT-d
- BIOS 中启用 4G 以上解码
- 在 GRUB 中你可以设置内核参数
- intel_iommu=on 或 intel_iommu=igfx_only 如果这会损坏你的视频
- pci=nocrs,realloc(nocrs 允许它忽略 BIOS 施加的更多限制)
- 也许可以尝试 pci=noacpi (可能会破坏某些东西,也可能不会)
- 在这里找到更多选项:https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
- 尝试最新内核 - Linux 4.19(稳定版)或 Linux 4.20-rc2(最新版)
对于 Titan Ridge,pci=assign-busses 可以提供很大帮助,特别是在不受支持的系统(例如 AMD)上使用 Thunderbolt 控制器时,但这会破坏 Titan Ridge 之前的任何 Thunderbolt 实现 - 所以不要使用这个。
我不知道 Thunderbolt 2 是否有安全级别。但作为最后的手段,您可以在 BIOS 中启用 Thunderbolt 启动支持和 Thunderbolt Option ROM,并禁用安全级别(如果适用)。然后在打开计算机之前将 SANLink 连接到计算机,希望 BIOS 能够分配它(在这种情况下,删除您正在为 Linux 试验的内核参数)。这不是我们想要前进的方式——一切都应该在可以轻松更新、审核和调试代码的操作系统中处理。但就目前而言,BIOS 将继续困扰我们。
如果您现在希望使用 4.20-rc2 内核,则必须编译自己的内核 - 因为 Ubuntu 再次无法进行主线构建,而没有人对此采取任何措施。http://kernel.ubuntu.com/~kernel-ppa/mainline/
祝你好运!我知道这是两年零三个月前的事了,所以你可能已经没有电脑了。但它有 766 次浏览量,也许其他人会对某种解决方案感兴趣。