This revised series contains a few clean-ups as requested by various people but no substantial changes. It is based on vfs/vfs-6.15.async.dir plus vfs/vfs-6.15.sysv: I dropped the change to sysv as it seemed pointless preserving them. I reviewed the mkdir functions in many (all?) filesystems and found a few that use d_instantiate() on an unlocked inode (after unlock_new_inode()) and also support export_operations. These could potentially call d_instantiate() on a directory inode which is already attached to an dentry, though making that happen would usually require guessing the filehandle correctly. I haven't tried to address those here, (this patch set doesn't make that situation any worse) but I may in the future. Thanks, NeilBrown [PATCH 1/6] Change inode_operations.mkdir to return struct dentry * [PATCH 2/6] hostfs: store inode in dentry after mkdir if possible. [PATCH 3/6] ceph: return the correct dentry on mkdir [PATCH 4/6] fuse: return correct dentry for ->mkdir [PATCH 5/6] nfs: change mkdir inode_operation to return alternate [PATCH 6/6] VFS: Change vfs_mkdir() to return the dentry.