** Description changed:

  [Impact]
  In Xenial/16.04LTS, one can't generate network interface name from 
"phys_port_name" attribute.
  
  "phys_port_name" indicates the interface physical port name within the
  NIC.
  
  [Test Case]
  
  Check that udev (systemd-udevd) provides the phys_port_name property
  Tests should be done on kernel versions: v4.15 (HWE)
+ 
+ # cat /sys/class/net/<INTERFACE>/phys_port_name
+ yyy
+ 
+ Look if interface name contains the 'phys_port_name':
+ 
+ $ ip link show
+ ....
+ 3: ens3nyyy: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
+ ....
  
  [Regression Potential]
  
  * This piece of code is already in place in Bionic (systemd) and late.
  AFAICT, nothing has been reported since then with regards to this feature.
  
  * phys_port_name kernel support has been introduced in v4.1, but none of
  the current v4.4 Xenial kernel drivers uses it (minus rocker which is a
  test bed software switch for devel work on switchdev, it has no real
  function)
  
  # Xenial - kernel v4.4
  config-4.4.0-142-generic:# CONFIG_NET_SWITCHDEV is not set
  
  No drivers uses the phys_port_name method at all + NET_SWITCHDEV is not
  even turned on.
  
  # Xenial HWE - kernel v4.15
  config-4.15.0-99-generic:CONFIG_NET_SWITCHDEV=y
  
  Meaning if a regression arise, it will be limited to the HWE kernel (v4.15) 
and to the "Ethernet switch device driver model (switchdev)":
  mlx5
  mlxsw
  bnxt
  sfc (solarflar)
  
  --
  drivers/net/ethernet:
  --
  broadcom/bnxt/bnxt_vfr.c:     .ndo_get_phys_port_name = 
bnxt_vf_rep_get_phys_port_name
  broadcom/bnxt/bnxt.c: .ndo_get_phys_port_name = bnxt_get_phys_port_name
  cavium/liquidio/lio_vf_rep.c: .ndo_get_phys_port_name = 
lio_vf_rep_phys_port_name,
  mellanox/mlx5/core/en_rep.c:  .ndo_get_phys_port_name  = 
mlx5e_rep_get_phys_port_name,
  mellanox/mlxsw/switchx2.c:    .ndo_get_phys_port_name = 
mlxsw_sx_port_get_phys_port_name,
  mellanox/mlxsw/spectrum.c:    .ndo_get_phys_port_name = 
mlxsw_sp_port_get_phys_port_name,
  netronome/nfp/nfp_net_repr.c: .ndo_get_phys_port_name = 
nfp_port_get_phys_port_name,
  netronome/nfp/nfp_net_common.c:       .ndo_get_phys_port_name = 
nfp_port_get_phys_port_name,
  rocker/rocker_main.c: .ndo_get_phys_port_name         = 
rocker_port_get_phys_port_name,
  sfc/efx.c:    .ndo_get_phys_port_name = efx_get_phys_port_name,
  --
  
  **
  One item I'm currently testing is ddstreet's comment:
  https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1875927/comments/1
  **
  
  [Other informations]
  
https://github.com/systemd/systemd/commit/4887b656c22af059d4e833de7b56544f24951184
  https://github.com/systemd/systemd/pull/4506
  
  [Original Description]
  
  It has been brought to my attention that systemd in Xenial/16.04LTS
  doesn't have support for phys_port_name[0] attribute.
  
  The support has been first introduced in systemd version "232" via:
  
https://github.com/systemd/systemd/commit/4887b656c22af059d4e833de7b56544f24951184
  https://github.com/systemd/systemd/pull/4506
  
  Bionic and late have the necessary bits ( systemd >232), but not Xenial
  (229)[1]
  
  Support for "phys_port_name" has been first introduced in the kernel
  with v4.1[2]
  
  [0]
  - https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
  - 
https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html
  - https://www.kernel.org/doc/Documentation/networking/switchdev.txt
  
  [1]
  # git systemd/systemd
  git describe --contains 4887b656c22af059d4e833de7b56544f24951184
  v232~15
  
  # rmadison
   => systemd | 229-4ubuntu21.27 | xenial-updates
   systemd | 237-3ubuntu10.39 | bionic-updates
   systemd | 240-6ubuntu5.8   | disco-updates
   systemd | 242-7ubuntu3.7   | eoan-updates
   systemd | 245.4-4ubuntu3   | focal
   systemd | 245.4-4ubuntu3   | groovy
  
  [2]
  https://github.com/torvalds/linux/commit/db24a9044ee1
  
  $ git describe --contains db24a9044ee1
  v4.1-rc1

** Description changed:

  [Impact]
  In Xenial/16.04LTS, one can't generate network interface name from 
"phys_port_name" attribute.
  
  "phys_port_name" indicates the interface physical port name within the
  NIC.
  
  [Test Case]
  
  Check that udev (systemd-udevd) provides the phys_port_name property
  Tests should be done on kernel versions: v4.15 (HWE)
  
  # cat /sys/class/net/<INTERFACE>/phys_port_name
  yyy
  
  Look if interface name contains the 'phys_port_name':
  
  $ ip link show
  ....
  3: ens3nyyy: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
  ....
  
  [Regression Potential]
  
  * This piece of code is already in place in Bionic (systemd) and late.
  AFAICT, nothing has been reported since then with regards to this feature.
  
  * phys_port_name kernel support has been introduced in v4.1, but none of
  the current v4.4 Xenial kernel drivers uses it (minus rocker which is a
  test bed software switch for devel work on switchdev, it has no real
  function)
  
  # Xenial - kernel v4.4
  config-4.4.0-142-generic:# CONFIG_NET_SWITCHDEV is not set
  
  No drivers uses the phys_port_name method at all + NET_SWITCHDEV is not
  even turned on.
  
  # Xenial HWE - kernel v4.15
  config-4.15.0-99-generic:CONFIG_NET_SWITCHDEV=y
  
  Meaning if a regression arise, it will be limited to the HWE kernel (v4.15) 
and to the "Ethernet switch device driver model (switchdev)":
  mlx5
  mlxsw
  bnxt
  sfc (solarflar)
  
  --
  drivers/net/ethernet:
  --
  broadcom/bnxt/bnxt_vfr.c:     .ndo_get_phys_port_name = 
bnxt_vf_rep_get_phys_port_name
  broadcom/bnxt/bnxt.c: .ndo_get_phys_port_name = bnxt_get_phys_port_name
  cavium/liquidio/lio_vf_rep.c: .ndo_get_phys_port_name = 
lio_vf_rep_phys_port_name,
  mellanox/mlx5/core/en_rep.c:  .ndo_get_phys_port_name  = 
mlx5e_rep_get_phys_port_name,
  mellanox/mlxsw/switchx2.c:    .ndo_get_phys_port_name = 
mlxsw_sx_port_get_phys_port_name,
  mellanox/mlxsw/spectrum.c:    .ndo_get_phys_port_name = 
mlxsw_sp_port_get_phys_port_name,
  netronome/nfp/nfp_net_repr.c: .ndo_get_phys_port_name = 
nfp_port_get_phys_port_name,
  netronome/nfp/nfp_net_common.c:       .ndo_get_phys_port_name = 
nfp_port_get_phys_port_name,
  rocker/rocker_main.c: .ndo_get_phys_port_name         = 
rocker_port_get_phys_port_name,
  sfc/efx.c:    .ndo_get_phys_port_name = efx_get_phys_port_name,
  --
  
+ # On other more specific kernels the regression potential can be
+ expanded to virtio drive as well.
+ 
  **
  One item I'm currently testing is ddstreet's comment:
  https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1875927/comments/1
  **
  
  [Other informations]
  
https://github.com/systemd/systemd/commit/4887b656c22af059d4e833de7b56544f24951184
  https://github.com/systemd/systemd/pull/4506
  
  [Original Description]
  
  It has been brought to my attention that systemd in Xenial/16.04LTS
  doesn't have support for phys_port_name[0] attribute.
  
  The support has been first introduced in systemd version "232" via:
  
https://github.com/systemd/systemd/commit/4887b656c22af059d4e833de7b56544f24951184
  https://github.com/systemd/systemd/pull/4506
  
  Bionic and late have the necessary bits ( systemd >232), but not Xenial
  (229)[1]
  
  Support for "phys_port_name" has been first introduced in the kernel
  with v4.1[2]
  
  [0]
  - https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
  - 
https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html
  - https://www.kernel.org/doc/Documentation/networking/switchdev.txt
  
  [1]
  # git systemd/systemd
  git describe --contains 4887b656c22af059d4e833de7b56544f24951184
  v232~15
  
  # rmadison
   => systemd | 229-4ubuntu21.27 | xenial-updates
   systemd | 237-3ubuntu10.39 | bionic-updates
   systemd | 240-6ubuntu5.8   | disco-updates
   systemd | 242-7ubuntu3.7   | eoan-updates
   systemd | 245.4-4ubuntu3   | focal
   systemd | 245.4-4ubuntu3   | groovy
  
  [2]
  https://github.com/torvalds/linux/commit/db24a9044ee1
  
  $ git describe --contains db24a9044ee1
  v4.1-rc1

** Description changed:

  [Impact]
  In Xenial/16.04LTS, one can't generate network interface name from 
"phys_port_name" attribute.
  
  "phys_port_name" indicates the interface physical port name within the
  NIC.
  
  [Test Case]
  
  Check that udev (systemd-udevd) provides the phys_port_name property
  Tests should be done on kernel versions: v4.15 (HWE)
  
  # cat /sys/class/net/<INTERFACE>/phys_port_name
  yyy
  
  Look if interface name contains the 'phys_port_name':
  
  $ ip link show
  ....
  3: ens3nyyy: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
  ....
  
  [Regression Potential]
  
  * This piece of code is already in place in Bionic (systemd) and late.
  AFAICT, nothing has been reported since then with regards to this feature.
  
  * phys_port_name kernel support has been introduced in v4.1, but none of
  the current v4.4 Xenial kernel drivers uses it (minus rocker which is a
  test bed software switch for devel work on switchdev, it has no real
  function)
  
  # Xenial - kernel v4.4
  config-4.4.0-142-generic:# CONFIG_NET_SWITCHDEV is not set
  
  No drivers uses the phys_port_name method at all + NET_SWITCHDEV is not
  even turned on.
  
  # Xenial HWE - kernel v4.15
  config-4.15.0-99-generic:CONFIG_NET_SWITCHDEV=y
  
  Meaning if a regression arise, it will be limited to the HWE kernel (v4.15) 
and to the "Ethernet switch device driver model (switchdev)":
  mlx5
  mlxsw
  bnxt
  sfc (solarflar)
  
  --
  drivers/net/ethernet:
  --
  broadcom/bnxt/bnxt_vfr.c:     .ndo_get_phys_port_name = 
bnxt_vf_rep_get_phys_port_name
  broadcom/bnxt/bnxt.c: .ndo_get_phys_port_name = bnxt_get_phys_port_name
  cavium/liquidio/lio_vf_rep.c: .ndo_get_phys_port_name = 
lio_vf_rep_phys_port_name,
  mellanox/mlx5/core/en_rep.c:  .ndo_get_phys_port_name  = 
mlx5e_rep_get_phys_port_name,
  mellanox/mlxsw/switchx2.c:    .ndo_get_phys_port_name = 
mlxsw_sx_port_get_phys_port_name,
  mellanox/mlxsw/spectrum.c:    .ndo_get_phys_port_name = 
mlxsw_sp_port_get_phys_port_name,
  netronome/nfp/nfp_net_repr.c: .ndo_get_phys_port_name = 
nfp_port_get_phys_port_name,
  netronome/nfp/nfp_net_common.c:       .ndo_get_phys_port_name = 
nfp_port_get_phys_port_name,
  rocker/rocker_main.c: .ndo_get_phys_port_name         = 
rocker_port_get_phys_port_name,
  sfc/efx.c:    .ndo_get_phys_port_name = efx_get_phys_port_name,
  --
  
  # On other more specific kernels the regression potential can be
- expanded to virtio drive as well.
+ expanded to virtio-net driver as well.
  
  **
  One item I'm currently testing is ddstreet's comment:
  https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1875927/comments/1
  **
  
  [Other informations]
  
https://github.com/systemd/systemd/commit/4887b656c22af059d4e833de7b56544f24951184
  https://github.com/systemd/systemd/pull/4506
  
  [Original Description]
  
  It has been brought to my attention that systemd in Xenial/16.04LTS
  doesn't have support for phys_port_name[0] attribute.
  
  The support has been first introduced in systemd version "232" via:
  
https://github.com/systemd/systemd/commit/4887b656c22af059d4e833de7b56544f24951184
  https://github.com/systemd/systemd/pull/4506
  
  Bionic and late have the necessary bits ( systemd >232), but not Xenial
  (229)[1]
  
  Support for "phys_port_name" has been first introduced in the kernel
  with v4.1[2]
  
  [0]
  - https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
  - 
https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html
  - https://www.kernel.org/doc/Documentation/networking/switchdev.txt
  
  [1]
  # git systemd/systemd
  git describe --contains 4887b656c22af059d4e833de7b56544f24951184
  v232~15
  
  # rmadison
   => systemd | 229-4ubuntu21.27 | xenial-updates
   systemd | 237-3ubuntu10.39 | bionic-updates
   systemd | 240-6ubuntu5.8   | disco-updates
   systemd | 242-7ubuntu3.7   | eoan-updates
   systemd | 245.4-4ubuntu3   | focal
   systemd | 245.4-4ubuntu3   | groovy
  
  [2]
  https://github.com/torvalds/linux/commit/db24a9044ee1
  
  $ git describe --contains db24a9044ee1
  v4.1-rc1

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1875927

Title:
  add support for phys_port_name attribute in Xenial/16.04LTS

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1875927/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to