* [PATCH 1/6] nfsd: pass net to nfsd_init_socks()
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
@ 2012-12-04 13:50 ` Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 2/6] nfsd: pass net to nfsd_startup() and nfsd_shutdown() Stanislav Kinsbursky
` (5 subsequent siblings)
6 siblings, 0 replies; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-04 13:50 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Precursor patch. Hard-coded "init_net" will be replaced by proper one in
future.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
---
fs/nfsd/nfssvc.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
index 9beace6..9fd8496 100644
--- a/fs/nfsd/nfssvc.c
+++ b/fs/nfsd/nfssvc.c
@@ -182,18 +182,18 @@ int nfsd_nrthreads(void)
return rv;
}
-static int nfsd_init_socks(void)
+static int nfsd_init_socks(struct net *net)
{
int error;
if (!list_empty(&nfsd_serv->sv_permsocks))
return 0;
- error = svc_create_xprt(nfsd_serv, "udp", &init_net, PF_INET, NFS_PORT,
+ error = svc_create_xprt(nfsd_serv, "udp", net, PF_INET, NFS_PORT,
SVC_SOCK_DEFAULTS);
if (error < 0)
return error;
- error = svc_create_xprt(nfsd_serv, "tcp", &init_net, PF_INET, NFS_PORT,
+ error = svc_create_xprt(nfsd_serv, "tcp", net, PF_INET, NFS_PORT,
SVC_SOCK_DEFAULTS);
if (error < 0)
return error;
@@ -218,7 +218,7 @@ static int nfsd_startup(int nrservs)
ret = nfsd_racache_init(2*nrservs);
if (ret)
return ret;
- ret = nfsd_init_socks();
+ ret = nfsd_init_socks(net);
if (ret)
goto out_racache;
ret = lockd_up(net);
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/6] nfsd: pass net to nfsd_startup() and nfsd_shutdown()
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 1/6] nfsd: pass net to nfsd_init_socks() Stanislav Kinsbursky
@ 2012-12-04 13:50 ` Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 3/6] nfsd: pass net to nfsd_create_serv() Stanislav Kinsbursky
` (4 subsequent siblings)
6 siblings, 0 replies; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-04 13:50 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Precursor patch. Hard-coded "init_net" will be replaced by proper one in
future.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
---
fs/nfsd/nfssvc.c | 15 ++++++---------
1 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
index 9fd8496..21cba3d 100644
--- a/fs/nfsd/nfssvc.c
+++ b/fs/nfsd/nfssvc.c
@@ -203,10 +203,9 @@ static int nfsd_init_socks(struct net *net)
static bool nfsd_up = false;
-static int nfsd_startup(int nrservs)
+static int nfsd_startup(int nrservs, struct net *net)
{
int ret;
- struct net *net = &init_net;
if (nfsd_up)
return 0;
@@ -237,16 +236,14 @@ static int nfsd_startup(int nrservs)
out_net_state:
nfs4_state_shutdown();
out_lockd:
- lockd_down(&init_net);
+ lockd_down(net);
out_racache:
nfsd_racache_shutdown();
return ret;
}
-static void nfsd_shutdown(void)
+static void nfsd_shutdown(struct net *net)
{
- struct net *net = &init_net;
-
/*
* write_ports can create the server without actually starting
* any threads--if we get shut down before any threads are
@@ -264,7 +261,7 @@ static void nfsd_shutdown(void)
static void nfsd_last_thread(struct svc_serv *serv, struct net *net)
{
- nfsd_shutdown();
+ nfsd_shutdown(net);
svc_rpcb_cleanup(serv, net);
@@ -468,7 +465,7 @@ nfsd_svc(int nrservs)
nfsd_up_before = nfsd_up;
- error = nfsd_startup(nrservs);
+ error = nfsd_startup(nrservs, net);
if (error)
goto out_destroy;
error = svc_set_num_threads(nfsd_serv, NULL, nrservs);
@@ -481,7 +478,7 @@ nfsd_svc(int nrservs)
error = nfsd_serv->sv_nrthreads - 1;
out_shutdown:
if (error < 0 && !nfsd_up_before)
- nfsd_shutdown();
+ nfsd_shutdown(net);
out_destroy:
nfsd_destroy(net); /* Release server */
out:
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/6] nfsd: pass net to nfsd_create_serv()
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 1/6] nfsd: pass net to nfsd_init_socks() Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 2/6] nfsd: pass net to nfsd_startup() and nfsd_shutdown() Stanislav Kinsbursky
@ 2012-12-04 13:50 ` Stanislav Kinsbursky
2012-12-07 16:52 ` J. Bruce Fields
2012-12-04 13:50 ` [PATCH 4/6] nfsd: pass net to nfsd_svc() Stanislav Kinsbursky
` (3 subsequent siblings)
6 siblings, 1 reply; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-04 13:50 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Precursor patch. Hard-coded "init_net" will be replaced by proper one in
future.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
---
fs/nfsd/nfsctl.c | 4 ++--
fs/nfsd/nfsd.h | 2 +-
fs/nfsd/nfssvc.c | 5 ++---
3 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c
index e13cbdd..ae1d143 100644
--- a/fs/nfsd/nfsctl.c
+++ b/fs/nfsd/nfsctl.c
@@ -664,7 +664,7 @@ static ssize_t __write_ports_addfd(char *buf)
if (err != 0 || fd < 0)
return -EINVAL;
- err = nfsd_create_serv();
+ err = nfsd_create_serv(net);
if (err != 0)
return err;
@@ -696,7 +696,7 @@ static ssize_t __write_ports_addxprt(char *buf)
if (port < 1 || port > USHRT_MAX)
return -EINVAL;
- err = nfsd_create_serv();
+ err = nfsd_create_serv(net);
if (err != 0)
return err;
diff --git a/fs/nfsd/nfsd.h b/fs/nfsd/nfsd.h
index 5eea0f5..acddf71 100644
--- a/fs/nfsd/nfsd.h
+++ b/fs/nfsd/nfsd.h
@@ -103,7 +103,7 @@ enum vers_op {NFSD_SET, NFSD_CLEAR, NFSD_TEST, NFSD_AVAIL };
int nfsd_vers(int vers, enum vers_op change);
int nfsd_minorversion(u32 minorversion, enum vers_op change);
void nfsd_reset_versions(void);
-int nfsd_create_serv(void);
+int nfsd_create_serv(struct net *net);
extern int nfsd_max_blksize;
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
index 21cba3d..6448391 100644
--- a/fs/nfsd/nfssvc.c
+++ b/fs/nfsd/nfssvc.c
@@ -334,10 +334,9 @@ static int nfsd_get_default_max_blksize(void)
return ret;
}
-int nfsd_create_serv(void)
+int nfsd_create_serv(struct net *net)
{
int error;
- struct net *net = &init_net;
WARN_ON(!mutex_is_locked(&nfsd_mutex));
if (nfsd_serv) {
@@ -459,7 +458,7 @@ nfsd_svc(int nrservs)
if (nrservs == 0 && nfsd_serv == NULL)
goto out;
- error = nfsd_create_serv();
+ error = nfsd_create_serv(net);
if (error)
goto out;
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 3/6] nfsd: pass net to nfsd_create_serv()
2012-12-04 13:50 ` [PATCH 3/6] nfsd: pass net to nfsd_create_serv() Stanislav Kinsbursky
@ 2012-12-07 16:52 ` J. Bruce Fields
2012-12-10 8:25 ` Stanislav Kinsbursky
0 siblings, 1 reply; 12+ messages in thread
From: J. Bruce Fields @ 2012-12-07 16:52 UTC (permalink / raw)
To: Stanislav Kinsbursky; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
On Tue, Dec 04, 2012 at 04:50:16PM +0300, Stanislav Kinsbursky wrote:
> diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
> index 21cba3d..6448391 100644
> --- a/fs/nfsd/nfssvc.c
> +++ b/fs/nfsd/nfssvc.c
> @@ -334,10 +334,9 @@ static int nfsd_get_default_max_blksize(void)
> return ret;
> }
>
> -int nfsd_create_serv(void)
> +int nfsd_create_serv(struct net *net)
> {
> int error;
> - struct net *net = &init_net;
What does this apply to? Since 3.6-rc1 we have
57c8b13e3cd0f94944c9691ce7f58e5fcef8a12d "NFSd: set nfsd_serv to NULL
after service destruction" which includes:
@@ -332,6 +330,7 @@ static int nfsd_get_default_max_blksize(void)
int nfsd_create_serv(void)
{
int error;
+ struct net *net = current->nsproxy->net_ns;
WARN_ON(!mutex_is_locked(&nfsd_mutex));
if (nfsd_serv) {
Am I missing some later patch?
--b.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/6] nfsd: pass net to nfsd_create_serv()
2012-12-07 16:52 ` J. Bruce Fields
@ 2012-12-10 8:25 ` Stanislav Kinsbursky
2012-12-10 9:16 ` [Devel] " Stanislav Kinsbursky
0 siblings, 1 reply; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-10 8:25 UTC (permalink / raw)
To: J. Bruce Fields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
07.12.2012 20:52, J. Bruce Fields пишет:
> On Tue, Dec 04, 2012 at 04:50:16PM +0300, Stanislav Kinsbursky wrote:
>> diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
>> index 21cba3d..6448391 100644
>> --- a/fs/nfsd/nfssvc.c
>> +++ b/fs/nfsd/nfssvc.c
>> @@ -334,10 +334,9 @@ static int nfsd_get_default_max_blksize(void)
>> return ret;
>> }
>>
>> -int nfsd_create_serv(void)
>> +int nfsd_create_serv(struct net *net)
>> {
>> int error;
>> - struct net *net = &init_net;
>
> What does this apply to? Since 3.6-rc1 we have
> 57c8b13e3cd0f94944c9691ce7f58e5fcef8a12d "NFSd: set nfsd_serv to NULL
> after service destruction" which includes:
>
> @@ -332,6 +330,7 @@ static int nfsd_get_default_max_blksize(void)
> int nfsd_create_serv(void)
> {
> int error;
> + struct net *net = current->nsproxy->net_ns;
>
> WARN_ON(!mutex_is_locked(&nfsd_mutex));
> if (nfsd_serv) {
>
> Am I missing some later patch?
>
Maybe I'm missing something.
My tree is based on yours branch "for-3.8".
Doe I need to rebase?
> --b.
>
--
Best regards,
Stanislav Kinsbursky
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Devel] [PATCH 3/6] nfsd: pass net to nfsd_create_serv()
2012-12-10 8:25 ` Stanislav Kinsbursky
@ 2012-12-10 9:16 ` Stanislav Kinsbursky
2012-12-10 12:34 ` J. Bruce Fields
0 siblings, 1 reply; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-10 9:16 UTC (permalink / raw)
To: J. Bruce Fields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
10.12.2012 12:25, Stanislav Kinsbursky пишет:
> 07.12.2012 20:52, J. Bruce Fields пишет:
>> On Tue, Dec 04, 2012 at 04:50:16PM +0300, Stanislav Kinsbursky wrote:
>>> diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
>>> index 21cba3d..6448391 100644
>>> --- a/fs/nfsd/nfssvc.c
>>> +++ b/fs/nfsd/nfssvc.c
>>> @@ -334,10 +334,9 @@ static int nfsd_get_default_max_blksize(void)
>>> return ret;
>>> }
>>>
>>> -int nfsd_create_serv(void)
>>> +int nfsd_create_serv(struct net *net)
>>> {
>>> int error;
>>> - struct net *net = &init_net;
>>
>> What does this apply to? Since 3.6-rc1 we have
>> 57c8b13e3cd0f94944c9691ce7f58e5fcef8a12d "NFSd: set nfsd_serv to NULL
>> after service destruction" which includes:
>>
>> @@ -332,6 +330,7 @@ static int nfsd_get_default_max_blksize(void)
>> int nfsd_create_serv(void)
>> {
>> int error;
>> + struct net *net = current->nsproxy->net_ns;
>>
>> WARN_ON(!mutex_is_locked(&nfsd_mutex));
>> if (nfsd_serv) {
>>
>> Am I missing some later patch?
>>
>
> Maybe I'm missing something.
> My tree is based on yours branch "for-3.8".
> Doe I need to rebase?
>
My bad, sorry.
I forgot to send one patch in this series.
>> --b.
>>
>
>
--
Best regards,
Stanislav Kinsbursky
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Devel] [PATCH 3/6] nfsd: pass net to nfsd_create_serv()
2012-12-10 9:16 ` [Devel] " Stanislav Kinsbursky
@ 2012-12-10 12:34 ` J. Bruce Fields
0 siblings, 0 replies; 12+ messages in thread
From: J. Bruce Fields @ 2012-12-10 12:34 UTC (permalink / raw)
To: Stanislav Kinsbursky; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
On Mon, Dec 10, 2012 at 01:16:57PM +0400, Stanislav Kinsbursky wrote:
> 10.12.2012 12:25, Stanislav Kinsbursky пишет:
> >07.12.2012 20:52, J. Bruce Fields пишет:
> >>On Tue, Dec 04, 2012 at 04:50:16PM +0300, Stanislav Kinsbursky wrote:
> >>>diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
> >>>index 21cba3d..6448391 100644
> >>>--- a/fs/nfsd/nfssvc.c
> >>>+++ b/fs/nfsd/nfssvc.c
> >>>@@ -334,10 +334,9 @@ static int nfsd_get_default_max_blksize(void)
> >>> return ret;
> >>> }
> >>>
> >>>-int nfsd_create_serv(void)
> >>>+int nfsd_create_serv(struct net *net)
> >>> {
> >>> int error;
> >>>- struct net *net = &init_net;
> >>
> >>What does this apply to? Since 3.6-rc1 we have
> >>57c8b13e3cd0f94944c9691ce7f58e5fcef8a12d "NFSd: set nfsd_serv to NULL
> >>after service destruction" which includes:
> >>
> >>@@ -332,6 +330,7 @@ static int nfsd_get_default_max_blksize(void)
> >> int nfsd_create_serv(void)
> >> {
> >> int error;
> >>+ struct net *net = current->nsproxy->net_ns;
> >>
> >> WARN_ON(!mutex_is_locked(&nfsd_mutex));
> >> if (nfsd_serv) {
> >>
> >>Am I missing some later patch?
> >>
> >
> >Maybe I'm missing something.
> >My tree is based on yours branch "for-3.8".
> >Doe I need to rebase?
> >
>
> My bad, sorry.
> I forgot to send one patch in this series.
Thanks, discarding this series, applying the resent version.
--b.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 4/6] nfsd: pass net to nfsd_svc()
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
` (2 preceding siblings ...)
2012-12-04 13:50 ` [PATCH 3/6] nfsd: pass net to nfsd_create_serv() Stanislav Kinsbursky
@ 2012-12-04 13:50 ` Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 5/6] nfsd: pass net to nfsd_set_nrthreads() Stanislav Kinsbursky
` (2 subsequent siblings)
6 siblings, 0 replies; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-04 13:50 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Precursor patch. Hard-coded "init_net" will be replaced by proper one in
future.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
---
fs/nfsd/nfsctl.c | 4 +++-
fs/nfsd/nfsd.h | 2 +-
fs/nfsd/nfssvc.c | 3 +--
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c
index ae1d143..68e229c 100644
--- a/fs/nfsd/nfsctl.c
+++ b/fs/nfsd/nfsctl.c
@@ -396,6 +396,8 @@ static ssize_t write_threads(struct file *file, char *buf, size_t size)
{
char *mesg = buf;
int rv;
+ struct net *net = &init_net;
+
if (size > 0) {
int newthreads;
rv = get_int(&mesg, &newthreads);
@@ -403,7 +405,7 @@ static ssize_t write_threads(struct file *file, char *buf, size_t size)
return rv;
if (newthreads < 0)
return -EINVAL;
- rv = nfsd_svc(newthreads);
+ rv = nfsd_svc(newthreads, net);
if (rv < 0)
return rv;
} else
diff --git a/fs/nfsd/nfsd.h b/fs/nfsd/nfsd.h
index acddf71..8226c1b 100644
--- a/fs/nfsd/nfsd.h
+++ b/fs/nfsd/nfsd.h
@@ -65,7 +65,7 @@ extern const struct seq_operations nfs_exports_op;
/*
* Function prototypes.
*/
-int nfsd_svc(int nrservs);
+int nfsd_svc(int nrservs, struct net *net);
int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp);
int nfsd_nrthreads(void);
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
index 6448391..f199b53 100644
--- a/fs/nfsd/nfssvc.c
+++ b/fs/nfsd/nfssvc.c
@@ -442,11 +442,10 @@ int nfsd_set_nrthreads(int n, int *nthreads)
* this is the first time nrservs is nonzero.
*/
int
-nfsd_svc(int nrservs)
+nfsd_svc(int nrservs, struct net *net)
{
int error;
bool nfsd_up_before;
- struct net *net = &init_net;
mutex_lock(&nfsd_mutex);
dprintk("nfsd: creating service\n");
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 5/6] nfsd: pass net to nfsd_set_nrthreads()
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
` (3 preceding siblings ...)
2012-12-04 13:50 ` [PATCH 4/6] nfsd: pass net to nfsd_svc() Stanislav Kinsbursky
@ 2012-12-04 13:50 ` Stanislav Kinsbursky
2012-12-04 13:50 ` [PATCH 6/6] nfsd: pass net to __write_ports() and down Stanislav Kinsbursky
2012-12-10 9:18 ` [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
6 siblings, 0 replies; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-04 13:50 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Precursor patch. Hard-coded "init_net" will be replaced by proper one in
future.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
---
fs/nfsd/nfsctl.c | 3 ++-
fs/nfsd/nfsd.h | 2 +-
fs/nfsd/nfssvc.c | 3 +--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c
index 68e229c..58f0ae4 100644
--- a/fs/nfsd/nfsctl.c
+++ b/fs/nfsd/nfsctl.c
@@ -447,6 +447,7 @@ static ssize_t write_pool_threads(struct file *file, char *buf, size_t size)
int len;
int npools;
int *nthreads;
+ struct net *net = &init_net;
mutex_lock(&nfsd_mutex);
npools = nfsd_nrpools();
@@ -477,7 +478,7 @@ static ssize_t write_pool_threads(struct file *file, char *buf, size_t size)
if (nthreads[i] < 0)
goto out_free;
}
- rv = nfsd_set_nrthreads(i, nthreads);
+ rv = nfsd_set_nrthreads(i, nthreads, net);
if (rv)
goto out_free;
}
diff --git a/fs/nfsd/nfsd.h b/fs/nfsd/nfsd.h
index 8226c1b..18f9996 100644
--- a/fs/nfsd/nfsd.h
+++ b/fs/nfsd/nfsd.h
@@ -71,7 +71,7 @@ int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp);
int nfsd_nrthreads(void);
int nfsd_nrpools(void);
int nfsd_get_nrthreads(int n, int *);
-int nfsd_set_nrthreads(int n, int *);
+int nfsd_set_nrthreads(int n, int *, struct net *);
int nfsd_pool_stats_open(struct inode *, struct file *);
int nfsd_pool_stats_release(struct inode *, struct file *);
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
index f199b53..b144658 100644
--- a/fs/nfsd/nfssvc.c
+++ b/fs/nfsd/nfssvc.c
@@ -382,12 +382,11 @@ int nfsd_get_nrthreads(int n, int *nthreads)
return 0;
}
-int nfsd_set_nrthreads(int n, int *nthreads)
+int nfsd_set_nrthreads(int n, int *nthreads, struct net *net)
{
int i = 0;
int tot = 0;
int err = 0;
- struct net *net = &init_net;
WARN_ON(!mutex_is_locked(&nfsd_mutex));
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 6/6] nfsd: pass net to __write_ports() and down
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
` (4 preceding siblings ...)
2012-12-04 13:50 ` [PATCH 5/6] nfsd: pass net to nfsd_set_nrthreads() Stanislav Kinsbursky
@ 2012-12-04 13:50 ` Stanislav Kinsbursky
2012-12-10 9:18 ` [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
6 siblings, 0 replies; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-04 13:50 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Precursor patch. Hard-coded "init_net" will be replaced by proper one in
future.
Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
---
fs/nfsd/nfsctl.c | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c
index 58f0ae4..8536100 100644
--- a/fs/nfsd/nfsctl.c
+++ b/fs/nfsd/nfsctl.c
@@ -657,11 +657,10 @@ static ssize_t __write_ports_names(char *buf)
* a socket of a supported family/protocol, and we use it as an
* nfsd listener.
*/
-static ssize_t __write_ports_addfd(char *buf)
+static ssize_t __write_ports_addfd(char *buf, struct net *net)
{
char *mesg = buf;
int fd, err;
- struct net *net = &init_net;
err = get_int(&mesg, &fd);
if (err != 0 || fd < 0)
@@ -686,12 +685,11 @@ static ssize_t __write_ports_addfd(char *buf)
* A transport listener is added by writing it's transport name and
* a port number.
*/
-static ssize_t __write_ports_addxprt(char *buf)
+static ssize_t __write_ports_addxprt(char *buf, struct net *net)
{
char transport[16];
struct svc_xprt *xprt;
int port, err;
- struct net *net = &init_net;
if (sscanf(buf, "%15s %5u", transport, &port) != 2)
return -EINVAL;
@@ -727,16 +725,17 @@ out_err:
return err;
}
-static ssize_t __write_ports(struct file *file, char *buf, size_t size)
+static ssize_t __write_ports(struct file *file, char *buf, size_t size,
+ struct net *net)
{
if (size == 0)
return __write_ports_names(buf);
if (isdigit(buf[0]))
- return __write_ports_addfd(buf);
+ return __write_ports_addfd(buf, net);
if (isalpha(buf[0]))
- return __write_ports_addxprt(buf);
+ return __write_ports_addxprt(buf, net);
return -EINVAL;
}
@@ -787,9 +786,10 @@ static ssize_t __write_ports(struct file *file, char *buf, size_t size)
static ssize_t write_ports(struct file *file, char *buf, size_t size)
{
ssize_t rv;
+ struct net *net = &init_net;
mutex_lock(&nfsd_mutex);
- rv = __write_ports(file, buf, size);
+ rv = __write_ports(file, buf, size, net);
mutex_unlock(&nfsd_mutex);
return rv;
}
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 0/6] nfsd: cleanup "init_net" references
2012-12-04 13:50 [PATCH 0/6] nfsd: cleanup "init_net" references Stanislav Kinsbursky
` (5 preceding siblings ...)
2012-12-04 13:50 ` [PATCH 6/6] nfsd: pass net to __write_ports() and down Stanislav Kinsbursky
@ 2012-12-10 9:18 ` Stanislav Kinsbursky
6 siblings, 0 replies; 12+ messages in thread
From: Stanislav Kinsbursky @ 2012-12-10 9:18 UTC (permalink / raw)
To: bfields; +Cc: linux-nfs, Trond.Myklebust, linux-kernel, devel
Drop this series, please.
--
Best regards,
Stanislav Kinsbursky
^ permalink raw reply [flat|nested] 12+ messages in thread