From: Weston Andros Adamson <dros@primarydata.com>
To: bfields@fieldses.org
Cc: linux-nfs@vger.kernel.org, Weston Andros Adamson <dros@primarydata.com>
Subject: [PATCH pynfs v2 00/16] prep for flex file layout server
Date: Thu, 5 Jun 2014 09:55:28 -0400 [thread overview]
Message-ID: <1401976544-36374-1-git-send-email-dros@primarydata.com> (raw)
Changes in v2:
- moved "4.1 client: reclaim_complete after create_session" to
"dataserver: reclaim_complete after create_session" as the implicit
reclaim complete is needed in DS path, but not in all server tests.
- dropped "4.1 server: service RECLAIM_COMPLETE operations" as it's
unneeded.
- formatted these patches with -M flag so we can see moved files
.. and I pushed the changes to my ff_prep branch.
Thanks!
-dros
These patches are in preparation for the pynfs implementation of a flex
file layout server.
I already have patches for a working flex file server, but I figure those
should wait until the spec is complete ;)
I pushed these patches to my linux-nfs.org tree on branch 'ff_prep':
git://git.linux-nfs.org/projects/dros/pynfs.git
The prep includes:
- patches that enable pynfs mds using real v4.1 DSes (on the backend,
not usable from clients as there is no stateid sharing between mds and ds)
- fix several bugs in pnfs path
- move .x files to subdir 'xdrdef' - the nfs4.1 directory was getting crowded
and we're going to add several more .x files along with all of the
autogenerated files. Note this change touches server tests too.
- clean up the nfs4server's output - no longer print out EVERY part of EVERY
operation which was very efficient at hiding tracebacks and made pynfs
even slower. Old functionality is now switched on with -v flag. Also
added an in-between mode "-s" that prints a summary of whats going on.
- support for NFSv3 backend communication - this is not actually used yet,
but can be tested with file layout by always returning
NFS4ERR_LAYOUTUNAVAILABLE in layoutget and using DataServer3 class instead
of DataServer41
Weston Andros Adamson (16):
dataserver: reclaim_complete after create_session
dataserver: only catch connection error
4.1 server: avoid traceback in DS disconnect()
move .x files to subdir 'xdrdef'
4.1 client: remove unused imports
4.1 server: add -v flag & silence random output
4.1 server: add -s option to print summary of ops
dataserver: make generic interface to ops
dataserver: don't import * from nfs4 specific mods
4.1 server: move nfs4_ops.py to nfs_ops.py
add mntv3, portmapv2 and nfsv3 .x files
dataserver: separate generic and 4.1 code
4.1 server: add support for NFSv3 data servers
4.1 server: get rid of old op_getdeviceinfo
rpc: on socket error, close and mark pipe inactive
nfs3clnt: reconnect when sending on inactive pipe
nfs4.1/block.py | 8 +-
nfs4.1/client41tests/environment.py | 4 +-
nfs4.1/config.py | 8 +-
nfs4.1/dataserver.py | 308 ++++++++---
nfs4.1/fs.py | 38 +-
nfs4.1/nfs3client.py | 185 +++++++
nfs4.1/nfs4_ops.py | 61 ---
nfs4.1/nfs4client.py | 47 +-
nfs4.1/nfs4commoncode.py | 10 +-
nfs4.1/nfs4lib.py | 62 ++-
nfs4.1/nfs4server.py | 163 +++---
nfs4.1/nfs4state.py | 15 +-
nfs4.1/nfs_ops.py | 89 +++
nfs4.1/server41tests/environment.py | 4 +-
nfs4.1/server41tests/st_block.py | 4 +-
nfs4.1/server41tests/st_compound.py | 4 +-
nfs4.1/server41tests/st_create_session.py | 4 +-
nfs4.1/server41tests/st_current_stateid.py | 8 +-
nfs4.1/server41tests/st_debug.py | 4 +-
nfs4.1/server41tests/st_delegation.py | 4 +-
nfs4.1/server41tests/st_destroy_clientid.py | 2 +-
nfs4.1/server41tests/st_destroy_session.py | 4 +-
nfs4.1/server41tests/st_exchange_id.py | 4 +-
nfs4.1/server41tests/st_getdevicelist.py | 4 +-
nfs4.1/server41tests/st_lookup.py | 2 +-
nfs4.1/server41tests/st_lookupp.py | 2 +-
nfs4.1/server41tests/st_open.py | 8 +-
nfs4.1/server41tests/st_putfh.py | 2 +-
nfs4.1/server41tests/st_reboot.py | 4 +-
nfs4.1/server41tests/st_reclaim_complete.py | 2 +-
nfs4.1/server41tests/st_rename.py | 4 +-
nfs4.1/server41tests/st_secinfo.py | 4 +-
nfs4.1/server41tests/st_secinfo_no_name.py | 4 +-
nfs4.1/server41tests/st_sequence.py | 4 +-
nfs4.1/server41tests/st_trunking.py | 4 +-
nfs4.1/server41tests/st_verify.py | 2 +-
nfs4.1/server_exports.py | 7 +-
nfs4.1/setup.py | 33 +-
nfs4.1/testclient.py | 2 +-
nfs4.1/testserver.py | 2 +-
nfs4.1/xdrdef/__init__.py | 0
nfs4.1/xdrdef/mnt3.x | 68 +++
nfs4.1/xdrdef/nfs3.x | 818 ++++++++++++++++++++++++++++
nfs4.1/{ => xdrdef}/nfs4.x | 0
nfs4.1/{ => xdrdef}/nfs4.x.diff | 0
nfs4.1/{ => xdrdef}/pnfs_block.x | 0
nfs4.1/xdrdef/portmap.x | 51 ++
nfs4.1/{ => xdrdef}/sctrl.x | 0
rpc/rpc.py | 26 +-
49 files changed, 1704 insertions(+), 389 deletions(-)
create mode 100644 nfs4.1/nfs3client.py
delete mode 100644 nfs4.1/nfs4_ops.py
create mode 100644 nfs4.1/nfs_ops.py
create mode 100644 nfs4.1/xdrdef/__init__.py
create mode 100644 nfs4.1/xdrdef/mnt3.x
create mode 100644 nfs4.1/xdrdef/nfs3.x
rename nfs4.1/{ => xdrdef}/nfs4.x (100%)
rename nfs4.1/{ => xdrdef}/nfs4.x.diff (100%)
rename nfs4.1/{ => xdrdef}/pnfs_block.x (100%)
create mode 100644 nfs4.1/xdrdef/portmap.x
rename nfs4.1/{ => xdrdef}/sctrl.x (100%)
--
1.8.5.2 (Apple Git-48)
next reply other threads:[~2014-06-05 13:55 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-05 13:55 Weston Andros Adamson [this message]
2014-06-05 13:55 ` [PATCH pynfs v2 01/16] dataserver: reclaim_complete after create_session Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 02/16] dataserver: only catch connection error Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 03/16] 4.1 server: avoid traceback in DS disconnect() Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 04/16] move .x files to subdir 'xdrdef' Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 05/16] 4.1 client: remove unused imports Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 06/16] 4.1 server: add -v flag & silence random output Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 07/16] 4.1 server: add -s option to print summary of ops Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 08/16] dataserver: make generic interface to ops Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 09/16] dataserver: don't import * from nfs4 specific mods Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 10/16] 4.1 server: move nfs4_ops.py to nfs_ops.py Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 11/16] add mntv3, portmapv2 and nfsv3 .x files Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 12/16] dataserver: separate generic and 4.1 code Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 13/16] 4.1 server: add support for NFSv3 data servers Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 14/16] 4.1 server: get rid of old op_getdeviceinfo Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 15/16] rpc: on socket error, close and mark pipe inactive Weston Andros Adamson
2014-06-05 13:55 ` [PATCH pynfs v2 16/16] nfs3clnt: reconnect when sending on inactive pipe Weston Andros Adamson
2014-06-05 14:19 ` [PATCH pynfs v2 00/16] prep for flex file layout server J. Bruce Fields
2014-06-05 14:22 ` Weston Andros Adamson
2014-06-05 14:24 ` J. Bruce Fields
2014-06-09 21:25 ` J. Bruce Fields
2014-06-10 1:41 ` Weston Andros Adamson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1401976544-36374-1-git-send-email-dros@primarydata.com \
--to=dros@primarydata.com \
--cc=bfields@fieldses.org \
--cc=linux-nfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).