diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2010-07-07 11:53:22 +0400 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2010-07-07 11:53:22 +0400 |
commit | 975a85f42c985b87533fd7cbfcdfe65ca243a94e (patch) | |
tree | db1ba139e7add2ae3648493330cb31f6e1b6c182 /winsup/cygwin/syscalls.cc | |
parent | efc428827bd2f9e254d08be2b7a24f65fac2731a (diff) |
* syscalls.cc (unlink_nt): Disable try_to_bin for netapp drives.
Explain why.
Diffstat (limited to 'winsup/cygwin/syscalls.cc')
-rw-r--r-- | winsup/cygwin/syscalls.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index 8ba0af29d..ac1fea0d2 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -554,8 +554,12 @@ unlink_nt (path_conv &pc) NFS implements its own mechanism to remove in-use files which looks quite similar to what we do in try_to_bin for remote files. - That's why we don't call try_to_bin on NFS. */ - if (!pc.fs_is_nfs ()) + That's why we don't call try_to_bin on NFS. + + Netapp filesystems don't understand the "move and delete" method + at all and have all kinds of weird effects. Just setting the delete + dispositon usually works fine, though. */ + if (!pc.fs_is_nfs () && !pc.fs_is_netapp ()) bin_stat = move_to_bin; if (!pc.isdir () || pc.isremote ()) status = NtOpenFile (&fh, access, &attr, &io, |