Justus Winter, le Tue 10 Dec 2013 10:20:45 +0100, a écrit : > Quoting Samuel Thibault (2013-12-10 01:08:21) > > Justus Winter, le Mon 09 Dec 2013 15:16:35 +0100, a écrit : > > > + { > > > + pthread_mutex_lock (&(*np)->lock); > > > + netfs_nref (*np); /* Return a reference to the caller. */ > > > + } > > > pthread_mutex_unlock (&idport_ihash_lock); > > > > Did you check the lock ordering between these two? > > Yes. Previously, new_node added an unlocked node to the hash table and > unlocked the idport_ihash_lock. > > The use of locks in fakeroot is partially ordered: > > * If you need to pick up the idport_ihash_lock, you need to pick it > up first. > > * If you need two nodes locked, lock the parent node first. > > This patch was meant to ensure this for newly created nodes, the > follow up patch takes advantage of this to fix the locking in > netfs_S_dir_lookup.
Ok, then Ack. Samuel