[Bug 1843381] Re: Dell system takes a long time to connect network with external dock
Steve Langasek
steve.langasek at canonical.com
Fri Nov 15 16:42:00 UTC 2019
Hello Che, or anyone else affected,
Accepted systemd into bionic-proposed. The package will build now and be
available at
https://launchpad.net/ubuntu/+source/systemd/237-3ubuntu10.33 in a few
hours, and then in the -proposed repository.
Please help us by testing this new package. See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed. Your feedback will aid us getting this
update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-bionic to verification-done-bionic. If it does not
fix the bug for you, please add a comment stating that, and change the
tag to verification-failed-bionic. In either case, without details of
your testing we will not be able to proceed.
Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in
advance for helping!
N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.
** Tags removed: verification-done-bionic
** Tags added: verification-needed-bionic
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1843381
Title:
Dell system takes a long time to connect network with external dock
Status in OEM Priority Project:
New
Status in systemd package in Ubuntu:
Invalid
Status in systemd source package in Bionic:
Fix Committed
Status in systemd source package in Disco:
Fix Committed
Status in systemd source package in Eoan:
Invalid
Bug description:
[impact]
On Dell system with BIOS-based "MAC passthrough", there can be
multiple USB nics with identical MAC addresses. Since the udev rules
in Debian and Ubuntu assign interface names for USB nics by mac
address (because that is the only consistent identifier for USB nics;
their path can change based on which USB port they are connected to),
it's impossible to name two interfaces with the same name. As Ubuntu
also carries a patch to retry renaming of any interface when the first
renaming fails, this causes a 90 second delay before being able to the
"MAC passthrough" nic after connecting it.
[test case]
On a system with this "MAC passthrough" enabled and required devices,
boot the system and then connect to the dock or connect the second USB
nic with identical MAC. It will not be usable for 90 seconds as its
renames takes that long to timeout.
[regression potential]
the change here is very limited to only Dell systems with the specific
USB vendor/product ID affected by this, and additionally the change
only sets a ENV flag in the udev rule, which is later used by udevd to
skip the rename-retries for 90 seconds. So, the regression potential
for anyone else without a system affected by this "MAC passthrough"
should be very low, and any regression potential for those with this
"MAC passthrough" should still be low, as this only skips the rename-
retry that we know will never succeed.
However, the regression potential is likely limited to failure to
properly name a USB nic, or other bugs during the udev processing of
new USB nics.
[other info]
original description:
---
This is a bug reopen from
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1837700
The original one caused systemd regressed.
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1842651
This issue needs an alternative solution.
--------------------------------------------------------------------------------
Dell has a feature called MAC addrss passthrough[1] that would force usb ethernet adapters to be assigned with a predefined MAC address stored in BIOS or so. This feature has been landed to mainline kernel in driver r8152[2]. So whenever a r8152 managed device is plugged into Dell devices with MAC addrss passthrough enabled, this driver will set NIC MAC to a predefined one.
And some Dell devices have already one built-in r8152 NIC port. On
these devices, when a second r8152 NIC is plugged in, a Debian
originated udev rules file 73-usb-net-by-mac.rules[3] will invoke udev
built-in command `net_id` to give a persistent name, and that will be
based on MAC address. However, since the system has already
initialized the built-in r8152 NIC with that name, renaming the second
interface with this name will always fail.
While Debian still carries a patch called "Revert-udev-network-device-
renaming-immediately-give.patch"[4] that tries to keep support of
already deprecated "75-persistent-net-generator.rules" based interface
renaming mechanism, this patch also propagated into Ubuntu[5]. This
patch will retry renaming with a 90 seconds timeout when the error
code is -EEXIST, so the uevent processing will always be blocked in
the last ifrename step in the victim system.
ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: udev 237-3ubuntu10.24 [modified: lib/udev/rules.d/50-firmware.rules lib/udev/rules.d/50-udev-default.rules lib/udev/rules.d/73-special-net-names.rules lib/udev/rules.d/73-usb-net-by-mac.rules]
ProcVersionSignature: Ubuntu 4.15.0-1043.48-oem 4.15.18
Uname: Linux 4.15.0-1043-oem x86_64
ApportVersion: 2.20.9-0ubuntu7.2
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
CustomUdevRuleFiles: 70-snap.core.rules 95-oem-hotkey-osd.rules
Date: Wed Jul 24 15:30:59 2019
DistributionChannelDescriptor:
# This is the distribution channel descriptor for the OEM CDs
# For more information see http://wiki.ubuntu.com/DistributionChannelDescriptor
canonical-oem-somerville-bionic-amd64-20180608-47+beaver-jorah+X90
InstallationDate: Installed on 2019-07-03 (20 days ago)
InstallationMedia: Ubuntu 18.04 "Bionic" - Build amd64 LIVE Binary 20180608-09:38
MachineType: Dell Inc. Latitude 7424 Rugged Extreme
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-1043-oem.efi.signed root=UUID=5da90c85-3500-49a2-b989-71a604f9eec4 ro mem_sleep_default=deep quiet splash systemd.log_level=debug udev.log-priority=debug log_buf_len=8M vt.handoff=1
SourcePackage: systemd
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 05/27/2019
dmi.bios.vendor: Dell Inc.
dmi.bios.version: 1.5.0
dmi.board.name: 0Y7FK3
dmi.board.vendor: Dell Inc.
dmi.board.version: X03
dmi.chassis.type: 10
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvr1.5.0:bd05/27/2019:svnDellInc.:pnLatitude7424RuggedExtreme:pvr:rvnDellInc.:rn0Y7FK3:rvrX03:cvnDellInc.:ct10:cvr:
dmi.product.family: Latitude
dmi.product.name: Latitude 7424 Rugged Extreme
dmi.sys.vendor: Dell Inc.
[1]: https://www.dell.com/support/article/tw/zh/twdhs1/sln301147/what-is-mac-address-pass-through?lang=en
[2]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/net/usb/r8152.c
[3]: https://salsa.debian.org/systemd-team/systemd/blob/master/debian/extra/rules/73-usb-net-by-mac.rules
[4]: https://salsa.debian.org/systemd-team/systemd/blob/master/debian/patches/debian/Revert-udev-network-device-renaming-immediately-give.patch
[5]: https://git.launchpad.net/~ubuntu-core-dev/ubuntu/+source/systemd/tree/debian/patches/debian/Revert-udev-network-device-renaming-immediately-give.patch?h=ubuntu-bionic
To manage notifications about this bug go to:
https://bugs.launchpad.net/oem-priority/+bug/1843381/+subscriptions
More information about the foundations-bugs
mailing list