diff options
author | Tejun Heo <tj@kernel.org> | 2011-12-13 18:33:39 -0500 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2011-12-13 18:33:39 -0500 |
commit | b50b636bce6293fa858cc7ff6c3ffe4920d90006 (patch) | |
tree | 65a4c509ff491aa89bf4d1a5f3e26d600eeea49f /include/linux/elevator.h | |
parent | b9a1920837bc53430d339380e393a6e4c372939f (diff) |
block, cfq: kill ioc_gone
Now that cic's are immediately unlinked under both locks, there's no
need to count and drain cic's before module unload. RCU callback
completion is waited with rcu_barrier().
While at it, remove residual RCU operations on cic_list.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/elevator.h')
-rw-r--r-- | include/linux/elevator.h | 17 |
1 files changed, 0 insertions, 17 deletions
diff --git a/include/linux/elevator.h b/include/linux/elevator.h index 581dd1bd3d3e..02604c89ddde 100644 --- a/include/linux/elevator.h +++ b/include/linux/elevator.h | |||
@@ -196,22 +196,5 @@ enum { | |||
196 | INIT_LIST_HEAD(&(rq)->csd.list); \ | 196 | INIT_LIST_HEAD(&(rq)->csd.list); \ |
197 | } while (0) | 197 | } while (0) |
198 | 198 | ||
199 | /* | ||
200 | * io context count accounting | ||
201 | */ | ||
202 | #define elv_ioc_count_mod(name, __val) this_cpu_add(name, __val) | ||
203 | #define elv_ioc_count_inc(name) this_cpu_inc(name) | ||
204 | #define elv_ioc_count_dec(name) this_cpu_dec(name) | ||
205 | |||
206 | #define elv_ioc_count_read(name) \ | ||
207 | ({ \ | ||
208 | unsigned long __val = 0; \ | ||
209 | int __cpu; \ | ||
210 | smp_wmb(); \ | ||
211 | for_each_possible_cpu(__cpu) \ | ||
212 | __val += per_cpu(name, __cpu); \ | ||
213 | __val; \ | ||
214 | }) | ||
215 | |||
216 | #endif /* CONFIG_BLOCK */ | 199 | #endif /* CONFIG_BLOCK */ |
217 | #endif | 200 | #endif |