Hello, On Mon, Apr 29, 2024 at 11:47:30AM +0800, Kemeng Shi wrote: > +/* > + * Dirty background will ignore pages being written as we're trying to > + * decide whether to put more under writeback. > + */ > +static void domain_dirty_avail(struct dirty_throttle_control *dtc, bool bg) I wonder whether it'd be better if the bool arg is flipped to something like `bool include_writeback` so that it's clear what the difference is between the two. Also, do global_domain_dirty_avail() and wb_domain_dirty_avail() have to be separate functions? They seem trivial enough to include into the body of domain_dirty_avail(). Are they used directly elsewhere? > +{ > + struct dirty_throttle_control *gdtc = mdtc_gdtc(dtc); > + > + if (gdtc) I know this test is used elsewhere but it isn't the most intuitive. Would it make sense to add dtc_is_global() (or dtc_is_gdtc()) helper instead? > + wb_domain_dirty_avail(dtc, bg); > + else > + global_domain_dirty_avail(dtc, bg); > +} Thanks. -- tejun