nfs41: pass iomode through layoutreturn args
So that it is possible to return a specific iomode layouts. Signed-off-by: Peng Tao <tao.peng@primarydata.com> Signed-off-by: Tom Haynes <Thomas.Haynes@primarydata.com>
This commit is contained in:
Родитель
aabff4ddca
Коммит
4579d6b897
|
@ -2012,7 +2012,7 @@ encode_layoutreturn(struct xdr_stream *xdr,
|
|||
p = reserve_space(xdr, 16);
|
||||
*p++ = cpu_to_be32(0); /* reclaim. always 0 for now */
|
||||
*p++ = cpu_to_be32(args->layout_type);
|
||||
*p++ = cpu_to_be32(IOMODE_ANY);
|
||||
*p++ = cpu_to_be32(args->iomode);
|
||||
*p = cpu_to_be32(RETURN_FILE);
|
||||
p = reserve_space(xdr, 16);
|
||||
p = xdr_encode_hyper(p, 0);
|
||||
|
|
|
@ -914,6 +914,7 @@ _pnfs_return_layout(struct inode *ino)
|
|||
lrp->args.stateid = stateid;
|
||||
lrp->args.layout_type = NFS_SERVER(ino)->pnfs_curr_ld->id;
|
||||
lrp->args.inode = ino;
|
||||
lrp->args.iomode = IOMODE_ANY;
|
||||
lrp->args.layout = lo;
|
||||
lrp->clp = NFS_SERVER(ino)->nfs_client;
|
||||
lrp->cred = lo->plh_lc_cred;
|
||||
|
|
|
@ -293,6 +293,7 @@ struct nfs4_layoutreturn_args {
|
|||
struct nfs4_sequence_args seq_args;
|
||||
struct pnfs_layout_hdr *layout;
|
||||
struct inode *inode;
|
||||
enum pnfs_iomode iomode;
|
||||
nfs4_stateid stateid;
|
||||
__u32 layout_type;
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче