[linux-cifs-client] cifs* files created when using Git

Michael Schutte m.schutte.jr at gmail.com
Sat Apr 5 14:47:51 GMT 2008


Hi CIFSers,

I’m suffering from a strange problem when using Git over CIFS (Linux
2.6.22 on the client machine, Samba 3.0.24/Linux 2.6.18 on the server):
Whenever Git updates the index file, which happens very frequently, a
file with a name matching cifs[0-9a-z]{2,4} appears.  This file contains
an exact copy of the index file itself.

I tried to investigate this matter using strace, but I didn’t get very
far—I can’t even tell if it is a problem on the server or on the client
side.  It seems to me that the mess is caused by Git temporarily
creating an “index.lock” file, writing to it, closing it, and renaming
it to “index”.  Interestingly, the rename() call takes about a second
every time, while everything else returns immediately.

To reproduce the problem, install Git and

	$ cd /some/mounted/cifs/share
	$ mkdir testrepo && cd testrepo
	$ git init
	$ touch testfile
	$ git status
	$ ls .git/cifs*

It happens every time here.  The cifs* files are never deleted
automatically.

I don’t use any unusual settings in smb.conf; it’s nearly unchanged from
Debian’s default configuration.  It could matter that I mount with
“serverino”; as I currently don’t have physical access to the machines,
debugging is painful.

I would be grateful for any ideas.  Please tell me if you need
additional information.

Thanks in advance,
-- 
Michael Schutte <m.schutte.jr at gmail.com>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 481 bytes
Desc: Digital signature
Url : http://lists.samba.org/archive/linux-cifs-client/attachments/20080405/3154de4b/attachment.bin


More information about the linux-cifs-client mailing list