diff options
author | Oleg Nesterov <oleg@tv-sign.ru> | 2006-10-04 05:17:17 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-04 10:55:31 -0400 |
commit | 20e9751bd9dd6b832fd84ada27840360f7e877f1 (patch) | |
tree | c598ff9cb9e540da7f8595f2c130f3674065e018 /Documentation | |
parent | 4b6c2cca6eef9cc4a15350bf1c61839e12e08b84 (diff) |
[PATCH] rcu: simplify/improve batch tuning
Kill a hard-to-calculate 'rsinterval' boot parameter and per-cpu
rcu_data.last_rs_qlen. Instead, it adds adds a flag rcu_ctrlblk.signaled,
which records the fact that one of CPUs has sent a resched IPI since the
last rcu_start_batch().
Roughly speaking, we need two rcu_start_batch()s in order to move callbacks
from ->nxtlist to ->donelist. This means that when ->qlen exceeds qhimark
and continues to grow, we should send a resched IPI, and then do it again
after we gone through a quiescent state.
On the other hand, if it was already sent, we don't need to do it again
when another CPU detects overflow of the queue.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Acked-by: Paul E. McKenney <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/kernel-parameters.txt | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 12b3b24bfd2f..e1543a32a557 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt | |||
@@ -1357,10 +1357,6 @@ and is between 256 and 4096 characters. It is defined in the file | |||
1357 | rcu.qlowmark= [KNL,BOOT] Set threshold of queued | 1357 | rcu.qlowmark= [KNL,BOOT] Set threshold of queued |
1358 | RCU callbacks below which batch limiting is re-enabled. | 1358 | RCU callbacks below which batch limiting is re-enabled. |
1359 | 1359 | ||
1360 | rcu.rsinterval= [KNL,BOOT,SMP] Set the number of additional | ||
1361 | RCU callbacks to queued before forcing reschedule | ||
1362 | on all cpus. | ||
1363 | |||
1364 | rdinit= [KNL] | 1360 | rdinit= [KNL] |
1365 | Format: <full_path> | 1361 | Format: <full_path> |
1366 | Run specified binary instead of /init from the ramdisk, | 1362 | Run specified binary instead of /init from the ramdisk, |