On Sun, Jul 10, 2016 at 03:55:57PM -0400, Jeff Layton wrote: > From: Jeff Layton <jlayton@xxxxxxxxxxxxxxx> > > v3: > - use sort() from lib/sort.c to sort the list > > v2: > - rework Tigran's patch to preserve existing selection behaviour > - simplify layout driver selection by sorting the list > > This is v3 of the patchset. The main change is that this patch doesn't > use a hand-rolled bubble sort, but rather the heapsort library in > lib/sort.c. This is mostly for conciseness since the array sizes are > generally so small that it shouldn't make any perf difference. > > Note that this does mean that we need to keep track on the number of > elements in the array that the server sends, so there are a few > ancillary changes to deal with that as well. > > Only lightly tested by mounting a server that sends both flexfiles and > block layouts. The client successfully selected the block layout in most > cases, but if I blacklist blocklayoutdriver then it selects flexfiles > instead. > > I'm sending these together, but I'd expect Bruce to pick up the nfsd > patches and Trond or Anna to pick up the client-side ones. Patches still look fine to me. Feel free to add a Reviewed-by: J. Bruce Fields <bfields@xxxxxxxxxx> for the client-side patches. I'll take the server-side patch for 4.8 assuming no objections to this approach from the client side. --b. > > The nfsd patch is based on top of Tom's nfsd flexfile layout patches. > > Jeff Layton (3): > nfsd: allow nfsd to advertise multiple layout types > pnfs: track multiple layout types in fsinfo structure > pnfs: add a new mechanism to select a layout driver according to an > ordered list > > fs/nfs/client.c | 3 ++- > fs/nfs/nfs4proc.c | 3 ++- > fs/nfs/nfs4xdr.c | 40 +++++++++++++++-------------- > fs/nfs/pnfs.c | 67 ++++++++++++++++++++++++++++++++++++++++--------- > fs/nfs/pnfs.h | 5 ++-- > fs/nfsd/export.c | 4 +-- > fs/nfsd/export.h | 2 +- > fs/nfsd/nfs4layouts.c | 6 ++--- > fs/nfsd/nfs4proc.c | 4 +-- > fs/nfsd/nfs4xdr.c | 30 +++++++++++----------- > include/linux/nfs_xdr.h | 8 +++++- > 11 files changed, 112 insertions(+), 60 deletions(-) > > -- > 2.5.5 -- 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