public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] nfs41: return correct errors on callback replays version 3
@ 2010-01-14 22:45 andros
  2010-01-14 22:45 ` [PATCH 1/7] nfs41: fix wrong error on callback header xdr overflow andros
  0 siblings, 1 reply; 9+ messages in thread
From: andros @ 2010-01-14 22:45 UTC (permalink / raw)
  To: trond.myklebust; +Cc: linux-nfs


nfs41: return correct errors on callback replays version 3

Responded to Tronds comments, fixed bugs in cb_recall_slot, and
resize slot table on session reset.

The first three patches clean up callback processing
0001-nfs41-fix-wrong-error-on-callback-header-xdr-overflo.patch
0002-nfs41-directly-encode-back-channel-error.patch
0003-nfs41-remove-uneeded-checks-in-callback-processing.patch

These next two implement correct error returns for v4.1 callback replays.
Since our back channel has a ca_maxrequestsize_cached = 0, a replay with
cachethis set to true results in a NFS4ERR_TOO_BIG_TO_CACHE error.
This code is set up to do a real DRC.
A replay with cachethis set to false returns a NFS4ERR_RETRY_UNCACHED_REP
error.
0004-nfs41-prepare-for-back-channel-drc.patch
0005-nfs41-back-channel-drc-minimal-implementation.patch

ADDED:
0006-nfs41-implement-cb_recall_slot.patch
The fore channel session is drained, then the new highest_slot is set.

0007-nfs41-resize-slot-table-in-reset.patch
The slot table size is renegotiated on session reset.

TODO: The callback code currently returns NFS4ERR_RESOURCE on all xdr
overflows. This is correct for v4.0, incorrect for v4.1.

Testing:

Modified nfsv4.1 pynfs server tested cb_recall replays with the cb_sequence
cachethis set to False and to True.

Modified nfs4.1 pyNFS server sends CB_RECALL_SLOT call during the Connectathon
basic big file test which uses all available slots.

Connectathon tests pass.

-->Andy



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2010-01-20 20:39 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-14 22:45 [PATCH 0/7] nfs41: return correct errors on callback replays version 3 andros
2010-01-14 22:45 ` [PATCH 1/7] nfs41: fix wrong error on callback header xdr overflow andros
2010-01-14 22:45   ` [PATCH 2/7] nfs41: directly encode back channel error andros
2010-01-14 22:45     ` [PATCH 3/7] nfs41: remove uneeded checks in callback processing andros
2010-01-14 22:45       ` [PATCH 4/7] nfs41: prepare for back channel drc andros
2010-01-14 22:45         ` [PATCH 5/7] nfs41: back channel drc minimal implementation andros
2010-01-14 22:45           ` [PATCH 6/7] nfs41: implement cb_recall_slot andros
2010-01-14 22:45             ` [PATCH 7/7] nfs41: resize slot table in reset andros
2010-01-20 20:38             ` [PATCH 6/7] nfs41: implement cb_recall_slot Trond Myklebust

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox