Lines Matching refs:bdi
93 &wb->bdi->tot_write_bandwidth); in wb_io_lists_populated()
104 &wb->bdi->tot_write_bandwidth) < 0); in wb_io_lists_depopulated()
266 struct backing_dev_info *bdi = inode_to_bdi(inode); in __inode_attach_wb() local
274 wb = wb_get_create(bdi, memcg_css, GFP_ATOMIC); in __inode_attach_wb()
278 wb = wb_get_create(bdi, memcg_css, GFP_ATOMIC); in __inode_attach_wb()
284 wb = &bdi->wb; in __inode_attach_wb()
310 if (wb != &wb->bdi->wb) in inode_cgwb_move_to_attached()
385 static void bdi_down_write_wb_switch_rwsem(struct backing_dev_info *bdi) in bdi_down_write_wb_switch_rwsem() argument
387 down_write(&bdi->wb_switch_rwsem); in bdi_down_write_wb_switch_rwsem()
390 static void bdi_up_write_wb_switch_rwsem(struct backing_dev_info *bdi) in bdi_up_write_wb_switch_rwsem() argument
392 up_write(&bdi->wb_switch_rwsem); in bdi_up_write_wb_switch_rwsem()
493 struct backing_dev_info *bdi = inode_to_bdi(isw->inodes[0]); in inode_switch_wbs_work_fn() local
503 down_read(&bdi->wb_switch_rwsem); in inode_switch_wbs_work_fn()
532 up_read(&bdi->wb_switch_rwsem); in inode_switch_wbs_work_fn()
585 struct backing_dev_info *bdi = inode_to_bdi(inode); in inode_switch_wbs() local
612 isw->new_wb = wb_get_create(bdi, memcg_css, GFP_ATOMIC); in inode_switch_wbs()
681 isw->new_wb = wb_get_create(wb->bdi, memcg_css, GFP_KERNEL); in cleanup_offline_cgwb()
686 isw->new_wb = &wb->bdi->wb; /* wb_get() is noop for bdi's wb */ in cleanup_offline_cgwb()
969 unsigned long tot_bw = atomic_long_read(&wb->bdi->tot_write_bandwidth); in wb_split_bdi_pages()
996 static void bdi_split_work_to_wbs(struct backing_dev_info *bdi, in bdi_split_work_to_wbs() argument
1001 struct bdi_writeback *wb = list_entry(&bdi->wb_list, in bdi_split_work_to_wbs()
1007 list_for_each_entry_continue_rcu(wb, &bdi->wb_list, bdi_node) { in bdi_split_work_to_wbs()
1008 DEFINE_WB_COMPLETION(fallback_work_done, bdi); in bdi_split_work_to_wbs()
1080 struct backing_dev_info *bdi; in cgroup_writeback_by_id() local
1088 bdi = bdi_get_by_id(bdi_id); in cgroup_writeback_by_id()
1089 if (!bdi) in cgroup_writeback_by_id()
1106 wb = wb_get_lookup(bdi, memcg_css); in cgroup_writeback_by_id()
1144 bdi_put(bdi); in cgroup_writeback_by_id()
1192 static void bdi_down_write_wb_switch_rwsem(struct backing_dev_info *bdi) { } in bdi_down_write_wb_switch_rwsem() argument
1193 static void bdi_up_write_wb_switch_rwsem(struct backing_dev_info *bdi) { } in bdi_up_write_wb_switch_rwsem() argument
1233 static void bdi_split_work_to_wbs(struct backing_dev_info *bdi, in bdi_split_work_to_wbs() argument
1239 if (!skip_if_busy || !writeback_in_progress(&bdi->wb)) { in bdi_split_work_to_wbs()
1241 wb_queue_work(&bdi->wb, base_work); in bdi_split_work_to_wbs()
2332 set_worker_desc("flush-%s", bdi_dev_name(wb->bdi)); in wb_workfn()
2366 static void __wakeup_flusher_threads_bdi(struct backing_dev_info *bdi, in __wakeup_flusher_threads_bdi() argument
2371 if (!bdi_has_dirty_io(bdi)) in __wakeup_flusher_threads_bdi()
2374 list_for_each_entry_rcu(wb, &bdi->wb_list, bdi_node) in __wakeup_flusher_threads_bdi()
2378 void wakeup_flusher_threads_bdi(struct backing_dev_info *bdi, in wakeup_flusher_threads_bdi() argument
2382 __wakeup_flusher_threads_bdi(bdi, reason); in wakeup_flusher_threads_bdi()
2391 struct backing_dev_info *bdi; in wakeup_flusher_threads() local
2399 list_for_each_entry_rcu(bdi, &bdi_list, bdi_list) in wakeup_flusher_threads()
2400 __wakeup_flusher_threads_bdi(bdi, reason); in wakeup_flusher_threads()
2424 struct backing_dev_info *bdi; in wakeup_dirtytime_writeback() local
2427 list_for_each_entry_rcu(bdi, &bdi_list, bdi_list) { in wakeup_dirtytime_writeback()
2430 list_for_each_entry_rcu(wb, &bdi->wb_list, bdi_node) in wakeup_dirtytime_writeback()
2622 (wb->bdi->capabilities & BDI_CAP_WRITEBACK)) in __mark_inode_dirty()
2731 struct backing_dev_info *bdi = sb->s_bdi; in __writeback_inodes_sb_nr() local
2732 DEFINE_WB_COMPLETION(done, bdi); in __writeback_inodes_sb_nr()
2742 if (!bdi_has_dirty_io(bdi) || bdi == &noop_backing_dev_info) in __writeback_inodes_sb_nr()
2809 struct backing_dev_info *bdi = sb->s_bdi; in sync_inodes_sb() local
2810 DEFINE_WB_COMPLETION(done, bdi); in sync_inodes_sb()
2826 if (bdi == &noop_backing_dev_info) in sync_inodes_sb()
2831 bdi_down_write_wb_switch_rwsem(bdi); in sync_inodes_sb()
2832 bdi_split_work_to_wbs(bdi, &work, false); in sync_inodes_sb()
2834 bdi_up_write_wb_switch_rwsem(bdi); in sync_inodes_sb()