Lines Matching defs:bdi_writeback
107 struct bdi_writeback { struct
108 struct backing_dev_info *bdi; /* our parent bdi */
110 unsigned long state; /* Always use atomic bitops on this */
111 unsigned long last_old_flush; /* last old data flush */
113 struct list_head b_dirty; /* dirty inodes */
114 struct list_head b_io; /* parked for writeback */
115 struct list_head b_more_io; /* parked for more writeback */
116 struct list_head b_dirty_time; /* time stamps are dirty */
117 spinlock_t list_lock; /* protects the b_* lists */
119 atomic_t writeback_inodes; /* number of inodes under writeback */
120 struct percpu_counter stat[NR_WB_STAT_ITEMS];
122 unsigned long congested; /* WB_[a]sync_congested flags */
124 unsigned long bw_time_stamp; /* last time write bw is updated */
125 unsigned long dirtied_stamp;
126 unsigned long written_stamp; /* pages written at bw_time_stamp */
127 unsigned long write_bandwidth; /* the estimated write bandwidth */
128 unsigned long avg_write_bandwidth; /* further smoothed write bw, > 0 */
136 unsigned long dirty_ratelimit;
137 unsigned long balanced_dirty_ratelimit;
139 struct fprop_local_percpu completions;
140 int dirty_exceeded;
141 enum wb_reason start_all_reason;
143 spinlock_t work_lock; /* protects work_list & dwork scheduling */
144 struct list_head work_list;
145 struct delayed_work dwork; /* work item used for writeback */
146 struct delayed_work bw_dwork; /* work item used for bandwidth estimate */
148 unsigned long dirty_sleep; /* last wait */
150 struct list_head bdi_node; /* anchored at bdi->wb_list */
153 struct percpu_ref refcnt; /* used only for !root wb's */
154 struct fprop_local_percpu memcg_completions;
155 struct cgroup_subsys_state *memcg_css; /* the associated memcg */
156 struct cgroup_subsys_state *blkcg_css; /* and blkcg */
157 struct list_head memcg_node; /* anchored at memcg->cgwb_list */
158 struct list_head blkcg_node; /* anchored at blkcg->cgwb_list */
159 struct list_head b_attached; /* attached inodes, protected by list_lock */
160 struct list_head offline_node; /* anchored at offline_cgwbs */
162 union {