Whamcloud - gitweb
LU-12236 lnet: support non-default network namespace 69/36769/3
authorAurelien Degremont <degremoa@amazon.com>
Thu, 25 Apr 2019 13:15:56 +0000 (13:15 +0000)
committerOleg Drokin <green@whamcloud.com>
Thu, 12 Dec 2019 23:05:32 +0000 (23:05 +0000)
commitbb4ef6bce3823668ca511915293f4991aa3cf75a
tree3fd0c3fd36fc93f024bc98d6922bb708383cc155
parent9292c2a0d1159d3ab47a190799f73e1e1a09f77c
LU-12236 lnet: support non-default network namespace

Replace hard coded references to default root network namespace
(&init_net) in LNET code (LNET, socklnd and o2iblnd).

When a network interface is created, Lustre records the current
network namespace. This patch improves the LNET code to use
this reference namespace most of the time instead of the root
network namespace. When using lctl, lnetctl or insmod, we
use the current process network namespace.
When starting the listening acceptor, we use the namespace of the
process that triggers this start.

An additional patch is needed for RPCSEC GSS support.

Lustre-change: https://review.whamcloud.com/34768
Lustre-commit: 93b08edfb1c6ae8aec7e1009d3aca450416358d7

Signed-off-by: Aurelien Degremont <degremoa@amazon.com>
Change-Id: I56877ddcd7a27883662c86f245b196153211e7b2
Reviewed-on: https://review.whamcloud.com/36769
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lnet/include/lnet/lib-lnet.h
lnet/klnds/o2iblnd/o2iblnd.c
lnet/klnds/o2iblnd/o2iblnd.h
lnet/klnds/o2iblnd/o2iblnd_cb.c
lnet/klnds/socklnd/socklnd.c
lnet/klnds/socklnd/socklnd_cb.c
lnet/lnet/acceptor.c
lnet/lnet/config.c
lnet/lnet/lib-socket.c