Lines Matching refs:mdtc
178 static struct dirty_throttle_control *mdtc_gdtc(struct dirty_throttle_control *mdtc) in mdtc_gdtc() argument
180 return mdtc->gdtc; in mdtc_gdtc()
232 static struct dirty_throttle_control *mdtc_gdtc(struct dirty_throttle_control *mdtc) in mdtc_gdtc() argument
691 static void mdtc_calc_avail(struct dirty_throttle_control *mdtc, in mdtc_calc_avail() argument
694 struct dirty_throttle_control *gdtc = mdtc_gdtc(mdtc); in mdtc_calc_avail()
695 unsigned long clean = filepages - min(filepages, mdtc->dirty); in mdtc_calc_avail()
699 mdtc->avail = filepages + min(headroom, other_clean); in mdtc_calc_avail()
1304 struct dirty_throttle_control *mdtc, in __wb_update_bandwidth() argument
1340 if (IS_ENABLED(CONFIG_CGROUP_WRITEBACK) && mdtc) { in __wb_update_bandwidth()
1341 domain_update_bandwidth(mdtc, now); in __wb_update_bandwidth()
1342 wb_update_dirty_ratelimit(mdtc, dirtied, elapsed); in __wb_update_bandwidth()
1526 struct dirty_throttle_control * const mdtc = mdtc_valid(&mdtc_stor) ? in balance_dirty_pages() local
1574 if (mdtc) { in balance_dirty_pages()
1582 &mdtc->dirty, &writeback); in balance_dirty_pages()
1583 mdtc->dirty += writeback; in balance_dirty_pages()
1584 mdtc_calc_avail(mdtc, filepages, headroom); in balance_dirty_pages()
1586 domain_dirty_limits(mdtc); in balance_dirty_pages()
1589 wb_dirty_limits(mdtc); in balance_dirty_pages()
1590 m_dirty = mdtc->wb_dirty; in balance_dirty_pages()
1591 m_thresh = mdtc->wb_thresh; in balance_dirty_pages()
1592 m_bg_thresh = mdtc->wb_bg_thresh; in balance_dirty_pages()
1594 m_dirty = mdtc->dirty; in balance_dirty_pages()
1595 m_thresh = mdtc->thresh; in balance_dirty_pages()
1596 m_bg_thresh = mdtc->bg_thresh; in balance_dirty_pages()
1613 (!mdtc || in balance_dirty_pages()
1620 if (mdtc) in balance_dirty_pages()
1642 if (mdtc) { in balance_dirty_pages()
1650 wb_dirty_limits(mdtc); in balance_dirty_pages()
1652 dirty_exceeded |= (mdtc->wb_dirty > mdtc->wb_thresh) && in balance_dirty_pages()
1653 ((mdtc->dirty > mdtc->thresh) || strictlimit); in balance_dirty_pages()
1655 wb_position_ratio(mdtc); in balance_dirty_pages()
1656 if (mdtc->pos_ratio < gdtc->pos_ratio) in balance_dirty_pages()
1657 sdtc = mdtc; in balance_dirty_pages()
1666 __wb_update_bandwidth(gdtc, mdtc, start_time, true); in balance_dirty_pages()
1887 struct dirty_throttle_control * const mdtc = mdtc_valid(&mdtc_stor) ? in wb_over_bg_thresh() local
1906 if (mdtc) { in wb_over_bg_thresh()
1909 mem_cgroup_wb_stats(wb, &filepages, &headroom, &mdtc->dirty, in wb_over_bg_thresh()
1911 mdtc_calc_avail(mdtc, filepages, headroom); in wb_over_bg_thresh()
1912 domain_dirty_limits(mdtc); /* ditto, ignore writeback */ in wb_over_bg_thresh()
1914 if (mdtc->dirty > mdtc->bg_thresh) in wb_over_bg_thresh()
1918 wb_calc_thresh(mdtc->wb, mdtc->bg_thresh)) in wb_over_bg_thresh()