* [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.