[LU-11949] Able to define duplicate nids via lnetctl Created: 08/Feb/19  Updated: 09/Feb/19

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

Type: Bug Priority: Minor
Reporter: Chris Horn Assignee: WC Triage
Resolution: Unresolved Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

LNet is initially configured via the ip2nets module parameter.

nid00127:~ # cat /etc/modprobe.d/cray-lnet.conf
options lnet ip2nets="gni99 10.129.*.*; gni4 10.129.*.*"
nid00127:~ # lctl list_nids
127@gni99
127@gni4

I'm able to add a duplicate 127@gni4 address with lnetctl:

nid00127:~ # lnetctl net add --ip2net "gni4(ipogif0) 10.129.*.*"
nid00127:~ # lctl list_nids
127@gni99
127@gni4
127@gni4

Can/should we throw an error in this case?

If I add them both with lnetctl then I get an error on the second one:

nid00127:~ # lnetctl net del --net gni4 --if ipogif0
nid00127:~ # lctl list_nids
127@gni99
127@gni4
nid00127:~ # lnetctl net del --net gni4 --if ipogif0
nid00127:~ # lctl list_nids
127@gni99
nid00127:~ # lnetctl net add --ip2net "gni4(ipogif0) 10.129.*.*"
nid00127:~ # lctl list_nids
127@gni99
127@gni4
nid00127:~ # lnetctl net add --ip2net "gni4(ipogif0) 10.129.*.*"
add:
    - net:
          errno: -22
          descr: "cannot add network: Invalid argument"
nid00127:~ #


 Comments   
Comment by Amir Shehata (Inactive) [ 09/Feb/19 ]

at first glance when you run the command through lnetctl you're specifying the interface name, while in the module parameter case you're not. I suspect this causes the check in the code not to evaluate the second add as a duplicate.

To confirm, you can you make the following change in the module parameters:

 options lnet ip2nets="gni99 10.129.*.*; gni4(ipogif0) 10.129.*.*"

I think this might be clearer if you use:

lnetctl net show 

to dump the configured networks instead of list_nids

Generated at Sat Feb 10 02:48:20 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.