What ONTAP release, what Linux kernel, what NFS mount options?
----- Original Message ----- From: Dave Holland dh3@sanger.ac.uk To: Toasters toasters@mathworks.com Sent: Wed Jun 11 09:56:10 2008 Subject: strange behaviour, Linux and NFS on NTFS qtree
Hello,
I'm seeing some strange behaviour with a FAS3040 filer I have on evaluation at the moment. I have an NTFS-style qtree exported by NFS and CIFS. Debian Linux clients see odd behaviour relating to open() and stat64() system calls. This strace output from "vim" captures it in a nutshell:
uname({sys="Linux", node="acheron", ...}) = 0 stat64("ffff", 0xbfb4d030) = -1 ENOENT (No such file or directory) stat64("ffff", 0xbfb4d0b0) = -1 ENOENT (No such file or directory) access("ffff", W_OK) = -1 ENOENT (No such file or directory) open("ffff", O_RDONLY) = -1 ENOENT (No such file or directory) readlink("ffff", 0xbfb4c7cc, 1023) = -1 ENOENT (No such file or directory) open(".ffff.swp", O_RDONLY) = -1 ENOENT (No such file or directory) open(".ffff.swp", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EACCES (Permission denied) stat64(".ffff.swp", {st_mode=S_IFREG|0777, st_size=0, ...}) = 0
Note that the open(O_RDWR...) call fails with EACCES; but the following stat64() call succeeds. The file ffff.swp was created on disk despite the reported failure of the open() call.
This behaviour is seen using "vim" to edit files, and causes an error message about the swap file being present (due to the swap file being created even though the open() return value implies it was not).
Trying the same "vim" command on a Tru64 NFS client, correct behaviour is seen: the open(O_RDWR...) succeeds and a filehandle is returned.
I asked Netapp support and they suggested a mixed-style qtree. But I've read on this list about the last-change-wins problem on permissions and ACLs, and I'd really rather not go there.
I've worked through the troubleshooting guide: http://now.netapp.com/NOW/knowledge/docs/olio/guides/ontap_troubleshooting with no luck.
Is there anything else I can configure (on the filer or on the clients) to avoid this problem? Thanks for any suggestions!
Dave