]> www.infradead.org Git - users/willy/pagecache.git/commitdiff
bcachefs: Journal writes are now IOPRIO_CLASS_RT
authorKent Overstreet <kent.overstreet@linux.dev>
Sat, 25 Jan 2025 02:29:24 +0000 (21:29 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Mon, 27 Jan 2025 04:02:28 +0000 (23:02 -0500)
System performance is particularly sensitive to journal write latency,
the number of outstanding journal writes is bounded and we can't issue
journal flushes until other journal writes have completed.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/journal_io.c

index 7f2efe85a805292da39fcf06724c9d4aea27551c..11c39e0c34f4cb393b0dca68a65e864c7515f313 100644 (file)
@@ -17,6 +17,7 @@
 #include "sb-clean.h"
 #include "trace.h"
 
+#include <linux/ioprio.h>
 #include <linux/string_choices.h>
 
 void bch2_journal_pos_from_member_info_set(struct bch_fs *c)
@@ -1763,6 +1764,7 @@ static CLOSURE_CALLBACK(journal_write_submit)
                bio->bi_iter.bi_sector  = ptr->offset;
                bio->bi_end_io          = journal_write_endio;
                bio->bi_private         = ca;
+               bio->bi_ioprio          = IOPRIO_PRIO_VALUE(IOPRIO_CLASS_RT, 0);
 
                BUG_ON(bio->bi_iter.bi_sector == ca->prev_journal_sector);
                ca->prev_journal_sector = bio->bi_iter.bi_sector;