[PATCH pynfs v2 00/16] prep for flex file layout server

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

 



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)

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