Home
last modified time | relevance | path

Searched hist:ba6c05928dcafc7e0a0c8e4ee6a293ba47190fd4 (Results 1 – 3 of 3) sorted by relevance

/openbmc/linux/fs/nfs/
H A Dunlink.cdiff ba6c05928dcafc7e0a0c8e4ee6a293ba47190fd4 Fri Aug 30 11:24:25 CDT 2013 Trond Myklebust <Trond.Myklebust@netapp.com> NFS: Ensure that rmdir() waits for sillyrenames to complete

If an NFS client does

mkdir("dir");
fd = open("dir/file");
unlink("dir/file");
close(fd);
rmdir("dir");

then the asynchronous nature of the sillyrename operation means that
we can end up getting EBUSY for the rmdir() in the above test. Fix
that by ensuring that we wait for any in-progress sillyrenames
before sending the rmdir() to the server.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
H A Ddir.cdiff ba6c05928dcafc7e0a0c8e4ee6a293ba47190fd4 Fri Aug 30 11:24:25 CDT 2013 Trond Myklebust <Trond.Myklebust@netapp.com> NFS: Ensure that rmdir() waits for sillyrenames to complete

If an NFS client does

mkdir("dir");
fd = open("dir/file");
unlink("dir/file");
close(fd);
rmdir("dir");

then the asynchronous nature of the sillyrename operation means that
we can end up getting EBUSY for the rmdir() in the above test. Fix
that by ensuring that we wait for any in-progress sillyrenames
before sending the rmdir() to the server.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
/openbmc/linux/include/linux/
H A Dnfs_fs.hdiff ba6c05928dcafc7e0a0c8e4ee6a293ba47190fd4 Fri Aug 30 11:24:25 CDT 2013 Trond Myklebust <Trond.Myklebust@netapp.com> NFS: Ensure that rmdir() waits for sillyrenames to complete

If an NFS client does

mkdir("dir");
fd = open("dir/file");
unlink("dir/file");
close(fd);
rmdir("dir");

then the asynchronous nature of the sillyrename operation means that
we can end up getting EBUSY for the rmdir() in the above test. Fix
that by ensuring that we wait for any in-progress sillyrenames
before sending the rmdir() to the server.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>