Re: [PATCH RFC] NFSD: fix cannot umounting mount points under pseudo root

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 01, 2015 at 12:23:33PM +1000, NeilBrown wrote:
> > What kind of consistency warranties do callers expect, BTW?  You do realize
> > that between iterate_dir() and callbacks an entry might have been removed
> > and/or replaced?
> 
> For READDIR_PLUS, lookup_one_len is called on each name and it requires
> i_mutex, so the code currently holds i_mutex over the whole sequence.
> This is triggering a deadlock.

Yes, I've seen the context.  However, you are _not_ holding it between
actual iterate_dir() and those callbacks, which opens a window when
directory might have been changed.

Again, what kind of consistency is expected by callers?  Are they ready to
cope with "there's no such entry anymore" or "inumber is nothing like
what we'd put in ->ino, since it's no the same object" or "->d_type is
completely unrelated to what we'd found, since the damn thing had been
removed and created from scratch"?
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux