From d0e338b453a168c32b61a7584b0fabf594d76f09 Mon Sep 17 00:00:00 2001 From: Chuck Lever Date: Fri, 14 Mar 2008 14:25:46 -0400 Subject: [PATCH] --- yaml --- r: 92901 b: refs/heads/master c: 850c95fd07b63704d06909c9a081c51272d32db1 h: refs/heads/master i: 92899: ea9d186c96990688a143bc86b624256e402c440a v: v3 --- [refs] | 2 +- trunk/fs/lockd/mon.c | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 0bba5c450e59..22b11b0612a0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 496951743100b2d2ccd8b268257e79425e489851 +refs/heads/master: 850c95fd07b63704d06909c9a081c51272d32db1 diff --git a/trunk/fs/lockd/mon.c b/trunk/fs/lockd/mon.c index 87bd4e4d65dd..06216d6715f7 100644 --- a/trunk/fs/lockd/mon.c +++ b/trunk/fs/lockd/mon.c @@ -183,6 +183,25 @@ static __be32 *xdr_encode_mon_name(__be32 *p, struct nsm_args *argp) return xdr_encode_nsm_string(p, name); } +/* + * The "my_id" argument specifies the hostname and RPC procedure + * to be called when the status manager receives notification + * (via the SM_NOTIFY call) that the state of host "mon_name" + * has changed. + */ +static __be32 *xdr_encode_my_id(__be32 *p, struct nsm_args *argp) +{ + p = xdr_encode_nsm_string(p, utsname()->nodename); + if (!p) + return ERR_PTR(-EIO); + + *p++ = htonl(argp->prog); + *p++ = htonl(argp->vers); + *p++ = htonl(argp->proc); + + return p; +} + static __be32 * xdr_encode_common(struct rpc_rqst *rqstp, __be32 *p, struct nsm_args *argp) {