On Thu, Mar 21, 2013 at 01:15:08PM -0700, Linus Torvalds wrote:
> On Thu, Mar 21, 2013 at 12:29 PM, Al Viro <[email protected]> wrote:
> >
> > #0 oddity aside, that looks very much like directory aliased by two
> > different
> > dentries. Try to add
> > BUG_ON(p1->d_inode == p2->d_inode);
> > just before
> > mutex_lock(&p1->d_inode->i_sb->s_vfs_rename_mutex);
> > and see if it triggers.
>
> Don't do a BUG_ON(), instead do something like
>
> if (WARN_ON_ONCE(p1->d_inode == p2->d_inode)) {
> printk("pi=%s p2=%s\n", pi->d_name, p2->d_name);
> mutex_lock_nested(&p1->d_inode->i_mutex, I_MUTEX_PARENT);
> return NULL;
> }
those are qstr's, so I used d_name.name, right ?
> so that we actually see where it is. I'm assuming it's some sysfs oddity
> again..
I'd be surprised actually, I've got sysfs excluded from its list of victim
files,
due to unrelated issues still unresolved. So unless it followed a symlink into
sys from somewhere in /proc or /dev...
It took a few hours to reproduce last time, I'll increase the number of child
processes to see if I can trigger it faster now that I have the debug stuff in
there.
Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/