These three patches are intend to be merged into the nfs localio patch series. The first two should be squashed into existing patches as mentioned in the commit description. The first is a stand alone patch which cleans up some ugliness that the current rpcsvc infrastructure requires. As mentioned in the first patch, a small rearranged of patches is required for each individual patch to compile. I would like to suggest changes to the CONFIG options too - I haven't provided a patch for that. There should be just one config option: CONFIG_NFS_LOCALIO. There is no point enabling for client without server or server without client as in either configuration nothing useful can be achieved. There is also no gain in enabling only for v3 or v4 and not both (unless I've missed something...) Despite Jeff's generally sensible suggestion, I'd like the CONFIG option to be added earliy so that we can compile-test each individual commit. If that would mean some intermediate commit might be problematic then I would rather the localio_enabled module parameter were forced to 'false' until it was safe to turn it on. I note that the server uses uuid_t while the client doesn't. I might have made that worse... We should probably be consisent. I have only tested very lightly - treat as a base for further work more than as a fully polished solution. Thanks, NeilBrown [PATCH 1/3] NFS: Simplify Client NFS_LOCALIO_PROGRAM support [PATCH 2/3] NFSD: Simplify server NFS_LOCALIO_PROGRAM support [PATCH 3/3] SUNRPC: replace program list with program array