summaryrefslogtreecommitdiffstats
path: root/lib/ubsan.c
diff options
context:
space:
mode:
authorMartin Brandenburg2018-03-26 20:58:11 +0200
committerMike Marshall2019-05-03 20:32:38 +0200
commit90fc07065a3505e5a874c5854fd6176beb545e08 (patch)
tree00cede9b9344af70e09ba43235598cced47027dd /lib/ubsan.c
parentorangefs: skip inode writeout if nothing to write (diff)
downloadkernel-qcow2-linux-90fc07065a3505e5a874c5854fd6176beb545e08.tar.gz
kernel-qcow2-linux-90fc07065a3505e5a874c5854fd6176beb545e08.tar.xz
kernel-qcow2-linux-90fc07065a3505e5a874c5854fd6176beb545e08.zip
orangefs: avoid fsync service operation on flush
Without this, an fsync call is sent to the server even if no data changed. This resulted in a rather severe (50%) performance regression under certain metadata-heavy workloads. In the past, everything was direct IO. Nothing happend on a close call. An explicit fsync call would send an fsync request to the server which in turn fsynced the underlying file. Now there are cached writes. Then fsync began writing out dirty pages in addition to making an fsync request to the server, and close began calling fsync. With this commit, close only writes out dirty pages, and does not make the fsync request. Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
Diffstat (limited to 'lib/ubsan.c')
0 files changed, 0 insertions, 0 deletions