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@xxxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxx> >> --- >> 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 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html