This patch set implements a shared RCU device ID cache servicing multiple mounts of a single layout type per meta data server (struct nfs_client). Device id's are referenced by layout segments which hold a pointer to the nfs4_deviceid struct. An hlist is used for the cache due to the large number of devices used by the object and block layout drivers. Note that nfs4_deviceid_hash() is the same as the NFSD opaque_hash function. Perhaps they should be shared. 0001-SQUASHME-pnfs_submit-generic-device-ID-cache.patch 0002-SQUASHME-pnfs_submit-fix-multiple-mount-set_pnfs_lay.patch 0003-SQUASHME-pnfs-submit-file-layout-driver-generic-devi.patch These patches apply to the 2.6.34-rc3 pnfs-submit branch. Testing: ------- CONFIG_NFS_V4_1 set: NFSv4.1/pNFS mounts: Connectathon tests pass against GFS2/pNFS with a single AUTH_SYS mount, a double AUTH_SYS mount, and an AUTH_SYS and AUTH_GSS/KRB5 mount (which creates two superblocks under a struct nfs_client and both share the device id cache). NFSv4.0 mount; Connectathon tests pass Did not test with multiple device ID's. I will create a mulitple device ID test with the pynfs file layout server. CONFIG_NFS_V4_1 not set: NFSv4.0 mount: Connectathon tests pass. -->Andy -- 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