lockd: Start PF_INET6 listener only if IPv6 support is available
authorChuck Lever <chuck.lever@oracle.com>
Thu, 19 Mar 2009 00:47:59 +0000 (20:47 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 28 Mar 2009 20:01:16 +0000 (16:01 -0400)
commiteb16e907781a9da7f272a3e8284c26bc4e4aeb9d
tree6651fc149d5afbcc44418fe235a2480060ce3c17
parent9355982830ad67dca35e0f3d43319f3d438f82b4
lockd: Start PF_INET6 listener only if IPv6 support is available

Apparently a lot of people need to disable IPv6 completely on their
distributor-built systems, which have CONFIG_IPV6_MODULE enabled at
build time.

They do this by blacklisting the ipv6.ko module.  This causes the
creation of the lockd service listener to fail if CONFIG_IPV6_MODULE
is set, but the module cannot be loaded.

Now that the kernel's PF_INET6 RPC listeners are completely separate
from PF_INET listeners, we can always start PF_INET.  Then lockd can
try to start PF_INET6, but it isn't required to be available.

Note this has the added benefit that NLM callbacks from AF_INET6
servers will never come from AF_INET remotes.  We no longer have to
worry about matching mapped IPv4 addresses to AF_INET when comparing
addresses.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/lockd/clntlock.c
fs/lockd/svc.c