From: Feiko Nanninga Date: Sun, 1 Sep 2024 17:08:05 +0000 (+0200) Subject: bcachefs: Fix sysfs rebalance duration waited formatting X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=36f0af4f44a4e465b0af4bf188d780511c1ca189;p=linux.git bcachefs: Fix sysfs rebalance duration waited formatting cat /sys/fs/bcachefs/*/internal/rebalance_status waiting io wait duration: 13.5 GiB io wait remaining: 627 MiB duration waited: 1392 m duration waited was increasing at a rate of about 14 times the expected rate. div_u64 takes a u32 divisor, but u->nsecs (from time_units[]) can be bigger than u32. Signed-off-by: Feiko Nanninga Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/util.c b/fs/bcachefs/util.c index 1b8554460af4..a6c9c96955f1 100644 --- a/fs/bcachefs/util.c +++ b/fs/bcachefs/util.c @@ -360,7 +360,7 @@ void bch2_pr_time_units(struct printbuf *out, u64 ns) { const struct time_unit *u = bch2_pick_time_units(ns); - prt_printf(out, "%llu %s", div_u64(ns, u->nsecs), u->name); + prt_printf(out, "%llu %s", div64_u64(ns, u->nsecs), u->name); } static void bch2_pr_time_units_aligned(struct printbuf *out, u64 ns)