Commit be36e185 authored by Trond Myklebust's avatar Trond Myklebust

NFSv4: nfs4_open_recover_helper() must set share access

The share access mode is now specified as an argument in the nfs4_opendata,
and so nfs4_open_recover_helper() needs to call nfs4_map_atomic_open_share()
in order to set it.

Fixes: 6ae37339 ("NFSv4.1: Ask for no delegation on OPEN if using O_DIRECT")
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
parent 7a27eae3
...@@ -1552,6 +1552,9 @@ static int nfs4_open_recover_helper(struct nfs4_opendata *opendata, fmode_t fmod ...@@ -1552,6 +1552,9 @@ static int nfs4_open_recover_helper(struct nfs4_opendata *opendata, fmode_t fmod
opendata->o_arg.open_flags = 0; opendata->o_arg.open_flags = 0;
opendata->o_arg.fmode = fmode; opendata->o_arg.fmode = fmode;
opendata->o_arg.share_access = nfs4_map_atomic_open_share(
NFS_SB(opendata->dentry->d_sb),
fmode, 0);
memset(&opendata->o_res, 0, sizeof(opendata->o_res)); memset(&opendata->o_res, 0, sizeof(opendata->o_res));
memset(&opendata->c_res, 0, sizeof(opendata->c_res)); memset(&opendata->c_res, 0, sizeof(opendata->c_res));
nfs4_init_opendata_res(opendata); nfs4_init_opendata_res(opendata);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment