Bug locating path for linux_mkdir
Steven Hartland
killing at multiplay.co.uk
Thu Jul 13 03:02:34 UTC 2006
When a linux app calls mkdir if the call has a trailing / then
it can fail unexpectedly e.g
1. mkdir( '/root/.test', 511 )
2. mkdir( '/root/.test/test2/', 511 )
If the above is run in sequence #1 succeeds yet #2 fails.
The reason is #1 is operating in compat space where as
#2 reverts to operating in standard space.
Changing #2 to:
mkdir( '/root/.test/test2', 511 )
Ensures the correct behaviour but obviously #2 should work
correctly without change.
A change to linux_file.c -> linux_mkdir to ensure no trailing
/ exists before calling LCONVPATHCREAT fixes the issue but
I believe the actual error is in vfs_lookup.c =>
kern_alternate_path
Steve
================================================
This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it.
In the event of misdirection, illegible or incomplete transmission please telephone +44 845 868 1337
or return the E.mail to postmaster at multiplay.co.uk.
More information about the freebsd-emulation
mailing list