I have a 4 Node Gluster setup (Redhat 7), deployed NFS ganesha (V7-dev.4-0-g8ae799) on all node with 1 MDS & 3 DS. I am running nfstest_pnfs test suite which do basic compliance test (https://wiki.linux-nfs.org/wiki/index.php/NFStest). For read_write tests it performs 3 stages 1. Verify traffic for file using pNFS - READ 2. Verify traffic for second file using pNFS within the same mount - READ 3. Verify traffic for first file opened again using pNFS within the same mount - WRITE During stage 3 test expects below things which are getting failed. 1. LAYOUTGET stateid should be the previous LAYOUTGET stateid 2. GETDEVICEINFO should not be sent for the same file 3. EXCHANGE_ID should not be sent to DS(0) 4. CREATE_SESSION should not be sent to DS(0) 5. RECLAIM_COMPLETE should not be sent to DS(0) 6. LAYOUTRETURN should be sent to MDS, 1 call missing 7. LAYOUTRETURN should use the layout stateid 8. DESTROY_SESSION should be sent to DS(0) on umount Form packet capture we could see the sequence of events … For failure 1-5 Test Create/Open file test_pnfs_*_f_004 and does a get layout ---> Server returns Device ID 1 (lets assume 1), test1 runs bunch of tests and completes it and does a layout return and destroy session and destroy client ID. Test → Open same file test_pnfs_*_f_004 and does a get layout ---> Server returns Device ID 2 ---> This is making the nfstest_pnfs upset. For failure 6-8 Test1 completes the test and does a close session ID and as part of close session id it is also sending layout return and destroy session. Test2 completes the test and does a close session ID and as part of close session id here also it is sending layout return and destroy session. Now Test3 when it completes the tests it is expecting 3 LAYOUT RETURN while test1 and test2 have already sent. Did any one observed this behaviour? If yes, how to resolve same?