Lines Matching refs:bdi
20 int __must_check bdi_init(struct backing_dev_info *bdi);
21 void bdi_exit(struct backing_dev_info *bdi);
24 int bdi_register(struct backing_dev_info *bdi, struct device *parent,
26 int bdi_register_dev(struct backing_dev_info *bdi, dev_t dev);
27 void bdi_unregister(struct backing_dev_info *bdi);
30 void bdi_destroy(struct backing_dev_info *bdi);
48 static inline bool bdi_has_dirty_io(struct backing_dev_info *bdi) in bdi_has_dirty_io() argument
54 return atomic_long_read(&bdi->tot_write_bandwidth); in bdi_has_dirty_io()
130 int bdi_set_min_ratio(struct backing_dev_info *bdi, unsigned int min_ratio);
131 int bdi_set_max_ratio(struct backing_dev_info *bdi, unsigned int max_ratio);
192 struct backing_dev_info *bdi = wb->bdi; in wb_congested() local
194 if (bdi->congested_fn) in wb_congested()
195 return bdi->congested_fn(bdi->congested_data, cong_bits); in wb_congested()
204 static inline bool bdi_cap_stable_pages_required(struct backing_dev_info *bdi) in bdi_cap_stable_pages_required() argument
206 return bdi->capabilities & BDI_CAP_STABLE_WRITES; in bdi_cap_stable_pages_required()
209 static inline bool bdi_cap_writeback_dirty(struct backing_dev_info *bdi) in bdi_cap_writeback_dirty() argument
211 return !(bdi->capabilities & BDI_CAP_NO_WRITEBACK); in bdi_cap_writeback_dirty()
214 static inline bool bdi_cap_account_dirty(struct backing_dev_info *bdi) in bdi_cap_account_dirty() argument
216 return !(bdi->capabilities & BDI_CAP_NO_ACCT_DIRTY); in bdi_cap_account_dirty()
219 static inline bool bdi_cap_account_writeback(struct backing_dev_info *bdi) in bdi_cap_account_writeback() argument
222 return !(bdi->capabilities & (BDI_CAP_NO_ACCT_WB | in bdi_cap_account_writeback()
245 wb_congested_get_create(struct backing_dev_info *bdi, int blkcg_id, gfp_t gfp);
247 struct bdi_writeback *wb_get_create(struct backing_dev_info *bdi,
267 struct backing_dev_info *bdi = inode_to_bdi(inode); in inode_cgwb_enabled() local
271 bdi_cap_account_dirty(bdi) && in inode_cgwb_enabled()
272 (bdi->capabilities & BDI_CAP_CGROUP_WRITEBACK) && in inode_cgwb_enabled()
284 static inline struct bdi_writeback *wb_find_current(struct backing_dev_info *bdi) in wb_find_current() argument
291 return &bdi->wb; in wb_find_current()
293 wb = radix_tree_lookup(&bdi->cgwb_tree, memcg_css->id); in wb_find_current()
314 wb_get_create_current(struct backing_dev_info *bdi, gfp_t gfp) in wb_get_create_current() argument
319 wb = wb_find_current(bdi); in wb_get_create_current()
328 wb = wb_get_create(bdi, memcg_css, gfp); in wb_get_create_current()
422 wb_congested_get_create(struct backing_dev_info *bdi, int blkcg_id, gfp_t gfp) in wb_congested_get_create() argument
424 atomic_inc(&bdi->wb_congested->refcnt); in wb_congested_get_create()
425 return bdi->wb_congested; in wb_congested_get_create()
434 static inline struct bdi_writeback *wb_find_current(struct backing_dev_info *bdi) in wb_find_current() argument
436 return &bdi->wb; in wb_find_current()
440 wb_get_create_current(struct backing_dev_info *bdi, gfp_t gfp) in wb_get_create_current() argument
442 return &bdi->wb; in wb_get_create_current()
496 static inline int bdi_congested(struct backing_dev_info *bdi, int cong_bits) in bdi_congested() argument
498 return wb_congested(&bdi->wb, cong_bits); in bdi_congested()
501 static inline int bdi_read_congested(struct backing_dev_info *bdi) in bdi_read_congested() argument
503 return bdi_congested(bdi, 1 << WB_sync_congested); in bdi_read_congested()
506 static inline int bdi_write_congested(struct backing_dev_info *bdi) in bdi_write_congested() argument
508 return bdi_congested(bdi, 1 << WB_async_congested); in bdi_write_congested()
511 static inline int bdi_rw_congested(struct backing_dev_info *bdi) in bdi_rw_congested() argument
513 return bdi_congested(bdi, (1 << WB_sync_congested) | in bdi_rw_congested()