• O
    rcu: More info about potential deadlocks with rcu_read_unlock() · ce36f2f3
    Oleg Nesterov 提交于
    The comment above rcu_read_unlock() explains the potential deadlock
    if the caller holds one of the locks taken by rt_mutex_unlock() paths,
    but it is not clear from this documentation that any lock which can
    be taken from interrupt can lead to deadlock as well and we need to
    take rt_mutex_lock() into account too.
    
    The problem is that rt_mutex_lock() takes wait_lock without disabling
    irqs, and thus an interrupt taking some LOCK can obviously race with
    rcu_read_unlock_special() called with the same LOCK held.
    Signed-off-by: NOleg Nesterov <oleg@redhat.com>
    Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    ce36f2f3
rcupdate.h 41.6 KB