[Bug 1913763] Re: hyperv: unable to distinguish PTP devices
Dan Streetman
1913763 at bugs.launchpad.net
Thu Apr 1 17:34:33 UTC 2021
ddstreet at ddstreet-test:~$ dpkg -l systemd|grep systemd
ii systemd 229-4ubuntu21.29 amd64 system and service manager
ddstreet at ddstreet-test:~$ ls -l /dev/ptp*
crw------- 1 root root 247, 0 Apr 1 17:29 /dev/ptp0
crw------- 1 root root 247, 1 Apr 1 17:29 /dev/ptp1
ddstreet at ddstreet-test:~$ grep . /sys/class/ptp/*/clock_name
/sys/class/ptp/ptp0/clock_name:hyperv
/sys/class/ptp/ptp1/clock_name:mlx5_p2p
ddstreet at ddstreet-test:~$ dpkg -l systemd|grep systemd
ii systemd 229-4ubuntu21.30 amd64 system and service manager
ddstreet at ddstreet-test:~$ ls -l /dev/ptp*
crw------- 1 root root 247, 0 Apr 1 17:33 /dev/ptp0
crw------- 1 root root 247, 1 Apr 1 17:33 /dev/ptp1
lrwxrwxrwx 1 root root 4 Apr 1 17:33 /dev/ptp_hyperv -> ptp0
ddstreet at ddstreet-test:~$ grep . /sys/class/ptp/*/clock_name
/sys/class/ptp/ptp0/clock_name:hyperv
/sys/class/ptp/ptp1/clock_name:mlx5_p2p
** Tags removed: verification-needed verification-needed-xenial
** Tags added: verification-done verification-done-xenial
--
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/1913763
Title:
hyperv: unable to distinguish PTP devices
Status in systemd package in Ubuntu:
Fix Released
Status in systemd source package in Xenial:
Fix Committed
Status in systemd source package in Bionic:
Fix Released
Status in systemd source package in Focal:
Fix Released
Status in systemd source package in Groovy:
Fix Released
Bug description:
[impact]
the /dev/ptp0 device for a hyperv instance may not be the correct,
hyperv-provided, ptp device.
[test case]
on some hyperv instance types, particularly those that might contain
passthrough network card(s) that also provide ptp, the first ptp
device may not be the correct one to use for ptp, e.g. there may be
multiple ones:
$ ls /dev/ptp*
/dev/ptp0 /dev/ptp1
$ cat /sys/class/ptp/ptp0/clock_name
hyperv
$ cat /sys/class/ptp/ptp1/clock_name
mlx5_p2p
the order can change across boots, so a consistent way of addressing
the hyperv-provided one is needed
[regression potential]
any regression would involve failure to properly create the ptp
symlink, or other failure while udev is processing newly detected ptp
device(s)
[scope]
this is needed in all releases
this was fixed upstream with the commit
32e868f058da8b90add00b2958c516241c532b70 which is not yet included in
any release
[original description]
Hyperv provides a PTP device. On system with multiple PTP devices,
services like Chrony don't have a way to know which one is which.
We would like to have a udev rule to create a symlink to the hyperv
clock. This way, services could be configured to always use this clock
no matter if it is ptp0, ptp1, etc..
For example:
```
SUBSYSTEM=="ptp", ATTR{clock_name}=="hyperv", SYMLINK += "ptp_hyperv"
```
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1913763/+subscriptions
More information about the foundations-bugs
mailing list