rcu: don't process callbacks when holding a rcu_read_lock()
authorJuergen Gross <jgross@suse.com>
Thu, 26 Mar 2020 11:46:11 +0000 (12:46 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 26 Mar 2020 11:46:11 +0000 (12:46 +0100)
commitcef21210fb133038ba399a3a98228f0f9f277c6f
treed33dc429514ca52a46585c5ec6510e6b39d7a58e
parent53594c7bd1970bd5e30d24140a204e9ffff44e01
rcu: don't process callbacks when holding a rcu_read_lock()

Some keyhandlers are calling process_pending_softirqs() while holding
a rcu_read_lock(). This is wrong, as process_pending_softirqs() might
activate rcu calls which should not happen inside a rcu_read_lock().

For that purpose modify process_pending_softirqs() to not allow rcu
callback processing when a rcu_read_lock() is being held.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
xen/common/softirq.c