[LU-16854] socklnd: NI state is not updated when using alias interface Created: 30/May/23  Updated: 30/May/23

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Serguei Smirnov Assignee: WC Triage
Resolution: Unresolved Votes: 0
Labels: lnet, socklnd

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

If an alias interface is added by whatever method, for example eth0:0 as shown below:

3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000     link/ether 52:54:00:d4:ef:fe brd ff:ff:ff:ff:ff:ff     inet 192.168.122.60/24 brd 192.168.122.255 scope global noprefixroute eth0        valid_lft forever preferred_lft forever     inet 1.2.4.5/24 brd 1.2.4.255 scope global eth0:0        valid_lft forever preferred_lft forever 

then this alias interface can be used to create an LNet NI:

lnetctl net add --net tcp --if eth0:0 

It will show up in the list of NIs:

 net:
    - net type: lo
      local NI(s):
        - nid: 0@lo
          status: up
    - net type: tcp
      local NI(s):
        - nid: 192.168.122.60@tcp
          status: up
          interfaces:
              0: eth0
        - nid: 1.2.4.5@tcp
          status: up
          interfaces:
              0: eth0:0

However if eth0 is brought down, then only eth0 NI status is changed to "down":

# ifdown eth0
# lnetctl net show
net:
    - net type: lo
      local NI(s):
        - nid: 0@lo
          status: up
    - net type: tcp
      local NI(s):
        - nid: 192.168.122.60@tcp
          status: down
          interfaces:
              0: eth0
        - nid: 1.2.4.5@tcp
          status: up
          interfaces:
              0: eth0:0

This confuses LNet source NI selection. Socklnd should be able to detect that the parent interface is being brought down and notify the LNet about the alias going down as well.


Generated at Sat Feb 10 03:30:33 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.