Re: [PATH v4 3/3] nfsd41: consume current stateid on read and write

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Dec 13, 2011 at 9:11 AM, Benny Halevy <bhalevy@xxxxxxxxxx> wrote:
> I think that this patch can be squashed with lock/locku and
> all the other operations that use a similar, trivial
> get/set mechanism as the change is pretty mechanical.
>

Most of the changes now will be adding corresponding setters and getters.
The main work now is to write good set of tests.

Tigran.

> Benny
>
> On 2011-12-12 23:00, Tigran Mkrtchyan wrote:
>> From: Tigran Mkrtchyan <kofemann@xxxxxxxxx>
>>
>>
>> Signed-off-by: Tigran Mkrtchyan <kofemann@xxxxxxxxx>
>> ---
>>  fs/nfsd/current_stateid.h |    2 ++
>>  fs/nfsd/nfs4proc.c        |    2 ++
>>  fs/nfsd/nfs4state.c       |   12 ++++++++++++
>>  3 files changed, 16 insertions(+), 0 deletions(-)
>>
>> diff --git a/fs/nfsd/current_stateid.h b/fs/nfsd/current_stateid.h
>> index 21550b6..6e54d19 100644
>> --- a/fs/nfsd/current_stateid.h
>> +++ b/fs/nfsd/current_stateid.h
>> @@ -16,5 +16,7 @@ extern void nfsd4_set_closestateid(struct nfsd4_compound_state *, struct nfsd4_c
>>   */
>>  extern void nfsd4_get_closestateid(struct nfsd4_compound_state *, struct nfsd4_close *);
>>  extern void nfsd4_get_lockustateid(struct nfsd4_compound_state *, struct nfsd4_locku *);
>> +extern void nfsd4_get_readstateid(struct nfsd4_compound_state *, struct nfsd4_read *);
>> +extern void nfsd4_get_writestateid(struct nfsd4_compound_state *, struct nfsd4_write *);
>>
>>  #endif   /* _NFSD4_CURRENT_STATE_H */
>> diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
>> index 90c532b..1d2c8d5 100644
>> --- a/fs/nfsd/nfs4proc.c
>> +++ b/fs/nfsd/nfs4proc.c
>> @@ -1550,6 +1550,7 @@ static struct nfsd4_operation nfsd4_ops[] = {
>>               .op_flags = OP_MODIFIES_SOMETHING,
>>               .op_name = "OP_READ",
>>               .op_rsize_bop = (nfsd4op_rsize)nfsd4_read_rsize,
>> +             .op_get_currentstateid = (stateid_getter)nfsd4_get_readstateid,
>>       },
>>       [OP_READDIR] = {
>>               .op_func = (nfsd4op_func)nfsd4_readdir,
>> @@ -1628,6 +1629,7 @@ static struct nfsd4_operation nfsd4_ops[] = {
>>               .op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
>>               .op_name = "OP_WRITE",
>>               .op_rsize_bop = (nfsd4op_rsize)nfsd4_write_rsize,
>> +             .op_get_currentstateid = (stateid_getter)nfsd4_get_writestateid,
>>       },
>>       [OP_RELEASE_LOCKOWNER] = {
>>               .op_func = (nfsd4op_func)nfsd4_release_lockowner,
>> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
>> index 58410b2..50d7ad0 100644
>> --- a/fs/nfsd/nfs4state.c
>> +++ b/fs/nfsd/nfs4state.c
>> @@ -4599,3 +4599,15 @@ nfsd4_get_lockustateid(struct nfsd4_compound_state *cstate, struct nfsd4_locku *
>>  {
>>       get_stateid(cstate, &locku->lu_stateid);
>>  }
>> +
>> +void
>> +nfsd4_get_readstateid(struct nfsd4_compound_state *cstate, struct nfsd4_read *read)
>> +{
>> +     get_stateid(cstate, &read->rd_stateid);
>> +}
>> +
>> +void
>> +nfsd4_get_writestateid(struct nfsd4_compound_state *cstate, struct nfsd4_write *write)
>> +{
>> +     get_stateid(cstate, &write->wr_stateid);
>> +}
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux