nfs4: set source address when callback is generated
authorTakuma Umeya <tumeya@redhat.com>
Wed, 15 Dec 2010 05:09:01 +0000 (14:09 +0900)
committerJ. Bruce Fields <bfields@redhat.com>
Wed, 5 Jan 2011 00:43:01 +0000 (19:43 -0500)
commit6f3d772fb8a039de8f21d725f5e38c252b4c0efd
treea62c900be0d2766223f0e5630cebaaf2ffee0efb
parent3c726023402a2f3b28f49b9d90ebf9e71151157d
nfs4: set source address when callback is generated

when callback is generated in NFSv4 server, it doesn't set the source
address. When an alias IP is utilized on NFSv4 server and suppose the
client is accessing via that alias IP (e.g. eth0:0), the client invokes
the callback to the IP address that is set on the original device (e.g.
eth0). This behavior results in timeout of xprt.
The patch sets the IP address that the client should invoke callback to.

Signed-off-by: Takuma Umeya <tumeya@redhat.com>
[bfields@redhat.com: Simplify gen_callback arguments, use helper function]
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4callback.c
fs/nfsd/nfs4state.c
fs/nfsd/state.h