]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
cephfs-tool: add async I/O support with configurable queue depth
authorEdwin Rodriguez <edwin.rodriguez1@ibm.com>
Thu, 28 May 2026 13:50:40 +0000 (09:50 -0400)
committerEdwin Rodriguez <edwin.rodriguez1@ibm.com>
Wed, 1 Jul 2026 13:11:15 +0000 (09:11 -0400)
commit51f9de8d342cb1fdc5ec8bf37d2576420f4db5f4
treee51a89238bc3ce53678c9934b0115332d1d5ea88
parent47f74755451fa883bfba0706be19e1585c7cd5a3
cephfs-tool: add async I/O support with configurable queue depth

Add --async-io to use ceph_ll_nonblocking_readv_writev for read and write
workers instead of synchronous ceph_read/ceph_write. Add --queue-depth to
limit outstanding async I/Os per thread via a counting semaphore and
pre-allocated AsyncIOContext pool. Async write uses ceph_ll_create; async
read uses ceph_ll_walk + ceph_ll_open and defers inode release until all
async ops including readahead complete. Reject --async-io with
--per-thread-mount since async workers require a shared mount.

Fixes: https://tracker.ceph.com/issues/76183
Signed-off-by: Edwin Rodriguez <edwin.rodriguez1@ibm.com>
src/tools/cephfs/cephfs-tool.cc