[PATH v4 0/3] nfsd41: current state id processing

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

 



From: Tigran Mkrtchyan <kofemann@xxxxxxxxx>


Yet another update (v4) of current stateid handling

difference with v3:

Patches re-organized to only add functionality, e.g. there
are no patches fixing other patches. Operation flags are
not used any more. Existence of a corresponding function
pointer is enough.


Let me know if you want to see updates less often.

Tigran.

currently tested to work in a single compound:

 OPEN+CLOSE
 LOCK+WRITE+LOCKU+CLOSE

On the way (not tested yet):
 OPEN+LAYOUTGET

TODO:
 dispose current stateid on operations which provide CFH, but do not provide stateid.

Internals:
 1. struct nfsd4_compound_state contains pointer to current stateid
 2. during compound processing before operation execution current stateid copied into
  operations stateid if it's equal to corresponding value ( 0, 1).
 3. after operation execution current stateid changed to:
    a) point to stateid of last operation
    or
    b) point to NULL, if operation is marked to do so.

Probably all patches have to be squashed into a single one before merged
as none of the changes makes sense without others.

Tigran.


Tigran Mkrtchyan (3):
  nfsd41: handle current stateid in open and close
  nfsd41: handle current stateid on lock and locku
  nfsd41: consume current stateid on read and write

 fs/nfsd/current_stateid.h |   22 +++++++++++++++
 fs/nfsd/nfs4proc.c        |   39 +++++++++++++++++++++++---
 fs/nfsd/nfs4state.c       |   66 +++++++++++++++++++++++++++++++++++++++++++++
 fs/nfsd/xdr4.h            |    1 +
 4 files changed, 123 insertions(+), 5 deletions(-)
 create mode 100644 fs/nfsd/current_stateid.h

-- 
1.7.7.4

--
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