Problems copying files from DOS

Jeremy Allison jra at samba.org
Thu Feb 15 19:42:49 GMT 2007


On Thu, Feb 15, 2007 at 04:51:11PM +0100, Wolf Wiegand wrote:
> Hi,
> 
> I'm trying to install Windows XP using the unattended project, which, in 
> short terms, boots FreeDOS over PXE, copies all needed installation 
> files from a samba server, an then starts a local installation. On some 
> machines, some files cannot be copied. 
> 
> A level 10 trace of a failed file copy:
> 
> [2007/02/15 15:03:48, 5] smbd/filename.c:unix_convert(185)
>   unix_convert begin: name = os/winxp/I386/DRMCLIEN.DLL, dirpath = 
> os/winxp/I386, start = DRMCLIEN.DLL
> [2007/02/15 15:03:48, 10] smbd/mangle_hash2.c:is_mangled(276)
>   is_mangled DRMCLIEN.DLL ?
> [2007/02/15 15:03:48, 10] smbd/mangle_hash2.c:is_mangled_component(215)
>   is_mangled_component DRMCLIEN.DLL (len 12) ?
> [2007/02/15 15:03:48, 10] smbd/mangle_hash2.c:is_mangled(276)
>   is_mangled DRMCLIEN.DLL ?
> [2007/02/15 15:03:48, 10] smbd/mangle_hash2.c:is_mangled_component(215)
>   is_mangled_component DRMCLIEN.DLL (len 12) ?
> [2007/02/15 15:03:48, 10] smbd/mangle_hash2.c:is_mangled(276)
>   is_mangled DRMCLIEN.DLL ?
> [2007/02/15 15:03:48, 10] smbd/mangle_hash2.c:is_mangled_component(215)
>   is_mangled_component DRMCLIEN.DLL (len 12) ?
> [2007/02/15 15:03:48, 5] smbd/filename.c:unix_convert(335)
>   New file DRMCLIEN.DLL
> [2007/02/15 15:03:48, 3] smbd/reply.c:reply_getatr(913)
>   stat of os/winxp/I386/DRMCLIEN.DLL failed (No such file or directory)
> 
> The file does exist, however. Also, in following attempts to install the 
> same machine, this error will occur with different files each time. 
> There are some other condition which must be met for this error to 
> occur: We can only reproduce this using a 2.6.18.1 linux kernel, and an 
> Intel Gigabit NIC (e1000). Switching to a 2.4.32 kernel or a different 
> NIC seems to make the problem go away. I've checked this with samba 
> 3.0.22 and 3.0.23d.
> 
> The relevant code part seems to be in smbd/reply.c (905):
> 
> if (VALID_STAT(sbuf) || SMB_VFS_STAT(conn,fname,&sbuf) == 0){...
> 
> This check fails, leading to the above error.
> 
> Does anybody have an idea whether this a samba or a kernel issue, and 
> how this problem could be done away with?

This is a SMBgetatr request, for which the target must exist
(it's trying to return basic date and size info). The kernel is
telling Samba file pathname doesn't exist.

Is the case correct on the target pathname ?

Jeremy.


More information about the samba-technical mailing list