All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] [fs/9p] Make access=client default in 9p2000.L protocol
@ 2011-01-27  6:55 Venkateswararao Jujjuri (JV)
  2011-01-27 14:28 ` Aneesh Kumar K. V
  0 siblings, 1 reply; 3+ messages in thread
From: Venkateswararao Jujjuri (JV) @ 2011-01-27  6:55 UTC (permalink / raw)
  To: v9fs-developer; +Cc: linux-fsdevel, Venkateswararao Jujjuri (JV)

Current code sets access=user as default for all protocol versions.
This patch chagnes it to "client" only for dotl.

User can always specify particular access mode with -o access= option.
No change there.

Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
---
 fs/9p/v9fs.c |   21 ++++++++++++---------
 1 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c
index 7823a7c..b9f6c34 100644
--- a/fs/9p/v9fs.c
+++ b/fs/9p/v9fs.c
@@ -263,19 +263,12 @@ struct p9_fid *v9fs_session_init(struct v9fs_session_info *v9ses,
 	list_add(&v9ses->slist, &v9fs_sessionlist);
 	spin_unlock(&v9fs_sessionlist_lock);
 
-	v9ses->flags = V9FS_ACCESS_USER;
 	strcpy(v9ses->uname, V9FS_DEFUSER);
 	strcpy(v9ses->aname, V9FS_DEFANAME);
 	v9ses->uid = ~0;
 	v9ses->dfltuid = V9FS_DEFUID;
 	v9ses->dfltgid = V9FS_DEFGID;
 
-	rc = v9fs_parse_options(v9ses, data);
-	if (rc < 0) {
-		retval = rc;
-		goto error;
-	}
-
 	v9ses->clnt = p9_client_create(dev_name, data);
 	if (IS_ERR(v9ses->clnt)) {
 		retval = PTR_ERR(v9ses->clnt);
@@ -284,10 +277,20 @@ struct p9_fid *v9fs_session_init(struct v9fs_session_info *v9ses,
 		goto error;
 	}
 
-	if (p9_is_proto_dotl(v9ses->clnt))
+	v9ses->flags = V9FS_ACCESS_USER;
+
+	if (p9_is_proto_dotl(v9ses->clnt)) {
+		v9ses->flags = V9FS_ACCESS_CLIENT;
 		v9ses->flags |= V9FS_PROTO_2000L;
-	else if (p9_is_proto_dotu(v9ses->clnt))
+	} else if (p9_is_proto_dotu(v9ses->clnt)) {
 		v9ses->flags |= V9FS_PROTO_2000U;
+	}
+
+	rc = v9fs_parse_options(v9ses, data);
+	if (rc < 0) {
+		retval = rc;
+		goto error;
+	}
 
 	v9ses->maxdata = v9ses->clnt->msize - P9_IOHDRSZ;
 
-- 
1.6.5.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] [fs/9p] Make access=client default in 9p2000.L protocol
  2011-01-27  6:55 [PATCH] [fs/9p] Make access=client default in 9p2000.L protocol Venkateswararao Jujjuri (JV)
@ 2011-01-27 14:28 ` Aneesh Kumar K. V
  2011-01-27 17:38   ` Venkateswararao Jujjuri (JV)
  0 siblings, 1 reply; 3+ messages in thread
From: Aneesh Kumar K. V @ 2011-01-27 14:28 UTC (permalink / raw)
  To: Venkateswararao Jujjuri (JV), v9fs-developer
  Cc: linux-fsdevel, Venkateswararao Jujjuri (JV)

On Wed, 26 Jan 2011 22:55:39 -0800, "Venkateswararao Jujjuri (JV)" <jvrao@linux.vnet.ibm.com> wrote:
> Current code sets access=user as default for all protocol versions.
> This patch chagnes it to "client" only for dotl.
> 
> User can always specify particular access mode with -o access= option.
> No change there.
> 
> Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
> ---
>  fs/9p/v9fs.c |   21 ++++++++++++---------
>  1 files changed, 12 insertions(+), 9 deletions(-)
> 
> diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c
> index 7823a7c..b9f6c34 100644
> --- a/fs/9p/v9fs.c
> +++ b/fs/9p/v9fs.c
> @@ -263,19 +263,12 @@ struct p9_fid *v9fs_session_init(struct v9fs_session_info *v9ses,
>  	list_add(&v9ses->slist, &v9fs_sessionlist);
>  	spin_unlock(&v9fs_sessionlist_lock);
> 
> -	v9ses->flags = V9FS_ACCESS_USER;
>  	strcpy(v9ses->uname, V9FS_DEFUSER);
>  	strcpy(v9ses->aname, V9FS_DEFANAME);
>  	v9ses->uid = ~0;
>  	v9ses->dfltuid = V9FS_DEFUID;
>  	v9ses->dfltgid = V9FS_DEFGID;
> 
> -	rc = v9fs_parse_options(v9ses, data);
> -	if (rc < 0) {
> -		retval = rc;
> -		goto error;
> -	}
> -

Now we do v9fs option parsing after client_create ? is that ok ?

>  	v9ses->clnt = p9_client_create(dev_name, data);
>  	if (IS_ERR(v9ses->clnt)) {
>  		retval = PTR_ERR(v9ses->clnt);
> @@ -284,10 +277,20 @@ struct p9_fid *v9fs_session_init(struct v9fs_session_info *v9ses,
>  		goto error;
>  	}
> 
> -	if (p9_is_proto_dotl(v9ses->clnt))
> +	v9ses->flags = V9FS_ACCESS_USER;
> +
> +	if (p9_is_proto_dotl(v9ses->clnt)) {
> +		v9ses->flags = V9FS_ACCESS_CLIENT;
>  		v9ses->flags |= V9FS_PROTO_2000L;
> -	else if (p9_is_proto_dotu(v9ses->clnt))
> +	} else if (p9_is_proto_dotu(v9ses->clnt)) {
>  		v9ses->flags |= V9FS_PROTO_2000U;
> +	}
> +
> +	rc = v9fs_parse_options(v9ses, data);
> +	if (rc < 0) {
> +		retval = rc;
> +		goto error;

Don't we need a p9_client_destroy there ?

> +	}
> 
>  	v9ses->maxdata = v9ses->clnt->msize - P9_IOHDRSZ;
> 

-aneesh

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] [fs/9p] Make access=client default in 9p2000.L protocol
  2011-01-27 14:28 ` Aneesh Kumar K. V
@ 2011-01-27 17:38   ` Venkateswararao Jujjuri (JV)
  0 siblings, 0 replies; 3+ messages in thread
From: Venkateswararao Jujjuri (JV) @ 2011-01-27 17:38 UTC (permalink / raw)
  To: Aneesh Kumar K. V; +Cc: v9fs-developer, linux-fsdevel

On 1/27/2011 6:28 AM, Aneesh Kumar K. V wrote:
> On Wed, 26 Jan 2011 22:55:39 -0800, "Venkateswararao Jujjuri (JV)" <jvrao@linux.vnet.ibm.com> wrote:
>> Current code sets access=user as default for all protocol versions.
>> This patch chagnes it to "client" only for dotl.
>>
>> User can always specify particular access mode with -o access= option.
>> No change there.
>>
>> Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
>> ---
>>  fs/9p/v9fs.c |   21 ++++++++++++---------
>>  1 files changed, 12 insertions(+), 9 deletions(-)
>>
>> diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c
>> index 7823a7c..b9f6c34 100644
>> --- a/fs/9p/v9fs.c
>> +++ b/fs/9p/v9fs.c
>> @@ -263,19 +263,12 @@ struct p9_fid *v9fs_session_init(struct v9fs_session_info *v9ses,
>>  	list_add(&v9ses->slist, &v9fs_sessionlist);
>>  	spin_unlock(&v9fs_sessionlist_lock);
>>
>> -	v9ses->flags = V9FS_ACCESS_USER;
>>  	strcpy(v9ses->uname, V9FS_DEFUSER);
>>  	strcpy(v9ses->aname, V9FS_DEFANAME);
>>  	v9ses->uid = ~0;
>>  	v9ses->dfltuid = V9FS_DEFUID;
>>  	v9ses->dfltgid = V9FS_DEFGID;
>>
>> -	rc = v9fs_parse_options(v9ses, data);
>> -	if (rc < 0) {
>> -		retval = rc;
>> -		goto error;
>> -	}
>> -
> 
> Now we do v9fs option parsing after client_create ? is that ok ?

Apparently yes. They parse the same buffer .. but no problem in switching
May be we can run more testing..but it did not appear to be a problem.
> 
>>  	v9ses->clnt = p9_client_create(dev_name, data);
>>  	if (IS_ERR(v9ses->clnt)) {
>>  		retval = PTR_ERR(v9ses->clnt);
>> @@ -284,10 +277,20 @@ struct p9_fid *v9fs_session_init(struct v9fs_session_info *v9ses,
>>  		goto error;
>>  	}
>>
>> -	if (p9_is_proto_dotl(v9ses->clnt))
>> +	v9ses->flags = V9FS_ACCESS_USER;
>> +
>> +	if (p9_is_proto_dotl(v9ses->clnt)) {
>> +		v9ses->flags = V9FS_ACCESS_CLIENT;
>>  		v9ses->flags |= V9FS_PROTO_2000L;
>> -	else if (p9_is_proto_dotu(v9ses->clnt))
>> +	} else if (p9_is_proto_dotu(v9ses->clnt)) {
>>  		v9ses->flags |= V9FS_PROTO_2000U;
>> +	}
>> +
>> +	rc = v9fs_parse_options(v9ses, data);
>> +	if (rc < 0) {
>> +		retval = rc;
>> +		goto error;
> 
> Don't we need a p9_client_destroy there ?

No. v9fs_mount() will take care of this.  v9fs_mount() calls session_init and
session_close
and those routines call client_create and client_destroy.

- JV
> 
>> +	}
>>
>>  	v9ses->maxdata = v9ses->clnt->msize - P9_IOHDRSZ;
>>
> 
> -aneesh



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-01-27 17:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-27  6:55 [PATCH] [fs/9p] Make access=client default in 9p2000.L protocol Venkateswararao Jujjuri (JV)
2011-01-27 14:28 ` Aneesh Kumar K. V
2011-01-27 17:38   ` Venkateswararao Jujjuri (JV)

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.