diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-04-29 15:06:13 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-04-29 15:54:28 -0700 |
commit | 8375ad98cc1defc36adf4a77d9ea1e71db51a371 (patch) | |
tree | b9cb0c43c35ca982c86f638d87bf88cbbf65e70b /include/linux/pagemap.h | |
parent | 250297edf83292c831fbf4504df54953c2aacfe4 (diff) | |
download | op-kernel-dev-8375ad98cc1defc36adf4a77d9ea1e71db51a371.zip op-kernel-dev-8375ad98cc1defc36adf4a77d9ea1e71db51a371.tar.gz |
vm: adjust ifdef for TINY_RCU
There is an ifdef in page_cache_get_speculative() that checks for !SMP
and TREE_RCU, which has been an impossible combination since the advent
of TINY_RCU. The ifdef enables a fastpath that is valid when preemption
is disabled by rcu_read_lock() in UP systems, which is the case when
TINY_RCU is enabled. This commit therefore adjusts the ifdef to
generate the fastpath when TINY_RCU is enabled.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reported-by: Andi Kleen <andi@firstfloor.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/pagemap.h')
-rw-r--r-- | include/linux/pagemap.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index 0e38e13..e3dea75 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h @@ -149,7 +149,7 @@ static inline int page_cache_get_speculative(struct page *page) { VM_BUG_ON(in_interrupt()); -#if !defined(CONFIG_SMP) && defined(CONFIG_TREE_RCU) +#ifdef CONFIG_TINY_RCU # ifdef CONFIG_PREEMPT_COUNT VM_BUG_ON(!in_atomic()); # endif |