Branch next Tag:V5-dev.4 NOTE: Major update to LRU that should solve many of the unbounded memory use issues due to inability to recycle mdcache entries. Merge Highlights * Ceph aysnc/non-blocking (dormant feature waiting for ceph changes) * fsal_fd rework to utilize a locking mechanism that can be held across threads * Global fd closing removed from MDCACHE LRU into its own LRU * LRU revamp to remove long term references from the LRU * Clean up use of obj_lock now that it isn't used to protect global fd * Allow read and write FSAL calls to resume to make it possible to avoid calls into the filesystem on callbacks from the filesystem. * Some other cleanup related to all the above * COMMIT: fsal_reopen_obj() called with FSAL_O_ANY to try avoid opening globalfd * Fix Failed to carry the correct error code when call ceph_fsal_setattr2() Signed-off-by: Frank S. Filz <ffilzlnx@mindspring.com> Contents: 24e45d147 Frank S. Filz V5-dev.4 ebfd06bf9 Frank S. Filz FSAL: Remove old fsal_fd management 2cd524697 Frank S. Filz FSAL: Remove seek method 7b1ff6e00 Frank S. Filz 9P: Check file open mode for locks 9627626d8 Frank S. Filz nfs4_op_write.c - fix annoying typo 83fb4ed15 Frank S. Filz FSAL_MEM: Convert to new fsal_fd handling and new async I/O f2f6c280a Frank S. Filz FSAL_MEM: Remove non-functional lock_op2 ac7bcdf73 Frank S. Filz MDCACHE: export roots aren't in LRU anymore 8e6637ecb Frank S. Filz MDCACHE: Don't need DQ_SAFE any more fb7bfe9c6 Frank S. Filz MDCACHE: Strip out old fd management aa00d4136 Frank S. Filz Use long term references at the protocol layer 7a62f317e Frank S. Filz MDCACHE: Add long term obj handle (ultimately mdcache) references c0ae4b4dd Frank S. Filz MDCACHE: Clean up refcounting and LRU 8ae1c343b Frank S. Filz FSAL_CEPH: Implement async a1ba06f18 Frank S. Filz Protocols: Add support for read2 and write2 that ask for resume d6816609b Frank S. Filz MDCACHE: Add support for async FSAL subcall and supercall 310fee636 Frank S. Filz FSAL_GLUSTER - Convert to new fsal_fd management 5bf71d8ea Frank S. Filz FSAL_LIZARDFS - Convert to new fsal_fd management 9e458e166 Frank S. Filz FSAL_KVSFS: Use new fsal_fd management 31698f39d Frank S. Filz FSAL_GPFS: Use new fsal_fd management 065015da2 Frank S. Filz FSAL_RGW: Don't use old fsal_find_fd just do share stuff 7c2374e78 Frank S. Filz FSAL_CEPH: Use new fsal_fd management 9a8136292 Frank S. Filz FSAL_VFS: Use new fsal_fd management 70443fbe0 Frank S. Filz FSAL: Add global fd LRU to FSAL layer 138cb514c Frank S. Filz Synchonizing I/O and file open/close/reopen without holding rwlock 231a86975 Frank S. Filz Make FSAL_VFS compile first be0d8cacb Frank S. Filz Add atomic_add_unless and PTHREAD_MUTEX_decrement_XXX_t_and_lock 2fd7359c0 hnkboy Fix Failed to carry the correct error code when call ceph_fsal_setattr2() c2363dce8 Arnab Tah COMMIT: fsal_reopen_obj() called with FSAL_O_ANY to try avoid opening globalfd