diff options
author | fdinoff <fdinoff@google.com> | 2023-11-16 06:23:20 -0500 |
---|---|---|
committer | Keiichi Watanabe <keiichiw@google.com> | 2023-12-05 07:26:10 +0900 |
commit | dececf323283d7bad55098a0d5f2ef4426487ae8 (patch) | |
tree | d4e927f9317a912bc11a510cbcd348750847139c | |
parent | 443233e75a2ea4784008e51ba9b8671eb349b5d8 (diff) | |
download | libfuse-dececf323283d7bad55098a0d5f2ef4426487ae8.tar.gz |
Pass FUSE_PARALLEL_DIROPS to kernel (#861)
This tells the kernel that parallel lookup/readdir operations are
supported. This is enabled by default but was not passed to the kernel
so you always get the synchronized version.
Bug: 312226503
Test: Build locally with 'm'
Change-Id: I7b7cbc8ae5f0f09e4a0a16edf9c6eb28fe5fe1f8
Signed-off-by: Keiichi Watanabe <keiichiw@google.com>
(cherry picked from commit c9905341ea34ff9acbc11b3c53ba8bcea35eeed8)
-rw-r--r-- | lib/fuse_lowlevel.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c index 4c75e3b..dcf8045 100644 --- a/lib/fuse_lowlevel.c +++ b/lib/fuse_lowlevel.c @@ -2262,6 +2262,8 @@ void do_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg) outarg.flags |= FUSE_ASYNC_DIO; if (se->conn.want & FUSE_CAP_WRITEBACK_CACHE) outarg.flags |= FUSE_WRITEBACK_CACHE; + if (se->conn.want & FUSE_CAP_PARALLEL_DIROPS) + outarg.flags |= FUSE_PARALLEL_DIROPS; if (se->conn.want & FUSE_CAP_POSIX_ACL) outarg.flags |= FUSE_POSIX_ACL; if (se->conn.want & FUSE_CAP_PASSTHROUGH) { |