mkstemp fails on cifs linux-2.6.31-rc1 / samba-3.3.6

Wilhelm Meier <[email protected]>
Newsgroups gmane.linux.file-systems.cifs
Message-ID <[email protected]>
Hi,

I made a simple test with cifs in linux-2.6.31-rc1 to see if the so called 
kmail-problem (cifs-user-homes are totally unusable for kmail-mail-cache) 
still remains. Than I ran into a strange problem using "sed -i <command> <file-
on-cifs>". "sed" uses mkstemp libc-funktion and fails with EEXIST, writing 
therefore tons of files onto the cifs-share.

You can reproduce it with:

strace mktemp -p . abcXXXXXX 2>&1 | more

giving

stat64(".", {st_mode=S_IFDIR|0700, st_size=0, ...}) = 0
open("./abcUJcKWM", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EEXIST (File exists)
stat64(".", {st_mode=S_IFDIR|0700, st_size=0, ...}) = 0
open("./abcUGJaiA", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EEXIST (File exists)
stat64(".", {st_mode=S_IFDIR|0700, st_size=0, ...}) = 0
open("./abcWfKacs", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EEXIST (File exists)
stat64(".", {st_mode=S_IFDIR|0700, st_size=0, ...}) = 0
open("./abcBaGjWM", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EEXIST (File exists)

This is the same on 2.6.31-rc1-git6.

This is not the case in 2.6.26-2-vserver-686 (debian).

The Samba-Server is lenny with samba-enterprise:
kmux-fs:/# dpkg -l | grep samba
ii  sernet-samba                    3.3.6-24                 a LanManager-like 
file and printer server fo
ii  sernet-samba-common             3.3.6-24                 Samba common files 
used by both the server a
ii  sernet-samba-keyring            1.1                      GnuPG archive 
keys of the SerNet Samba archi

If I change Samba to the lenny-version

ii  samba                           2:3.2.5-4lenny6          a LanManager-like 
file and printer server fo
ii  samba-common                    2:3.2.5-4lenny6          Samba common files 
used by both the server a

the described test-case is fine.


-- 
Wilhelm
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.