diff mbox

[3/6] nfsd: pass net to nfsd_create_serv()

Message ID 20121204135016.24504.74168.stgit@localhost.localdomain (mailing list archive)
State New, archived
Headers show

Commit Message

Stanislav Kinsbursky Dec. 4, 2012, 1:50 p.m. UTC
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(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

J. Bruce Fields Dec. 7, 2012, 4:52 p.m. UTC | #1
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.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Stanislav Kinsbursky Dec. 10, 2012, 8:25 a.m. UTC | #2
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.
>
Stanislav Kinsbursky Dec. 10, 2012, 9:16 a.m. UTC | #3
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.
>>
>
>
J. Bruce Fields Dec. 10, 2012, 12:34 p.m. UTC | #4
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.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

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;