aboutsummaryrefslogtreecommitdiffstats
path: root/block/blk-throttle.c
diff options
context:
space:
mode:
Diffstat (limited to 'block/blk-throttle.c')
-rw-r--r--block/blk-throttle.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/block/blk-throttle.c b/block/blk-throttle.c
index e287c19908c8..5a58e779912b 100644
--- a/block/blk-throttle.c
+++ b/block/blk-throttle.c
@@ -180,7 +180,7 @@ static inline unsigned int total_nr_queued(struct throtl_data *td)
180 180
181/* 181/*
182 * Worker for allocating per cpu stat for tgs. This is scheduled on the 182 * Worker for allocating per cpu stat for tgs. This is scheduled on the
183 * system_nrt_wq once there are some groups on the alloc_list waiting for 183 * system_wq once there are some groups on the alloc_list waiting for
184 * allocation. 184 * allocation.
185 */ 185 */
186static void tg_stats_alloc_fn(struct work_struct *work) 186static void tg_stats_alloc_fn(struct work_struct *work)
@@ -194,8 +194,7 @@ alloc_stats:
194 stats_cpu = alloc_percpu(struct tg_stats_cpu); 194 stats_cpu = alloc_percpu(struct tg_stats_cpu);
195 if (!stats_cpu) { 195 if (!stats_cpu) {
196 /* allocation failed, try again after some time */ 196 /* allocation failed, try again after some time */
197 queue_delayed_work(system_nrt_wq, dwork, 197 schedule_delayed_work(dwork, msecs_to_jiffies(10));
198 msecs_to_jiffies(10));
199 return; 198 return;
200 } 199 }
201 } 200 }
@@ -238,7 +237,7 @@ static void throtl_pd_init(struct blkcg_gq *blkg)
238 */ 237 */
239 spin_lock_irqsave(&tg_stats_alloc_lock, flags); 238 spin_lock_irqsave(&tg_stats_alloc_lock, flags);
240 list_add(&tg->stats_alloc_node, &tg_stats_alloc_list); 239 list_add(&tg->stats_alloc_node, &tg_stats_alloc_list);
241 queue_delayed_work(system_nrt_wq, &tg_stats_alloc_work, 0); 240 schedule_delayed_work(&tg_stats_alloc_work, 0);
242 spin_unlock_irqrestore(&tg_stats_alloc_lock, flags); 241 spin_unlock_irqrestore(&tg_stats_alloc_lock, flags);
243} 242}
244 243