Lines Matching +full:set +full:- +full:io +full:- +full:isolation
1 /* SPDX-License-Identifier: GPL-2.0 */
6 #include <linux/radix-tree.h>
10 #include <linux/percpu-refcount.h>
27 WB_has_dirty_io, /* Dirty inodes on ->b_{dirty|io|more_io} */
78 * ->done should be set to a wb_completion defined using the following
83 #define WB_COMPLETION_INIT(bdi) __WB_COMPLETION_INIT(&(bdi)->wb_waitq)
91 * (bdi_writeback) is served by its embedded bdi->wb.
95 * memcg - blkcg combination can be served by its own wb by assigning a
96 * dedicated wb to each memcg, which enables isolation across different
97 * cgroups and propagation of IO back pressure down from the IO layer upto
130 * The base dirty throttle rate, re-calculated on every 200ms.
148 struct list_head bdi_node; /* anchored at bdi->wb_list */
155 struct list_head memcg_node; /* anchored at memcg->cgwb_list */
156 struct list_head blkcg_node; /* anchored at blkcg->cgwb_list */
167 struct rb_node rb_node; /* keyed by ->id */
170 unsigned long io_pages; /* max allowed IO size */
219 * wb_tryget - try to increment a wb's refcount
224 if (wb != &wb->bdi->wb) in wb_tryget()
225 return percpu_ref_tryget(&wb->refcnt); in wb_tryget()
230 * wb_get - increment a wb's refcount
235 if (wb != &wb->bdi->wb) in wb_get()
236 percpu_ref_get(&wb->refcnt); in wb_get()
240 * wb_put - decrement a wb's refcount
245 if (WARN_ON_ONCE(!wb->bdi)) { in wb_put()
253 if (wb != &wb->bdi->wb) in wb_put()
254 percpu_ref_put(&wb->refcnt); in wb_put()
258 * wb_dying - is a wb dying?
265 return percpu_ref_is_dying(&wb->refcnt); in wb_dying()