Lenovo dock MAC Address pass through doesn't work in Ubuntu

Bug #1827961 reported by Brainslug
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
Bionic
Fix Released
Medium
Unassigned
Disco
Fix Released
Medium
Unassigned
Eoan
Fix Released
Medium
Unassigned

Bug Description

=== SRU Justification ===
[Impact]
Lenovo dock doesn't support MAC passthrough.

[Fix]
Add support to Lenovo Dock MAC passthrough.

[Test]
MAC passthrough works once the patch is applied.

[Regression Potential]
Low. Apart from adding support to Lenovo Dock, this patch only did minor
refactoring to existing behavior, no functional change to current code.

=== Original Bug Report ===
Similar to bug https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1579984 the MAC address pass through does not work with a Lenovo Thunderbolt 3 Workstation Dock.

The dock's network port is recognized and working but it has its own MAC address even though MAC Address pass through is enabled in the BIOS.

This is the dock in question:

https://www.lenovo.com/us/en/accessories-and-monitors/top-tech/Thunderbolt-WS-230W-dock-US/p/40AN0230US

and the laptop is a Lenovo P1. Debug files attached.

Please let me know if further info is required.

Thanks!

ProblemType: Bug
DistroRelease: Ubuntu 19.04
Package: linux-image-5.0.0-13-generic 5.0.0-13.14
ProcVersionSignature: Ubuntu 5.0.0-13.14-generic 5.0.6
Uname: Linux 5.0.0-13-generic x86_64
ApportVersion: 2.20.10-0ubuntu27
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC2: rauer 2107 F.... pulseaudio
 /dev/snd/controlC1: rauer 2107 F.... pulseaudio
 /dev/snd/controlC0: rauer 2107 F.... pulseaudio
CurrentDesktop: i3
Date: Mon May 6 19:34:26 2019
InstallationDate: Installed on 2019-04-09 (27 days ago)
InstallationMedia: Ubuntu 19.04 "Disco Dingo" - Alpha amd64 (20190326.2)
MachineType: LENOVO 20MES1WH00
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.0.0-13-generic root=UUID=9c2b3401-a2e2-41ae-bc22-d1de22149ee0 ro quiet splash vt.handoff=1
RelatedPackageVersions:
 linux-restricted-modules-5.0.0-13-generic N/A
 linux-backports-modules-5.0.0-13-generic N/A
 linux-firmware 1.178
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/15/2019
dmi.bios.vendor: LENOVO
dmi.bios.version: N2EET39W (1.21 )
dmi.board.asset.tag: Not Available
dmi.board.name: 20MES1WH00
dmi.board.vendor: LENOVO
dmi.board.version: SDK0Q40104 WIN
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: None
dmi.modalias: dmi:bvnLENOVO:bvrN2EET39W(1.21):bd04/15/2019:svnLENOVO:pn20MES1WH00:pvrThinkPadP1:rvnLENOVO:rn20MES1WH00:rvrSDK0Q40104WIN:cvnLENOVO:ct10:cvrNone:
dmi.product.family: ThinkPad P1
dmi.product.name: 20MES1WH00
dmi.product.sku: LENOVO_MT_20ME_BU_Think_FM_ThinkPad P1
dmi.product.version: ThinkPad P1
dmi.sys.vendor: LENOVO

Revision history for this message
Brainslug (brain-slug) wrote :
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

The usb ethernet chip in LP: #1579984 is r8153, while this Lenovo Dock uses cdc_ether. In general this needs special driver support, where the mechanism is opaque to us.

So please raise the issue to Lenovo.

Revision history for this message
Brainslug (brain-slug) wrote :

Thank you for your reply and for looking into this issue. I will contact Lenovo but I won't get my hopes up. Operating the dock w/o MAC passthrough is luckily not a big deal for me.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Looks like it's very alike Dell's Mac passthrough, can you provide acpidump?

Revision history for this message
Brainslug (brain-slug) wrote :

Here you go...
Please let me know if you need anything else.

I also talked to Lenovo about this as you suggested but the answer was that they don't support Linux on that Laptop/Dock and that they can't be of any help with this problem.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Please install and boot this kernel:
https://people.canonical.com/~khfeng/lp1827961/

And attach dmesg.

Revision history for this message
Brainslug (brain-slug) wrote :

Installed and booted your kernel, dmesg attached.

The MAC address of the dock has not changed with the new kernel, still using the dock's own MAC instead of the laptop's.

Thanks!

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Please test this kernel:
https://people.canonical.com/~khfeng/lp1827961/

It should support Lenovo Dock Mac passthrough.

Revision history for this message
Brainslug (brain-slug) wrote :

I can confirm that the new kernel indeed supports Dock MAC pass through.

Thanks much for your help!

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

There's a conversation between Lenovo and Canonical. I'll upstream the patch once all details become clear.

Changed in linux (Ubuntu):
assignee: nobody → Kai-Heng Feng (kaihengfeng)
Brad Figg (brad-figg)
tags: added: ubuntu-certified
Revision history for this message
Pascal K (peos) wrote :

Are there any updates regarding this patch? Personally I am using Fedora 30 right now on my ThinkPad L380 Yoga and have the same problem with MAC Passthrough. The Dock I am using is a Lenovo USB-C Dock (vid_17ef pid_a359). I guess it uses the same RTL8153 chip as the thunderbolt dock. I would appreciate it if you could publish the source patches, as there is only the ubuntu kernel binary. Thank you in advance for the help.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Cleaned up patch to make it upstreamable. Only compiled tested.

tags: added: patch
Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Binary kernel package can be found here:
https://people.canonical.com/~khfeng/lp1827961-5.4/

Revision history for this message
Shengyao Xue (xueshengyao) wrote :
Download full text (3.4 KiB)

I tested the above kernel on a ThinkPad X1 Carbon 7th with a Thunderbolt Dock 2nd Gen.

Below it the result when inserting cable into local Ethernet:

u@u-ThinkPad-X1-Carbon-7th:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 98:fa:9b:1d:f8:01 brd ff:ff:ff:ff:ff:ff
    inet 10.8.8.38/24 brd 10.8.8.255 scope global dynamic noprefixroute enp0s31f6
       valid_lft 375sec preferred_lft 375sec
    inet6 fe80::5af7:b91b:8317:9006/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
3: wlp0s20f3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 38:00:25:62:c5:1e brd ff:ff:ff:ff:ff:ff

Below it the result when inserting cable into Dock Ethernet:

u@u-ThinkPad-X1-Carbon-7th:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:fa:9b:1d:f8:01 brd ff:ff:ff:ff:ff:ff
3: wlp0s20f3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 38:00:25:62:c5:1e brd ff:ff:ff:ff:ff:ff
4: enxe04f439597fa: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether e0:4f:43:95:97:fa brd ff:ff:ff:ff:ff:ff
    inet 10.8.8.25/24 brd 10.8.8.255 scope global dynamic noprefixroute enxe04f439597fa
       valid_lft 582sec preferred_lft 582sec
    inet6 fe80::26ef:5ee3:a28b:3622/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

Below it the result when inserting cable into Dock Ethernet and enabled Mac Pass Through in BIOS:

u@u-ThinkPad-X1-Carbon-7th:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:fa:9b:1d:f8:01 brd ff:ff:ff:ff:ff:ff
3: wlp0s20f3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 38:00:25:62:c5:1e brd ff:ff:ff:ff:ff:ff
4: enxe04f439597fa: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether e0:4f:43:95:97:fa brd ff:ff:ff:ff:ff:ff
    inet 10.8.8.25/24 brd 10.8.8.255 scope global dynamic nopref...

Read more...

Revision history for this message
Shengyao Xue (xueshengyao) wrote :

dmesg attached.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :
Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :
Changed in linux (Ubuntu):
assignee: Kai-Heng Feng (kaihengfeng) → nobody
description: updated
Stefan Bader (smb)
Changed in linux (Ubuntu Bionic):
importance: Undecided → Medium
Changed in linux (Ubuntu Disco):
importance: Undecided → Medium
Changed in linux (Ubuntu Eoan):
importance: Undecided → Medium
Changed in linux (Ubuntu Bionic):
status: New → Fix Committed
Changed in linux (Ubuntu Disco):
status: New → Fix Committed
Changed in linux (Ubuntu Eoan):
status: New → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-disco' to 'verification-done-disco'. If the problem still exists, change the tag 'verification-needed-disco' to 'verification-failed-disco'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-disco
tags: added: verification-needed-bionic
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-bionic' to 'verification-done-bionic'. If the problem still exists, change the tag 'verification-needed-bionic' to 'verification-failed-bionic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

Revision history for this message
Brainslug (brain-slug) wrote :

I am traveling and won't be able to connect to my docking station for a while. Should be back in the office mid January and will report back then if nobody else is able to confirm that the fix is working.

Thank you!

- B

Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-eoan' to 'verification-done-eoan'. If the problem still exists, change the tag 'verification-needed-eoan' to 'verification-failed-eoan'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-eoan
Revision history for this message
Shengyao Xue (xueshengyao) wrote :

Tested the proposed Bionic kernel (4.15.0-73) on a ThinkPad X1 Carbon 7th with Mac Pass Through Enabled in BIOS, this issue was fixed.

changed the tag 'verification-needed-bionic' to 'verification-done-bionic'.

tags: added: verification-done-bionic
removed: verification-needed-bionic
Revision history for this message
Shengyao Xue (xueshengyao) wrote :

Also tested the disco-proposed kernel (5.0.0-38) on a ThinkPad X1 Carbon 7th with Mac Pass Through Enabled in BIOS, this issue was fixed.

changed the tag 'verification-needed-disco' to 'verification-done-disco'.

tags: added: verification-done-disco
removed: verification-needed-disco
Revision history for this message
Shengyao Xue (xueshengyao) wrote :

Also tested the eoan-proposed kernel (5.3.0-25) on a ThinkPad X1 Carbon 7th with Mac Pass Through Enabled in BIOS, this issue was fixed.

changed the tag 'verification-needed-eoan' to 'verification-done-eoan'.

tags: added: verification-done-eoan
removed: verification-needed-eoan
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (27.4 KiB)

This bug was fixed in the package linux - 5.3.0-26.28

---------------
linux (5.3.0-26.28) eoan; urgency=medium

  * eoan/linux: 5.3.0-26.28 -proposed tracker (LP: #1856807)

  * nvidia-435 is in eoan, linux-restricted-modules only builds against 430,
    ubiquity gives me the self-signed modules experience instead of using the
    Canonical-signed modules (LP: #1856407)
    - Add nvidia-435 dkms build

linux (5.3.0-25.27) eoan; urgency=medium

  * eoan/linux: 5.3.0-25.27 -proposed tracker (LP: #1854762)

  * CVE-2019-14901
    - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()

  * CVE-2019-14896 // CVE-2019-14897
    - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor

  * CVE-2019-14895
    - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie()

  * [CML] New device id's for CMP-H (LP: #1846335)
    - mmc: sdhci-pci: Add another Id for Intel CML
    - i2c: i801: Add support for Intel Comet Lake PCH-H
    - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash
    - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs

  * i915: Display flickers (monitor loses signal briefly) during "flickerfree"
    boot, while showing the BIOS logo on a black background (LP: #1836858)
    - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y

  * Please add patch fixing RK818 ID detection (LP: #1853192)
    - SAUCE: mfd: rk808: Fix RK818 ID template

  * Kernel build log filled with "/bin/bash: line 5: warning: command
    substitution: ignored null byte in input" (LP: #1853843)
    - [Debian] Fix warnings when checking for modules signatures

  * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961)
    - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2

  * Dell XPS 13 9350/9360 headphone audio hiss (LP: #1654448) // [XPS 13 9360,
    Realtek ALC3246, Black Headphone Out, Front] High noise floor (LP: #1845810)
    - ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360

  * no HDMI video output since GDM greeter after linux-oem-osp1 version
    5.0.0-1026 (LP: #1852386)
    - drm/i915: Add new CNL PCH ID seen on a CML platform
    - SAUCE: drm/i915: Fix detection for a CMP-V PCH

  * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer
    works on Dell Venue 11 Pro 7140 (LP: #1846539)
    - [Config] Drop snd-sof-intel-bdw build
    - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy
      driver

  * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2
    (LP: #1847451)
    - SAUCE: tools/power turbostat: Add Cometlake support

  * External microphone can't work on some dell machines with the codec alc256
    or alc236 (LP: #1853791)
    - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table
    - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table

  * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection
    (LP: #1853197)
    - xfrm: Fix memleak on xfrm state destroy

  * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660
    - powerpc/64s: support nospectre_v2 cmdline option
    - powerp...

Changed in linux (Ubuntu Eoan):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (42.3 KiB)

This bug was fixed in the package linux - 5.0.0-38.41

---------------
linux (5.0.0-38.41) disco; urgency=medium

  * disco/linux: 5.0.0-38.41 -proposed tracker (LP: #1854788)

  * [Regression] Failed to boot disco kernel built from master-next (kernel
    kernel NULL pointer dereference) (LP: #1853981)
    - SAUCE: blk-mq: Fix blk_mq_make_request for mq devices

  * CVE-2019-14901
    - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()

  * CVE-2019-14896 // CVE-2019-14897
    - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor

  * CVE-2019-14895
    - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie()

  * [CML] New device id's for CMP-H (LP: #1846335)
    - mmc: sdhci-pci: Add another Id for Intel CML
    - i2c: i801: Add support for Intel Comet Lake PCH-H
    - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash
    - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs

  * Please add patch fixing RK818 ID detection (LP: #1853192)
    - SAUCE: mfd: rk808: Fix RK818 ID template

  * [SRU][B/OEM-B/OEM-OSP1/D] Enable new Elan touchpads which are not in current
    whitelist (LP: #1853246)
    - Input: elan_i2c - export the device id whitelist
    - HID: quirks: Refactor ELAN 400 and 401 handling

  * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961)
    - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2

  * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2
    (LP: #1847451)
    - SAUCE: tools/power turbostat: Add Cometlake support

  * External microphone can't work on some dell machines with the codec alc256
    or alc236 (LP: #1853791)
    - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table
    - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table

  * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection
    (LP: #1853197)
    - xfrm: Fix memleak on xfrm state destroy

  * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660
    - powerpc/64s: support nospectre_v2 cmdline option
    - powerpc/book3s64: Fix link stack flush on context switch
    - KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel

  * Raydium Touchscreen on ThinkPad L390 does not work (LP: #1849721)
    - HID: i2c-hid: fix no irq after reset on raydium 3118

  * Make Goodix I2C touchpads work (LP: #1853842)
    - HID: i2c-hid: Remove runtime power management
    - HID: i2c-hid: Send power-on command after reset

  * Touchpad doesn't work on Dell Inspiron 7000 2-in-1 (LP: #1851901)
    - Revert "UBUNTU: SAUCE: mfd: intel-lpss: add quirk for Dell XPS 13 7390
      2-in-1"
    - lib: devres: add a helper function for ioremap_uc
    - mfd: intel-lpss: Use devm_ioremap_uc for MMIO

  * CVE-2019-19055
    - nl80211: fix memory leak in nl80211_get_ftm_responder_stats

  * [CML-S62] Need enable intel_rapl patch support for Comet lake- S 6+2
    (LP: #1847454)
    - powercap/intel_rapl: add support for CometLake Mobile
    - powercap/intel_rapl: add support for Cometlake desktop

  * [CML-S62] Need enable intel_pmc_core driver patch for Comet l...

Changed in linux (Ubuntu Disco):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (42.4 KiB)

This bug was fixed in the package linux - 4.15.0-74.84

---------------
linux (4.15.0-74.84) bionic; urgency=medium

  * bionic/linux: 4.15.0-74.84 -proposed tracker (LP: #1856749)

  * [Hyper-V] KVP daemon fails to start on first boot of disco VM (LP: #1820063)
    - [Packaging] bind hv_kvp_daemon startup to hv_kvp device

  * Unrevert "arm64: Use firmware to detect CPUs that are not affected by
    Spectre-v2" (LP: #1854207)
    - arm64: Get rid of __smccc_workaround_1_hvc_*
    - arm64: Use firmware to detect CPUs that are not affected by Spectre-v2

  * Bionic kernel panic on Cavium ThunderX CN88XX (LP: #1853485)
    - SAUCE: irqchip/gic-v3-its: Add missing return value in
      its_irq_domain_activate()

linux (4.15.0-73.82) bionic; urgency=medium

  * bionic/linux: 4.15.0-73.82 -proposed tracker (LP: #1854819)

  * CVE-2019-14901
    - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()

  * CVE-2019-14896 // CVE-2019-14897
    - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor

  * CVE-2019-14895
    - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie()

  * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660
    - powerpc/64s: support nospectre_v2 cmdline option
    - powerpc/book3s64: Fix link stack flush on context switch
    - KVM: PPC: Book3S HV: Flush link stack on guest exit to host kernel

  * Please add patch fixing RK818 ID detection (LP: #1853192)
    - SAUCE: mfd: rk808: Fix RK818 ID template

  * [SRU][B/OEM-B/OEM-OSP1/D] Enable new Elan touchpads which are not in current
    whitelist (LP: #1853246)
    - HID: quirks: Fix keyboard + touchpad on Lenovo Miix 630
    - Input: elan_i2c - export the device id whitelist
    - HID: quirks: Refactor ELAN 400 and 401 handling

  * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961)
    - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2

  * s390/dasd: reduce the default queue depth and nr of hardware queues
    (LP: #1852257)
    - s390/dasd: reduce the default queue depth and nr of hardware queues

  * External microphone can't work on some dell machines with the codec alc256
    or alc236 (LP: #1853791)
    - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table
    - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table

  * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection
    (LP: #1853197)
    - xfrm: Fix memleak on xfrm state destroy

  * CVE-2019-19083
    - drm/amd/display: memory leak

  * update ENA driver for DIMLIB dynamic interrupt moderation (LP: #1853180)
    - net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it
    - net: ena: switch to dim algorithm for rx adaptive interrupt moderation
    - net: ena: reimplement set/get_coalesce()
    - net: ena: enable the interrupt_moderation in driver_supported_features
    - net: ena: remove code duplication in
      ena_com_update_nonadaptive_moderation_interval _*()
    - net: ena: remove old adaptive interrupt moderation code from ena_netdev
    - net: ena: remove ena_restore_ethtool_params() and relevant fields
    - net: ena: remov...

Changed in linux (Ubuntu Bionic):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (8.6 KiB)

This bug was fixed in the package linux - 5.4.0-9.12

---------------
linux (5.4.0-9.12) focal; urgency=medium

  * alsa/hda/realtek: the line-out jack doens't work on a dell AIO
    (LP: #1855999)
    - SAUCE: ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO

  * scsi: hisi_sas: Check sas_port before using it (LP: #1855952)
    - scsi: hisi_sas: Check sas_port before using it

  * CVE-2019-19078
    - ath10k: fix memory leak

  * cifs: DFS Caching feature causing problems traversing multi-tier DFS setups
    (LP: #1854887)
    - cifs: Fix retrieval of DFS referrals in cifs_mount()

  * Support DPCD aux brightness control (LP: #1856134)
    - SAUCE: drm/i915: Fix eDP DPCD aux max backlight calculations
    - SAUCE: drm/i915: Assume 100% brightness when not in DPCD control mode
    - SAUCE: drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight()
    - SAUCE: drm/i915: Auto detect DPCD backlight support by default
    - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED
      panel
    - USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision 4K sku

  * The system cannot resume from S3 if user unplugs the TB16 during suspend
    state (LP: #1849269)
    - PCI: pciehp: Do not disable interrupt twice on suspend
    - PCI: pciehp: Prevent deadlock on disconnect

  * change kconfig of the soundwire bus driver from y to m (LP: #1855685)
    - [Config]: SOUNDWIRE=m

  * alsa/sof: change to use hda hdmi codec driver to make hdmi audio on the
    docking station work (LP: #1855666)
    - ALSA: hda/hdmi - implement mst_no_extra_pcms flag
    - ASoC: hdac_hda: add support for HDMI/DP as a HDA codec
    - ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi
    - ASoC: Intel: skl-hda-dsp-generic: fix include guard name
    - ASoC: SOF: Intel: add support for snd-hda-codec-hdmi
    - ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support
    - ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support
    - ASoC: intel: sof_rt5682: common hdmi codec support
    - ASoC: Intel: bxt_rt298: common hdmi codec support
    - ASoC: SOF: enable sync_write in hdac_bus
    - [config]: SND_SOC_SOF_HDA_COMMON_HDMI_CODEC=y

  * Fix unusable USB hub on Dell TB16 after S3 (LP: #1855312)
    - SAUCE: USB: core: Make port power cycle a seperate helper function
    - SAUCE: USB: core: Attempt power cycle port when it's in eSS.Disabled state

  * Focal update: v5.4.3 upstream stable release (LP: #1856583)
    - rsi: release skb if rsi_prepare_beacon fails
    - arm64: tegra: Fix 'active-low' warning for Jetson TX1 regulator
    - arm64: tegra: Fix 'active-low' warning for Jetson Xavier regulator
    - perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite
    - sparc64: implement ioremap_uc
    - lp: fix sparc64 LPSETTIMEOUT ioctl
    - time: Zero the upper 32-bits in __kernel_timespec on 32-bit
    - mailbox: tegra: Fix superfluous IRQ error message
    - staging/octeon: Use stubs for MIPS && !CAVIUM_OCTEON_SOC
    - usb: gadget: u_serial: add missing port entry locking
    - serial: 8250-mtk: Use platform_get_irq_optional() for optional irq
    - tty: serial: fsl_lpuart: use the sg ...

Read more...

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Christian Schaubschläger (thymallus) wrote :

Hi!

I guess the same tweaking is required for the Lenovo ThinkPad USB-C Dock Gen2 (USB-C Dock Ethernet has VID 0x17ef, PID 0xa387).

Adding this to rtl8152_probe in r8152.c

        if (le16_to_cpu(udev->descriptor.idVendor) == VENDOR_ID_LENOVO &&
            ((le16_to_cpu(udev->descriptor.idProduct) == 0x3082) ||
             (le16_to_cpu(udev->descriptor.idProduct) == 0xa387)))
                set_bit(LENOVO_MACPASSTHRU, &tp->flags);

works for me.

Regards,
Christian

Revision history for this message
Peder Stray (pstray) wrote :

After booting into 5.3.0-26 on my Lenovo X390, it has started to loose network connection when connected to the Thunderbolt 3 Gen 2 dock after a while. No traffic goes through. Enabling wifi after it works fine, but unselecting "Enable Networking" in network manager makes the whole computer hang (can move mouse, but no input from keyboard is registered anymore, or so it seems at least)

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

For a387 device:
https://lkml.org/lkml/2020/2/4/5

@Peder, please file a separate bug.

Revision history for this message
Peder Stray (pstray) wrote :

OK, done: LP: #1862159

Revision history for this message
Christian Schaubschläger (thymallus) wrote :

Hello!

I have a Lenovo Thinkpad Thunderbolt 3 Dock Gen 2 connected to a Dell Latitude 5400. I'm running a vanilla 5.8.16 kernel. MAC pass-through does not work out of the box. I've narrowed the problem down to the following:

Here is the part of the code from the vanilla kernel that does not work in my setup:

drivers/net/usb/r8152.c: static int vendor_mac_passthru_addr_read(struct r8152 *tp, struct sockaddr *sa):
        ...
        if (test_bit(LENOVO_MACPASSTHRU, &tp->flags)) {
                mac_obj_name = "\\MACA";
                mac_obj_type = ACPI_TYPE_STRING;
                mac_strlen = 0x16;
        } else {
        ...

With the code above, vendor_mac_passthru_addr_read exits without success here:

        ....
        status = acpi_evaluate_object(NULL, mac_obj_name, NULL, &buffer);
        obj = (union acpi_object *)buffer.pointer;
        if (!ACPI_SUCCESS(status))
        {
                return -ENODEV;
        }
        ...

If I change the first code snippet to this:

        ...
        if (test_bit(LENOVO_MACPASSTHRU, &tp->flags)) {
                mac_obj_name = "\\_SB.AMAC";
                mac_obj_type = ACPI_TYPE_BUFFER;
                mac_strlen = 0x17;
        } else {
        ...

MAC pass-through works fine!

I don't know if this is true for all Lenovo Thinkpad Thunderbolt 3 Docks, I only have this one.

Regards,
Christian

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

I don't think MAC passthrough should work for cross-vendor hardwares..

Revision history for this message
Lucas Sandery (lucas+-) wrote :

I'm hoping I'm experiencing the same bug and the fix could be updated to work on Mantic, and committed.

ThinkPad P16s, Hybrid dock 40AF, inbuilt ether port works fine, dock ether port works fine in normal mode. If I enable MAC pass-through in BIOS, only a carrier signal is detected, connection fails at DHCP step, and no Internet connection can be established.

WiFi is unaffected.

Revision history for this message
madjax (madjax) wrote :

Is there a similar bug report for Dells hardware? I can't get passthrough to work between Dell Latitude and any Dell dock/adapter

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.