Revision be0e1e21ef707be4d16ea6a96ac9997463e4b8d2 authored by Paul E. McKenney on 21 May 2011, 12:57:18 UTC, committed by Paul E. McKenney on 20 July 2011, 04:38:53 UTC
Given some common flag combinations, particularly -Os, gcc will inline
rcu_read_unlock_special() despite its being in an unlikely() clause.
Use noinline to prohibit this misoptimization.

In addition, move the second barrier() in __rcu_read_unlock() so that
it is not on the common-case code path.  This will allow the compiler to
generate better code for the common-case path through __rcu_read_unlock().

Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
1 parent 7765be2
History
File Mode Size
apparmor
integrity
keys
selinux
smack
tomoyo
Kconfig -rw-r--r-- 7.8 KB
Makefile -rw-r--r-- 938 bytes
capability.c -rw-r--r-- 23.3 KB
commoncap.c -rw-r--r-- 27.2 KB
device_cgroup.c -rw-r--r-- 11.6 KB
inode.c -rw-r--r-- 8.7 KB
lsm_audit.c -rw-r--r-- 8.9 KB
min_addr.c -rw-r--r-- 1.3 KB
security.c -rw-r--r-- 32.5 KB

back to top