android_kernel_samsung_a7y1.../include
Waiman Long 20ff0f3249 rcu: Force inlining of rcu_read_lock()
[ Upstream commit 6da9f775175e516fc7229ceaa9b54f8f56aa7924 ]

When debugging options are turned on, the rcu_read_lock() function
might not be inlined. This results in lockdep's print_lock() function
printing "rcu_read_lock+0x0/0x70" instead of rcu_read_lock()'s caller.
For example:

[   10.579995] =============================
[   10.584033] WARNING: suspicious RCU usage
[   10.588074] 4.18.0.memcg_v2+ #1 Not tainted
[   10.593162] -----------------------------
[   10.597203] include/linux/rcupdate.h:281 Illegal context switch in
RCU read-side critical section!
[   10.606220]
[   10.606220] other info that might help us debug this:
[   10.606220]
[   10.614280]
[   10.614280] rcu_scheduler_active = 2, debug_locks = 1
[   10.620853] 3 locks held by systemd/1:
[   10.624632]  #0: (____ptrval____) (&type->i_mutex_dir_key#5){.+.+}, at: lookup_slow+0x42/0x70
[   10.633232]  #1: (____ptrval____) (rcu_read_lock){....}, at: rcu_read_lock+0x0/0x70
[   10.640954]  #2: (____ptrval____) (rcu_read_lock){....}, at: rcu_read_lock+0x0/0x70

These "rcu_read_lock+0x0/0x70" strings are not providing any useful
information.  This commit therefore forces inlining of the rcu_read_lock()
function so that rcu_read_lock()'s caller is instead shown.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-06 19:54:57 +02:00
..
acpi A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
asm-generic bug.h: work around GCC PR82365 in BUG() 2020-04-06 19:20:52 +02:00
clocksource A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
crypto A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
drm A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dt-bindings A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
keys A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
kvm A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
linux rcu: Force inlining of rcu_read_lock() 2020-04-06 19:54:57 +02:00
math-emu A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
media A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
memory A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
misc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
net net: check before dereferencing netdev_ops during busy poll 2020-04-06 19:17:35 +02:00
pcmcia A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ras A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rdma A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rxrpc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
scsi A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sdp A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
soc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sound A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
target A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
trace A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
uapi tcp: tcp_fragment() should apply sane memory limits 2020-04-06 18:57:16 +02:00
video A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
xen A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
Kbuild A750FXXU4CTBC 2020-03-27 21:51:54 +05:30