Lines Matching refs:dom
131 struct wb_domain *dom; member
159 .dom = &global_wb_domain, \
162 #define GDTC_INIT_NO_WB .dom = &global_wb_domain
165 .dom = mem_cgroup_wb_domain(__wb), \
171 return dtc->dom; in mdtc_valid()
176 return dtc->dom; in dtc_dom()
577 static void wb_domain_writeout_inc(struct wb_domain *dom, in wb_domain_writeout_inc() argument
581 __fprop_inc_percpu_max(&dom->completions, completions, in wb_domain_writeout_inc()
584 if (unlikely(!dom->period_time)) { in wb_domain_writeout_inc()
591 dom->period_time = wp_next_time(jiffies); in wb_domain_writeout_inc()
592 mod_timer(&dom->period_timer, dom->period_time); in wb_domain_writeout_inc()
630 struct wb_domain *dom = from_timer(dom, t, period_timer); in writeout_period() local
631 int miss_periods = (jiffies - dom->period_time) / in writeout_period()
634 if (fprop_new_period(&dom->completions, miss_periods + 1)) { in writeout_period()
635 dom->period_time = wp_next_time(dom->period_time + in writeout_period()
637 mod_timer(&dom->period_timer, dom->period_time); in writeout_period()
643 dom->period_time = 0; in writeout_period()
647 int wb_domain_init(struct wb_domain *dom, gfp_t gfp) in wb_domain_init() argument
649 memset(dom, 0, sizeof(*dom)); in wb_domain_init()
651 spin_lock_init(&dom->lock); in wb_domain_init()
653 timer_setup(&dom->period_timer, writeout_period, TIMER_DEFERRABLE); in wb_domain_init()
655 dom->dirty_limit_tstamp = jiffies; in wb_domain_init()
657 return fprop_global_init(&dom->completions, gfp); in wb_domain_init()
661 void wb_domain_exit(struct wb_domain *dom) in wb_domain_exit() argument
663 del_timer_sync(&dom->period_timer); in wb_domain_exit()
664 fprop_global_destroy(&dom->completions); in wb_domain_exit()
722 static unsigned long hard_dirty_limit(struct wb_domain *dom, in hard_dirty_limit() argument
725 return max(thresh, dom->dirty_limit); in hard_dirty_limit()
766 struct wb_domain *dom = dtc_dom(dtc); in __wb_calc_thresh() local
775 fprop_fraction_percpu(&dom->completions, dtc->wb_completions, in __wb_calc_thresh()
1135 struct wb_domain *dom = dtc_dom(dtc); in update_dirty_limit() local
1137 unsigned long limit = dom->dirty_limit; in update_dirty_limit()
1159 dom->dirty_limit = limit; in update_dirty_limit()
1165 struct wb_domain *dom = dtc_dom(dtc); in domain_update_bandwidth() local
1170 if (time_before(now, dom->dirty_limit_tstamp + BANDWIDTH_INTERVAL)) in domain_update_bandwidth()
1173 spin_lock(&dom->lock); in domain_update_bandwidth()
1174 if (time_after_eq(now, dom->dirty_limit_tstamp + BANDWIDTH_INTERVAL)) { in domain_update_bandwidth()
1176 dom->dirty_limit_tstamp = now; in domain_update_bandwidth()
1178 spin_unlock(&dom->lock); in domain_update_bandwidth()
2046 struct wb_domain *dom = &global_wb_domain; in writeback_set_ratelimit() local
2051 dom->dirty_limit = dirty_thresh; in writeback_set_ratelimit()