]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
NFS rename client back channel transport field
authorAndy Adamson <andros@netapp.com>
Thu, 6 Jan 2011 02:04:35 +0000 (02:04 +0000)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Thu, 6 Jan 2011 19:46:25 +0000 (14:46 -0500)
Differentiate from server backchannel

Signed-off-by: Andy Adamson <andros@netapp.com>
Acked-by: Bruce Fields <bfields@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/callback.c
include/linux/sunrpc/bc_xprt.h
include/linux/sunrpc/svc.h
net/sunrpc/svc.c
net/sunrpc/svcsock.c

index 753a9e315518312f7d2a35df8b0364ea29f6b507..199016528fcbefa5f7a59ece47380568b0cf0f4d 100644 (file)
@@ -142,7 +142,7 @@ int nfs4_set_callback_sessionid(struct nfs_client *clp)
        struct svc_serv *serv = clp->cl_rpcclient->cl_xprt->bc_serv;
        struct nfs4_sessionid *bc_sid;
 
-       if (!serv->bc_xprt)
+       if (!serv->sv_bc_xprt)
                return -EINVAL;
 
        /* on success freed in xprt_free */
@@ -152,12 +152,12 @@ int nfs4_set_callback_sessionid(struct nfs_client *clp)
        memcpy(bc_sid->data, &clp->cl_session->sess_id.data,
                NFS4_MAX_SESSIONID_LEN);
        spin_lock_bh(&serv->sv_cb_lock);
-       serv->bc_xprt->xpt_bc_sid = bc_sid;
+       serv->sv_bc_xprt->xpt_bc_sid = bc_sid;
        spin_unlock_bh(&serv->sv_cb_lock);
-       dprintk("%s set xpt_bc_sid=%u:%u:%u:%u for bc_xprt %p\n", __func__,
+       dprintk("%s set xpt_bc_sid=%u:%u:%u:%u for sv_bc_xprt %p\n", __func__,
                ((u32 *)bc_sid->data)[0], ((u32 *)bc_sid->data)[1],
                ((u32 *)bc_sid->data)[2], ((u32 *)bc_sid->data)[3],
-               serv->bc_xprt);
+               serv->sv_bc_xprt);
        return 0;
 }
 
@@ -228,8 +228,8 @@ nfs41_callback_up(struct svc_serv *serv, struct rpc_xprt *xprt)
        init_waitqueue_head(&serv->sv_cb_waitq);
        rqstp = svc_prepare_thread(serv, &serv->sv_pools[0]);
        if (IS_ERR(rqstp)) {
-               svc_xprt_put(serv->bc_xprt);
-               serv->bc_xprt = NULL;
+               svc_xprt_put(serv->sv_bc_xprt);
+               serv->sv_bc_xprt = NULL;
        }
 out:
        dprintk("--> %s return %ld\n", __func__,
index 2c60e094fdec281e3b3c56b34f460e1a5b50431f..c50b458b8a3f48047556c3f120eb538971d26cd5 100644 (file)
@@ -43,7 +43,7 @@ int bc_send(struct rpc_rqst *req);
  */
 static inline int svc_is_backchannel(const struct svc_rqst *rqstp)
 {
-       if (rqstp->rq_server->bc_xprt)
+       if (rqstp->rq_server->sv_bc_xprt)
                return 1;
        return 0;
 }
@@ -51,7 +51,7 @@ static inline struct nfs4_sessionid *bc_xprt_sid(struct svc_rqst *rqstp)
 {
        if (svc_is_backchannel(rqstp))
                return (struct nfs4_sessionid *)
-                                       rqstp->rq_server->bc_xprt->xpt_bc_sid;
+                       rqstp->rq_server->sv_bc_xprt->xpt_bc_sid;
        return NULL;
 }
 
index 5a3085b9b3941d8f67fd9dec1c0584f360cfb3f6..c81d4d8be3a99425729e0046c2d3683929b7a45a 100644 (file)
@@ -99,7 +99,7 @@ struct svc_serv {
        spinlock_t              sv_cb_lock;     /* protects the svc_cb_list */
        wait_queue_head_t       sv_cb_waitq;    /* sleep here if there are no
                                                 * entries in the svc_cb_list */
-       struct svc_xprt         *bc_xprt;
+       struct svc_xprt         *sv_bc_xprt;    /* callback on fore channel */
 #endif /* CONFIG_NFS_V4_1 */
 };
 
index 261e2d1dff1037447f5e3026005afe0bc718cbdc..0e659c665a8d8013e4507224c1b3753158492925 100644 (file)
@@ -1262,7 +1262,7 @@ bc_svc_process(struct svc_serv *serv, struct rpc_rqst *req,
        struct kvec     *resv = &rqstp->rq_res.head[0];
 
        /* Build the svc_rqst used by the common processing routine */
-       rqstp->rq_xprt = serv->bc_xprt;
+       rqstp->rq_xprt = serv->sv_bc_xprt;
        rqstp->rq_xid = req->rq_xid;
        rqstp->rq_prot = req->rq_xprt->prot;
        rqstp->rq_server = serv;
index db3013e4aa04f7b30c5bae0e84cceb276d97fb4f..d265aa700bb3dc9fd036ceef3e3650f8e9b59533 100644 (file)
@@ -1595,7 +1595,7 @@ static struct svc_xprt *svc_bc_create_socket(struct svc_serv *serv,
        xprt = &svsk->sk_xprt;
        svc_xprt_init(&svc_tcp_bc_class, xprt, serv);
 
-       serv->bc_xprt = xprt;
+       serv->sv_bc_xprt = xprt;
 
        return xprt;
 }