sapling/eden/fs/inodes
Chad Austin 2dc2a16cf2 relax InodeTable locking
Summary:
This allows multiple inodes to update their metadata simultaneously
without contending on InodeTable's locks.

Reviewed By: simpkins

Differential Revision: D7885245

fbshipit-source-id: cc8ab6cd90b7424beec314a115852e08b64026ae
2018-05-18 15:21:16 -07:00
..
test relax InodeTable locking 2018-05-18 15:21:16 -07:00
CheckoutAction.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
CheckoutAction.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
CheckoutContext.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
CheckoutContext.h send FUSE invalidation requests in a separate thread 2018-03-27 11:23:42 -07:00
CMakeLists.txt add CMake build files 2018-04-30 14:37:46 -07:00
DeferredDiffEntry.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
DeferredDiffEntry.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
DiffContext.cpp add convenient operator literals for the various path piece types 2018-05-11 14:52:07 -07:00
DiffContext.h update diff code to use previously retrieved UserInfo 2018-02-08 19:36:03 -08:00
Differ.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
Differ.h update getScmStatus() to require the commit hash as an argument 2018-04-06 12:51:31 -07:00
EdenDispatcher.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
EdenDispatcher.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
EdenFileHandle.cpp folly::Unit{} -> folly::unit 2018-05-08 13:38:02 -07:00
EdenFileHandle.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
EdenMount.cpp add convenient operator literals for the various path piece types 2018-05-11 14:52:07 -07:00
EdenMount.h move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
FileInode.cpp fix bug incorrectly reporting a file as modified 2018-04-30 22:10:01 -07:00
FileInode.h give InodeBase a mode_t instead of dtype_t 2018-04-26 16:20:05 -07:00
InodeBase.cpp Fix replacing an empty directory with another directory 2018-05-11 14:52:07 -07:00
InodeBase.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
InodeDiffCallback.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
InodeError.cpp throw all errno exceptions as std::generic_category 2018-03-20 13:38:45 -07:00
InodeError.h throw all errno exceptions as std::generic_category 2018-03-20 13:38:45 -07:00
InodeMap.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
InodeMap.h avoid unnecessarily saving overlay state on unmount 2018-04-10 12:56:20 -07:00
InodeMetadata.h implement an InodeTable for storing persistent per-inode info decoupled from memory 2018-05-09 16:50:53 -07:00
InodePtr-defs.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
InodePtr.cpp fix opt build 2018-03-12 22:22:59 -07:00
InodePtr.h add explicit conversion from std::unique_ptr to InodePtr 2018-03-09 13:37:08 -08:00
InodePtrFwd.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
InodeTable.h relax InodeTable locking 2018-05-18 15:21:16 -07:00
InodeTimestamps.cpp mark parts of EdenTimestamp noexcept 2018-05-09 16:50:52 -07:00
InodeTimestamps.h mark parts of EdenTimestamp noexcept 2018-05-09 16:50:52 -07:00
Overlay.cpp remove legacy Overlay code 2018-05-09 17:06:43 -07:00
Overlay.h make most of recursivelyRemoveOverlayData async 2018-04-24 18:53:19 -07:00
overlay.thrift decouple whether an entry has an inode number from materialization status 2018-03-23 18:21:21 -07:00
ParentInodeInfo.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
ServerState.cpp move the clock to ServerState 2018-03-16 12:35:19 -07:00
ServerState.h remove alternate EDEN_HAS_COMMON_STATS code paths 2018-04-10 12:19:17 -07:00
TreeInode.cpp folly::Unit{} -> folly::unit 2018-05-08 13:38:02 -07:00
TreeInode.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
TreeInodeDirHandle.cpp folly::Unit{} -> folly::unit 2018-05-08 13:38:02 -07:00
TreeInodeDirHandle.h remove the fusell namespace 2018-03-19 17:01:52 -07:00