summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorAlex Markuze <amarkuze@redhat.com>2026-07-06 13:11:27 +0000
committerIlya Dryomov <idryomov@gmail.com>2026-08-26 19:57:28 +0200
commit5f074d7f2938d7461facbbd073b9394b1496e73e (patch)
tree16cf7c10401cef3adccfc13bb1101ec8730332d1 /scripts
parente7d7aa7b730178278109c41fa1b17b06873065d5 (diff)
downloadlinux-5f074d7f2938d7461facbbd073b9394b1496e73e.tar.gz
linux-5f074d7f2938d7461facbbd073b9394b1496e73e.zip
ceph: make nearfull sync writes opt-in
The kernel CephFS client has historically treated a cluster or pool NEARFULL condition as a request to force successful writes through generic_write_sync(). That effectively turns otherwise buffered writes into synchronous writes and can cause a severe throughput drop as soon as a single OSD or the file data pool crosses the nearfull threshold. On modern large clusters, NEARFULL is primarily an operator health signal rather than an immediate client-side capacity failure. Operators can still have substantial usable capacity while a cluster is rebalancing, splitting PGs, or expanding onto new devices. RBD, RGW and the userspace CephFS client do not impose this extra client-side sync-write throttle, so the kernel client behavior is surprising and operationally painful. Change the default behavior so NEARFULL no longer changes normal write-sync semantics. FULL and pool FULL still fail with -ENOSPC, and explicitly synchronous writes continue to be synced by generic_write_sync(). Add a nearfull_sync mount option for deployments that want the legacy backpressure behavior. When this option is set, successful writes are promoted to IOCB_DSYNC if the cluster or file data pool is marked NEARFULL, preserving the old behavior for conservative deployments. Link: https://tracker.ceph.com/issues/74849 Signed-off-by: Alex Markuze <amarkuze@redhat.com> Reviewed-by: Xiubo Li <xiubo.li@clyso.com> Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions