On Fri, Aug 30, 2013 at 2:44 PM, Al Viro <v...@zeniv.linux.org.uk> wrote: > > Point... Actually, I wonder if _that_ could be a solution for ->d_name.name > printk races as well. Remember that story? You objected against taking > spinlocks in printk, no matter how specialized and how narrow the area > over which those are taken, but rcu_read_lock/rcu_read_unlock should be > OK... Something like %pd expecting dentry pointer and producing dentry > name. Sure, we still get garbage if we race with d_move(), but at least > it's a contained garbage that way...
Yes, that sounds quite reasonable. For printk, we'd probably want to limit the max size and depth to something fairly small (32 bytes, max four deep or something), and we cannot take cwd/root into account since it can happen from interrupts, but other than that it doesn't sound horrible. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/