.cred = ctx->cred,
.args = {
.fh = NFS_FH(inode),
- .lockowner = ctx->lockowner,
- .state = ctx->state,
+ .context = ctx,
},
.res = {
.fattr = &rdata.fattr,
.cred = ctx->cred,
.args = {
.fh = NFS_FH(inode),
- .lockowner = ctx->lockowner,
- .state = ctx->state,
+ .context = ctx,
},
.res = {
.fattr = &wdata.fattr,
return 0;
}
-static void encode_stateid(struct xdr_stream *xdr, struct nfs4_state *state, fl_owner_t lockowner)
+static void encode_stateid(struct xdr_stream *xdr, const struct nfs_open_context *ctx)
{
extern nfs4_stateid zero_stateid;
nfs4_stateid stateid;
uint32_t *p;
RESERVE_SPACE(16);
- if (state != NULL) {
- nfs4_copy_stateid(&stateid, state, lockowner);
+ if (ctx->state != NULL) {
+ nfs4_copy_stateid(&stateid, ctx->state, ctx->lockowner);
WRITEMEM(stateid.data, sizeof(stateid.data));
} else
WRITEMEM(zero_stateid.data, sizeof(zero_stateid.data));
RESERVE_SPACE(4);
WRITE32(OP_READ);
- encode_stateid(xdr, args->state, args->lockowner);
+ encode_stateid(xdr, args->context);
RESERVE_SPACE(12);
WRITE64(args->offset);
RESERVE_SPACE(4);
WRITE32(OP_WRITE);
- encode_stateid(xdr, args->state, args->lockowner);
+ encode_stateid(xdr, args->context);
RESERVE_SPACE(16);
WRITE64(args->offset);
rdata->inode = inode;
INIT_LIST_HEAD(&rdata->pages);
rdata->args.fh = NFS_FH(inode);
- rdata->args.lockowner = ctx->lockowner;
- rdata->args.state = ctx->state;
+ rdata->args.context = ctx;
rdata->args.pages = &page;
rdata->args.pgbase = 0UL;
rdata->args.count = rsize;
data->args.pgbase = req->wb_pgbase + offset;
data->args.pages = data->pagevec;
data->args.count = count;
- data->args.lockowner = req->wb_context->lockowner;
- data->args.state = req->wb_context->state;
+ data->args.context = req->wb_context;
data->res.fattr = &data->fattr;
data->res.count = count;
wdata->cred = ctx->cred;
wdata->inode = inode;
wdata->args.fh = NFS_FH(inode);
- wdata->args.lockowner = ctx->lockowner;
- wdata->args.state = ctx->state;
+ wdata->args.context = ctx;
wdata->args.pages = &page;
wdata->args.stable = NFS_FILE_SYNC;
wdata->args.pgbase = offset;
data->args.pgbase = req->wb_pgbase + offset;
data->args.pages = data->pagevec;
data->args.count = count;
- data->args.lockowner = req->wb_context->lockowner;
- data->args.state = req->wb_context->state;
+ data->args.context = req->wb_context;
data->res.fattr = &data->fattr;
data->res.count = count;
struct nfs_readargs {
struct nfs_fh * fh;
- fl_owner_t lockowner;
- struct nfs4_state * state;
+ struct nfs_open_context *context;
__u64 offset;
__u32 count;
unsigned int pgbase;
struct nfs_writeargs {
struct nfs_fh * fh;
- fl_owner_t lockowner;
- struct nfs4_state * state;
+ struct nfs_open_context *context;
__u64 offset;
__u32 count;
enum nfs3_stable_how stable;