kernel_samsung_a53x/block
Arjan van de Ven 54bab59901 fs: ext4: fsync: optimize double-fsync() a bunch
There are cases where EXT4 is a bit too conservative sending barriers down to
the disk; there are cases where the transaction in progress is not the one
that sent the barrier (in other words: the fsync is for a file for which the
IO happened more time ago and all data was already sent to the disk).

For that case, a more performing tradeoff can be made on SSD devices (which
have the ability to flush their dram caches in a hurry on a power fail event)
where the barrier gets sent to the disk, but we don't need to wait for the
barrier to complete. Any consecutive IO will block on the barrier correctly.

Signed-off-by: Adam W. Willis <return.of.octobot@gmail.com>
(cherry picked from commit 74aa09a7751e438bd15b5cd73f611021b7239240)
(cherry picked from commit fa3bdf1a32cac074ff52403cb9ce18eb18c7f7d1)
2025-01-16 22:01:03 +01:00
..
partitions Revert "block: print symbolic error name instead of error code" 2024-11-24 00:23:28 +01:00
badblocks.c
bfq-cgroup.c
bfq-iosched.c Revert "block, bfq: fix possible UAF for bfqq->bic with merge chain" 2024-11-24 00:23:28 +01:00
bfq-iosched.h
bfq-wf2q.c
bio-integrity.c Revert "block: initialize integrity buffer to zero before writing it to media" 2024-11-24 00:23:47 +01:00
bio.c fs: ext4: fsync: optimize double-fsync() a bunch 2025-01-16 22:01:03 +01:00
blk-cgroup-rwstat.c
blk-cgroup-rwstat.h
blk-cgroup.c
blk-core.c
blk-crypto-fallback.c
blk-crypto-internal.h
blk-crypto.c
blk-exec.c
blk-flush.c fs: ext4: fsync: optimize double-fsync() a bunch 2025-01-16 22:01:03 +01:00
blk-integrity.c Revert "block: remove the blk_flush_integrity call in blk_integrity_unregister" 2024-11-24 00:23:47 +01:00
blk-ioc.c
blk-iocost.c blk-iocost: Avoid using clamp() on inuse in __propagate_weights() 2025-01-02 17:01:17 +01:00
blk-iolatency.c
blk-ioprio.c
blk-ioprio.h
blk-lib.c
blk-map.c
blk-merge.c
blk-mq-cpumap.c
blk-mq-debugfs-zoned.c
blk-mq-debugfs.c
blk-mq-debugfs.h
blk-mq-pci.c
blk-mq-rdma.c
blk-mq-sched.c
blk-mq-sched.h
blk-mq-sysfs.c
blk-mq-tag.c
blk-mq-tag.h
blk-mq-virtio.c
blk-mq.c block: fix ordering between checking BLK_MQ_S_STOPPED request adding 2024-12-17 13:24:19 +01:00
blk-mq.h block: fix ordering between checking BLK_MQ_S_STOPPED request adding 2024-12-17 13:24:19 +01:00
blk-pm.c
blk-pm.h
blk-rq-qos.c Revert "blk-rq-qos: fix crash on rq_qos_wait vs. rq_qos_wake_function race" 2024-11-24 00:22:52 +01:00
blk-rq-qos.h
blk-sec-stats.c
blk-settings.c
blk-stat.c
blk-stat.h
blk-sysfs.c
blk-throttle.c
blk-timeout.c
blk-wbt.c
blk-wbt.h
blk-zoned.c
blk.h
bounce.c
bsg-lib.c
bsg.c
cmdline-parser.c
elevator.c block: Do not allow boosters to adjusting scheduler 2025-01-16 21:58:52 +01:00
genhd.c
ioctl.c
ioprio.c
Kconfig
Kconfig.iosched
keyslot-manager.c
kyber-iosched.c
Makefile
mq-deadline-cgroup.c
mq-deadline-cgroup.h
mq-deadline-main.c
opal_proto.h
scsi_ioctl.c
sed-opal.c
ssg-cgroup.c
ssg-cgroup.h
ssg-iosched.c
t10-pi.c