mirror of
https://github.com/torvalds/linux.git
synced 2025-08-15 14:11:42 +02:00
Merge branch '10GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue
Tony Nguyen says: ==================== ixgbe: bypass devlink phys_port_name generation Jedrzej adds option to skip phys_port_name generation and opts ixgbe into it as some configurations rely on pre-devlink naming which could end up broken as a result. * '10GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue: ixgbe: prevent from unwanted interface name changes devlink: let driver opt out of automatic phys_port_name generation ==================== Link: https://patch.msgid.link/20250812205226.1984369-1-anthony.l.nguyen@intel.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
commit
212122775e
3 changed files with 7 additions and 2 deletions
|
@ -543,6 +543,7 @@ int ixgbe_devlink_register_port(struct ixgbe_adapter *adapter)
|
|||
|
||||
attrs.flavour = DEVLINK_PORT_FLAVOUR_PHYSICAL;
|
||||
attrs.phys.port_number = adapter->hw.bus.func;
|
||||
attrs.no_phys_port_name = 1;
|
||||
ixgbe_devlink_set_switch_id(adapter, &attrs.switch_id);
|
||||
|
||||
devlink_port_attrs_set(devlink_port, &attrs);
|
||||
|
|
|
@ -78,6 +78,9 @@ struct devlink_port_pci_sf_attrs {
|
|||
* @flavour: flavour of the port
|
||||
* @split: indicates if this is split port
|
||||
* @splittable: indicates if the port can be split.
|
||||
* @no_phys_port_name: skip automatic phys_port_name generation; for
|
||||
* compatibility only, newly added driver/port instance
|
||||
* should never set this.
|
||||
* @lanes: maximum number of lanes the port supports. 0 value is not passed to netlink.
|
||||
* @switch_id: if the port is part of switch, this is buffer with ID, otherwise this is NULL
|
||||
* @phys: physical port attributes
|
||||
|
@ -87,7 +90,8 @@ struct devlink_port_pci_sf_attrs {
|
|||
*/
|
||||
struct devlink_port_attrs {
|
||||
u8 split:1,
|
||||
splittable:1;
|
||||
splittable:1,
|
||||
no_phys_port_name:1;
|
||||
u32 lanes;
|
||||
enum devlink_port_flavour flavour;
|
||||
struct netdev_phys_item_id switch_id;
|
||||
|
|
|
@ -1519,7 +1519,7 @@ static int __devlink_port_phys_port_name_get(struct devlink_port *devlink_port,
|
|||
struct devlink_port_attrs *attrs = &devlink_port->attrs;
|
||||
int n = 0;
|
||||
|
||||
if (!devlink_port->attrs_set)
|
||||
if (!devlink_port->attrs_set || devlink_port->attrs.no_phys_port_name)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
switch (attrs->flavour) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue