David Woodhouse: > This patch fixes it by locking the directory's i_mutex again before > calling the filldir functions. The original deadlocks which commit ::: An entry may be removed between the first mutex_unlock and the second mutex_lock. In this case, lookup_one_len() in compose_entry_fh() will return a negative dentry. Currently the inode test (positive/negative) is done AFTER fh_compose(). Isn't it better to test it BEFORE fh_compose()? compose_entry_fh() { ::: dchild = lookup_one_len(name, dparent, namlen); if (IS_ERR(dchild)) return 1; if (d_mountpoint(dchild) || fh_compose(fhp, exp, dchild, &cd->fh) != 0 || !dchild->d_inode) rv = 1; ::: } J. R. Okajima -- 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