On Tue, 21 Apr 2009, Oleg Nesterov wrote: > > > (You do rcu_read_unlock() earlier, but that's okay.) > > Yes, but unless we have a "strong" reason, it is better to take > fs->lock first. rcu_read_lock() is free, but disables preemption. .. but so does taking a spinlock. So it shouldn't matter. We could play games with that (the same way I think we have some games for large-system irq latency with '__raw_spin_lock_flags()' on ia64), but that makes sense only when you have lots of CPU's and expect irq latency to suffer. And it doesn't tend to make sense for preemption latency, because if you have so many CPU's that you have lots of spinning on locks, you would normally not really care deeply about preemption (sure, in theory it's a real-time thing, in practice I doubt you'll find anybody who cares). Linus -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html