http://bugs.winehq.org/show_bug.cgi?id=20071
Summary: DeleteFile() gives Error 87 for file created by mknod -m 644 msr c 202 0 Product: Wine Version: 1.1.29 Platform: PC URL: http://rh-software.com/ OS/Version: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: kernel32 AssignedTo: wine-bugs@winehq.org ReportedBy: ray@pobox.co.uk
Created an attachment (id=23629) --> (http://bugs.winehq.org/attachment.cgi?id=23629) Test Program Source, Binary and run log
SIV (http://rh-software.com/) needs to access MSRs which it now does by creating the /dev/cpu/0/msr devices using the mknod command, this works well 'till it tries to detele them when it gets an error 87 Invalid parameter return code. I have created the attached program to show this bug in DeleteFile(). I have tried to get round this by doing the CreateFile() myself. I have tried to find why this is failing, it seems to be in service/file.c within the routine static struct object *create_file().
http://bugs.winehq.org/show_bug.cgi?id=20071
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|kernel32 |-unknown Alias|mknod | Severity|major |normal
--- Comment #1 from Dmitry Timoshkov dmitry@codeweavers.com 2009-09-17 08:42:01 --- DeleteFile() is a Win32 API and has nothing to do with Linux devices.
http://bugs.winehq.org/show_bug.cgi?id=20071
--- Comment #2 from red-ray ray@pobox.co.uk 2009-09-17 09:30:48 --- (In reply to comment #1)
DeleteFile() is a Win32 API and has nothing to do with Linux devices.
I also ment to state that I can hapilly open, position and read these devices with CreateFile()/SetFilePointer()/ReadFile(), it's only when FILE_FLAG_DELETE_ON_CLOSE is specified there is a problem with CreateFile() which is probably why DeleteFile() fails.
http://bugs.winehq.org/show_bug.cgi?id=20071
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, testcase
http://bugs.winehq.org/show_bug.cgi?id=20071
Boris bstriker@ya.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bstriker@ya.ru
--- Comment #3 from Boris bstriker@ya.ru 2009-09-17 16:00:36 --- Tried the test program at my machine:
$ sudo rm -r /dev/cpu $ sudo su # wine noo.exe NOO - Delete failure of file created by /bin/mknod -m 644 msr c 202 0 NOO - Delete msr Success, Return Error Code 0 Success crw-r--r-- 1 root root 202, 0 2009-09-18 00:55 msr NOO - Delete msr Failure, Return Error Code 87 Invalid parameter NOO - done # exit $ ls -l /dev/cpu/0/msr crw-rw---- 1 root root 202, 0 2009-09-18 00:55 /dev/cpu/0/msr $ wine --version wine-1.1.29-83-gdad99e2
Hence, I confirm.
http://bugs.winehq.org/show_bug.cgi?id=20071
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |WONTFIX
--- Comment #4 from Alexandre Julliard julliard@winehq.org 2009-09-22 11:13:52 --- That's on purpose, DeleteFile doesn't delete devices on Windows either.
http://bugs.winehq.org/show_bug.cgi?id=20071
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Austin English austinenglish@gmail.com 2009-09-22 14:04:11 --- Closing.