Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 333195
b: refs/heads/master
c: 758201e
h: refs/heads/master
i:
  333193: 4d2943c
  333191: 930e6c6
v: v3
  • Loading branch information
Trond Myklebust authored and Trond Myklebust committed Oct 1, 2012
1 parent f96c1ce commit 9ea48db
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9f62387d6e26532bcbfb15606956074192ee526a
refs/heads/master: 758201e2c94b7d26ea0ac64e55cab1d53742780a
27 changes: 13 additions & 14 deletions trunk/fs/nfs/callback.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#include <linux/sunrpc/svc.h>
#include <linux/sunrpc/svcsock.h>
#include <linux/nfs_fs.h>
#include <linux/errno.h>
#include <linux/mutex.h>
#include <linux/freezer.h>
#include <linux/kthread.h>
Expand Down Expand Up @@ -177,15 +178,11 @@ nfs41_callback_up(struct svc_serv *serv)
return rqstp;
}

static inline int nfs_minorversion_callback_svc_setup(u32 minorversion,
struct svc_serv *serv,
static void nfs_minorversion_callback_svc_setup(struct svc_serv *serv,
struct svc_rqst **rqstpp, int (**callback_svc)(void *vrqstp))
{
if (minorversion) {
*rqstpp = nfs41_callback_up(serv);
*callback_svc = nfs41_callback_svc;
}
return minorversion;
*rqstpp = nfs41_callback_up(serv);
*callback_svc = nfs41_callback_svc;
}

static inline void nfs_callback_bc_serv(u32 minorversion, struct rpc_xprt *xprt,
Expand All @@ -204,11 +201,11 @@ static int nfs41_callback_up_net(struct svc_serv *serv, struct net *net)
return 0;
}

static inline int nfs_minorversion_callback_svc_setup(u32 minorversion,
struct svc_serv *serv,
static void nfs_minorversion_callback_svc_setup(struct svc_serv *serv,
struct svc_rqst **rqstpp, int (**callback_svc)(void *vrqstp))
{
return 0;
*rqstpp = ERR_PTR(-ENOTSUPP);
*callback_svc = ERR_PTR(-ENOTSUPP);
}

static inline void nfs_callback_bc_serv(u32 minorversion, struct rpc_xprt *xprt,
Expand All @@ -225,19 +222,21 @@ static int nfs_callback_start_svc(int minorversion, struct rpc_xprt *xprt,
struct nfs_callback_data *cb_info = &nfs_callback_info[minorversion];
char svc_name[12];
int ret;
int minorversion_setup;

nfs_callback_bc_serv(minorversion, xprt, serv);

if (cb_info->task)
return 0;

minorversion_setup = nfs_minorversion_callback_svc_setup(minorversion,
serv, &rqstp, &callback_svc);
if (!minorversion_setup) {
switch (minorversion) {
case 0:
/* v4.0 callback setup */
rqstp = nfs4_callback_up(serv);
callback_svc = nfs4_callback_svc;
break;
default:
nfs_minorversion_callback_svc_setup(serv,
&rqstp, &callback_svc);
}

if (IS_ERR(rqstp))
Expand Down

0 comments on commit 9ea48db

Please sign in to comment.