If a function needs both a spinlock and the RCU read lock, is there a best order in which they should be taken? For instance, is: spin_lock(&my_lock); rcu_read_lock(); ... rcu_read_unlock(); spin_unlock(&my_lock); better than: rcu_read_lock(); spin_lock(&my_lock); ... spin_unlock(&my_lock); rcu_read_unlock(); And does it make any different if spin_lock_irq*() is used? In fact, should spin_lock_irq*() imply rcu_read_lock()? Given that the current task can't be preempted if there can be no interrupt to do the preempting? David -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html