]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/clock.h
Update bcachefs sources to 98a1bff393 bcachefs: Topology repair fixes
[bcachefs-tools-debian] / libbcachefs / clock.h
index bfbbca8a207b0b8a3621d443bf9d99dfeb209c1d..70a0f7436c844f2f4ce2b29c35fc8a250920e9b9 100644 (file)
@@ -7,7 +7,7 @@ void bch2_io_timer_del(struct io_clock *, struct io_timer *);
 void bch2_kthread_io_clock_wait(struct io_clock *, unsigned long,
                                unsigned long);
 
-void __bch2_increment_clock(struct io_clock *);
+void __bch2_increment_clock(struct io_clock *, unsigned);
 
 static inline void bch2_increment_clock(struct bch_fs *c, unsigned sectors,
                                        int rw)
@@ -16,7 +16,7 @@ static inline void bch2_increment_clock(struct bch_fs *c, unsigned sectors,
 
        if (unlikely(this_cpu_add_return(*clock->pcpu_buf, sectors) >=
                   IO_CLOCK_PCPU_SECTORS))
-               __bch2_increment_clock(clock);
+               __bch2_increment_clock(clock, this_cpu_xchg(*clock->pcpu_buf, 0));
 }
 
 void bch2_io_clock_schedule_timeout(struct io_clock *, unsigned long);
@@ -30,6 +30,8 @@ void bch2_io_clock_schedule_timeout(struct io_clock *, unsigned long);
        __ret;                                                          \
 })
 
+void bch2_io_timers_to_text(struct printbuf *, struct io_clock *);
+
 void bch2_io_clock_exit(struct io_clock *);
 int bch2_io_clock_init(struct io_clock *);