on 5/2/2024 12:49 AM, Tejun Heo wrote: > 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 Sure, I rename 'bool bg' to 'bool include_writeback'. > 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? I will fold global_domain_dirty_avail() and wb_domain_dirty_avail() and just use domain_dirty_avail. > >> +{ >> + 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? Will add helper dtc_is_global(). Thanks. Kemeng > >> + wb_domain_dirty_avail(dtc, bg); >> + else >> + global_domain_dirty_avail(dtc, bg); >> +} > > Thanks. >