Non-bootable PC after using ASPI via Wine

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Non-bootable PC after using ASPI via Wine

Post by johne53 »

Many years ago I wrote a Windows program that needs a SCSI card. It addresses the SCSI card using ASPI. Unfortunately, when I run the app under Wine, I see some errors (all beginning with 'fixme:') which suggest that ASPI isn't yet fully implemented (and as such, the app doesn't work properly). However - much more worrying is the fact that after running this app I end up with a non-bootable system.

If I recover from this and try again, the same thing happens every time I run the app. It's 100% repeatable. If I comment out the lines that try to load the ASPI drivers, the problem goes away (although the app still doesn't work properly, of course).

Here's the output I see after trying to launch my app from a command line:-

Code: Select all

~/.wine/drive_c/Program Files/OMFI/> wine AVToolKit.exe
fixme:share:NetShareEnum Stub ((null) 502 0x50b024 -1 0x34fd70 0x50b030 (nil))
fixme:aspi:SendASPI32Command ASPI: Partially implemented SC_HA_INQUIRY for adapter 0.
fixme:aspi:SendASPI32Command ASPI: Partially implemented SC_HA_INQUIRY for adapter 1.
fixme:aspi:SendASPI32Command ASPI: Partially implemented SC_HA_INQUIRY for adapter 2.
fixme:aspi:ASPI_ExecScsiCmd Failed
fixme:aspi:ASPI_ExecScsiCmd Failed
fixme:aspi:ASPI_ExecScsiCmd Failed
fixme:aspi:ASPI_ExecScsiCmd command 0x25, no data transfer specified, but buflen is 8!!!
fixme:aspi:ASPI_ExecScsiCmd Failed
wine: Unhandled exception 0xe06d7363 at address 0x7b841df0 (thread 0009), starting debugger...
Unhandled exception: C++ exception(object = 0x0034d848, type = 0x5f4b3f50) in 32-bit code (0x7b841e83).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:7b841e83 ESP:0034d794 EBP:0034d808 EFLAGS:00200212( - 00 - -IA1)
EAX:7b82c2d1 EBX:7b8b10c0 ECX:00000000 EDX:00000008
ESI:0034d82c EDI:0034d7c0
Stack dump:
0x0034d794: 7bc41daf 00000002 bafa4a38 e06d7363
0x0034d7a4: 00000001 00000000 7b841df0 00000003
0x0034d7b4: 19930520 0034d848 5f4b3f50 001578f0
0x0034d7c4: bafa4a38 00110000 0034d810 0014d984
0x0034d7d4: 7bc3338f ffffffff 7bc896bc 0034d830
0x0034d7e4: 7bc42135 00110048 ffffff06 0034d820
Backtrace:
=>1 0x7b841e83 RaiseException+0x93() in kernel32 (0x0034d808)
2 0x7e893a1e _CxxThrowException+0x3e() in msvcrt (0x0034d838)
3 0x5f453a11 1266() in mfc42 (0x0034d84c)
4 0x5f45a66d in mfc42 (+0x5a66d) (0xbafa4a00)
5 0x00000000 (0x00000000)
0x7b841e83 RaiseException+0x93 in kernel32: subl $4,%esp
Modules:
Module Address Debug info Name (98 modules)
PE 350000- 362000 Deferred zlib1
PE 400000- 517000 Deferred avtoolkit
PE 520000- 5f9000 Deferred iconv
PE 10000000-100ee000 Deferred libxml2
PE 5f400000-5f4f2000 Export mfc42
PE 76080000-760e5000 Deferred msvcp60
ELF 7b800000-7b92a000 Export kernel32
\-PE 7b820000-7b92a000 \ kernel32
ELF 7bc00000-7bca5000 Deferred ntdll
\-PE 7bc10000-7bca5000 \ ntdll
ELF 7bf00000-7bf03000 Deferred
ELF 7df78000-7df9e000 Deferred netapi32
\-PE 7df80000-7df9e000 \ netapi32
ELF 7df9e000-7dfef000 Deferred libgcrypt.so.11
ELF 7dfef000-7e002000 Deferred libtasn1.so.3
ELF 7e002000-7e030000 Deferred libcrypt.so.1
ELF 7e030000-7e09e000 Deferred libgnutls.so.13
ELF 7e09e000-7e0cd000 Deferred libcups.so.2
ELF 7e0cd000-7e0ea000 Deferred imm32
\-PE 7e0d0000-7e0ea000 \ imm32
ELF 7e10e000-7e16e000 Deferred rpcrt4
\-PE 7e120000-7e16e000 \ rpcrt4
ELF 7e16e000-7e212000 Deferred ole32
\-PE 7e180000-7e212000 \ ole32
ELF 7e238000-7e26a000 Deferred uxtheme
\-PE 7e240000-7e26a000 \ uxtheme
ELF 7e26a000-7e27f000 Deferred midimap
\-PE 7e270000-7e27f000 \ midimap
ELF 7e27f000-7e2a5000 Deferred msacm32
\-PE 7e290000-7e2a5000 \ msacm32
ELF 7e2a5000-7e2bd000 Deferred msacm32
\-PE 7e2b0000-7e2bd000 \ msacm32
ELF 7e2bd000-7e37e000 Deferred libasound.so.2
ELF 7e391000-7e3c7000 Deferred winealsa
\-PE 7e3a0000-7e3c7000 \ winealsa
ELF 7e3c7000-7e3cc000 Deferred libxfixes.so.3
ELF 7e3cc000-7e3d5000 Deferred libxcursor.so.1
ELF 7e3d5000-7e3d8000 Deferred libxrandr.so.2
ELF 7e3d8000-7e3e0000 Deferred libxrender.so.1
ELF 7e3e0000-7e3e5000 Deferred libxdmcp.so.6
ELF 7e3e5000-7e3e8000 Deferred libxau.so.6
ELF 7e3e8000-7e4d4000 Deferred libx11.so.6
ELF 7e4d4000-7e4e2000 Deferred libxext.so.6
ELF 7e4e2000-7e4e7000 Deferred libxxf86vm.so.1
ELF 7e4e7000-7e4ff000 Deferred libice.so.6
ELF 7e4ff000-7e508000 Deferred libsm.so.6
ELF 7e515000-7e519000 Deferred libgpg-error.so.0
ELF 7e51b000-7e5ab000 Deferred winex11
\-PE 7e530000-7e5ab000 \ winex11
ELF 7e6b1000-7e6d1000 Deferred libexpat.so.1
ELF 7e6d1000-7e6fc000 Deferred libfontconfig.so.1
ELF 7e6fc000-7e710000 Deferred libz.so.1
ELF 7e710000-7e77a000 Deferred libfreetype.so.6
ELF 7e77a000-7e79b000 Deferred mpr
\-PE 7e780000-7e79b000 \ mpr
ELF 7e79b000-7e7d0000 Deferred winspool
\-PE 7e7a0000-7e7d0000 \ winspool
ELF 7e7d0000-7e871000 Deferred comdlg32
\-PE 7e7e0000-7e871000 \ comdlg32
ELF 7e871000-7e8d8000 Export msvcrt
\-PE 7e880000-7e8d8000 \ msvcrt
ELF 7e8d8000-7e904000 Deferred ws2_32
\-PE 7e8e0000-7e904000 \ ws2_32
ELF 7e904000-7e91e000 Deferred wsock32
\-PE 7e910000-7e91e000 \ wsock32
ELF 7e91e000-7e931000 Deferred libresolv.so.2
ELF 7e931000-7e950000 Deferred iphlpapi
\-PE 7e940000-7e950000 \ iphlpapi
ELF 7e950000-7ea12000 Deferred comctl32
\-PE 7e960000-7ea12000 \ comctl32
ELF 7ea12000-7ea6a000 Deferred shlwapi
\-PE 7ea20000-7ea6a000 \ shlwapi
ELF 7ea6a000-7eb73000 Deferred shell32
\-PE 7ea80000-7eb73000 \ shell32
ELF 7eb73000-7eb87000 Deferred lz32
\-PE 7eb80000-7eb87000 \ lz32
ELF 7eb87000-7eba0000 Deferred version
\-PE 7eb90000-7eba0000 \ version
ELF 7eba0000-7ec3b000 Deferred gdi32
\-PE 7ebb0000-7ec3b000 \ gdi32
ELF 7ec3b000-7ed7b000 Deferred user32
\-PE 7ec50000-7ed7b000 \ user32
ELF 7ed7b000-7ee08000 Deferred winmm
\-PE 7ed90000-7ee08000 \ winmm
ELF 7ee08000-7ee53000 Deferred advapi32
\-PE 7ee10000-7ee53000 \ advapi32
ELF 7ee53000-7ee6c000 Deferred wnaspi32
\-PE 7ee60000-7ee6c000 \ wnaspi32
ELF 7ef94000-7ef9f000 Deferred libnss_files.so.2
ELF 7ef9f000-7efa9000 Deferred libnss_nis.so.2
ELF 7efa9000-7efbf000 Deferred libnsl.so.1
ELF 7efbf000-7efc8000 Deferred libnss_compat.so.2
ELF 7efc8000-7efed000 Deferred libm.so.6
ELF b7ce8000-b7cec000 Deferred libdl.so.2
ELF b7cec000-b7e1e000 Deferred libc.so.6
ELF b7e1e000-b7e30000 Deferred libpthread.so.0
ELF b7e43000-b7f58000 Deferred libwine.so.1
ELF b7f5a000-b7f71000 Deferred ld-linux.so.2
Threads:
process tid prio (all id:s are in hex)
00000008 (D) C:\Program Files\OMFI\AVToolKit.exe
00000009 0 <==
0000000a
0000000b 0
0000000c
0000000f 0
0000000e 0
0000000d 0
00000010
00000012 0
00000011 0
Backtrace:
=>1 0x7b841e83 RaiseException+0x93() in kernel32 (0x0034d808)
2 0x7e893a1e _CxxThrowException+0x3e() in msvcrt (0x0034d838)
3 0x5f453a11 1266() in mfc42 (0x0034d84c)
4 0x5f45a66d in mfc42 (+0x5a66d) (0xbafa4a00)
5 0x00000000 (0x00000000)
I just wondered if that output might make sense to anyone here? I don't understand at all why my PC refuses to re-boot after the above errors.... :?: :?:
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Thu, May 1, 2008 at 10:34 AM, johne53 <[email protected]> wrote:
Many years ago I wrote a Windows program that needs a SCSI card. It addresses the SCSI card using ASPI. Unfortunately, when I run the app under Wine, I see some errors (all beginning with 'fixme:') which suggest that ASPI isn't yet fully implemented (and as such, the app doesn't work properly). However - much more worrying is the fact that after running this app I end up with a non-bootable system.
Are you running as root?
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Post by johne53 »

I wasn't actually - should I be?
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Thu, May 1, 2008 at 10:44 AM, johne53 <[email protected]> wrote:
I wasn't actually - should I be?





No. But wine shouldn't be able to lock up your system like that...What
version of wine? Is this program downloadable anywhere?
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Post by johne53 »

I downloaded it by following these instructions: http://www.winehq.org/site/download-deb about 2 days ago.

My own program can be downloaded here:-

http://www.avtoolkit.co.uk/downloaddemo.html

If you enter an email address and the access code OR1503

However, if you haven't got a SCSI card you might be wasting your time. Also, I'd strongly urge you not to try this unless you know how to recover from an unbootable PC.
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Thu, May 1, 2008 at 11:13 AM, johne53 <[email protected]> wrote:
I downloaded it by following these instructions: http://www.winehq.org/site/download-deb about 2 days ago.

My own program can be downloaded here:-

http://www.avtoolkit.co.uk/downloaddemo.html

If you enter an email address and the access code OR1503

However, if you haven't got a SCSI card you might be wasting your time. Also, I'd strongly urge you not to try this unless you know how to recover from an unbootable PC.





That's what VMs are for :-). Yeah, won't do much without SCSI...

Please file a bug at http://bugs.winehq.org. It would be very helpful
if you could write a small testcase program that triggers the bug, and
attach the source and binary to the bug.
Dan Kegel

Non-bootable PC after using ASPI via Wine

Post by Dan Kegel »

On Thu, May 1, 2008 at 8:49 AM, Austin English <[email protected]> wrote:
On Thu, May 1, 2008 at 10:44 AM, johne53 <[email protected]> wrote:
I wasn't actually - should I be?
No. But wine shouldn't be able to lock up your system like that...
Right, so it's not a Wine bug. It's some system bug that Wine triggers.
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Thu, May 1, 2008 at 12:30 PM, Dan Kegel <[email protected]> wrote:
On Thu, May 1, 2008 at 8:49 AM, Austin English <[email protected]> wrote:
On Thu, May 1, 2008 at 10:44 AM, johne53 <[email protected]> wrote:
I wasn't actually - should I be?
No. But wine shouldn't be able to lock up your system like that...
Right, so it's not a Wine bug. It's some system bug that Wine triggers.
The fact that the app itself doesn't work, however, is a wine bug
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Post by johne53 »

Just out of interest, did either of you manage (or even dare!) to reproduce it? It seems to overwrite the MBR from what I can tell (at least, I had to repair the MBR to get a bootable machine back).
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Thu, May 1, 2008 at 12:51 PM, johne53 <[email protected]> wrote:
Just out of interest, did either of you manage (or even dare!) to reproduce it? It seems to overwrite the MBR from what I can tell (at least, I had to repair the MBR to get a bootable machine back).





I tried in the vm, still booted fine.
David Gerard

Non-bootable PC after using ASPI via Wine

Post by David Gerard »

2008/5/1 johne53 <[email protected]>:
Many years ago I wrote a Windows program that needs a SCSI card. It addresses the SCSI card using ASPI. Unfortunately, when I run the app under Wine, I see some errors (all beginning with 'fixme:') which suggest that ASPI isn't yet fully implemented (and as such, the app doesn't work properly). However - much more worrying is the fact that after running this app I end up with a non-bootable system.
Here's an odd one that I had recently - I was using Exact Audio Copy
[*] with ASPI, and recently this stopped working (I have the page 0
bug). I switched to 'native 2000/XP interface' and it's fine now, at
least ripping new CDs ;-) I have no idea if this may be related at
all, but the mention of "ASPI" in your message caught my eye ...

[*] Anything can rip a new CD, but in my experience EAC and
libparanoia each do a decent job on different scratched-up CDs. I
haven't tried EAC on a scratched CD on the native 2000/XP interface
...


- d.
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Post by johne53 »

Austin - out of interest, do you see the same ASPI error messages? (in other words, does it get as far as attempting to load ASPI on your system?)
Ove Kaaven

Non-bootable PC after using ASPI via Wine

Post by Ove Kaaven »

Dan Kegel skrev:
On Thu, May 1, 2008 at 8:49 AM, Austin English <[email protected]> wrote:
On Thu, May 1, 2008 at 10:44 AM, johne53 <[email protected]> wrote:
I wasn't actually - should I be?
No. But wine shouldn't be able to lock up your system like that...
Right, so it's not a Wine bug. It's some system bug that Wine triggers.
That might of course depend on whether his disk is SATA (which is
basically SCSI as far as userspace is concerned) and whether his user
has write permissions to the device...
Dan Kegel

Non-bootable PC after using ASPI via Wine

Post by Dan Kegel »

On Thu, May 1, 2008 at 11:43 AM, Ove Kaaven <[email protected]> wrote:
No. But wine shouldn't be able to lock up your system like that...
Right, so it's not a Wine bug. It's some system bug that Wine triggers.
That might of course depend on whether his disk is SATA (which is basically
SCSI as far as userspace is concerned) and whether his user has write
permissions to the device...
Indeed. Users generally don't have write permission to the hard drive
on Linux, I think, so that would either be an unusual setup,
or a buggy one somehow.
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Post by johne53 »

The disk was actually a SCSI disk, connected by an Adaptec SCSI card (this is why I asked Austin if he saw the same ASPI error messages - you might not get them if there's no SCSI card present.)
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Thu, May 1, 2008 at 1:54 PM, johne53 <[email protected]> wrote:
Austin - out of interest, do you see the same ASPI error messages? (in other words, does it get as far as attempting to load ASPI on your system?)





fixme:aspi:SendASPI32Command ASPI: Partially implemented SC_HA_INQUIRY
for adapter 0.
fixme:aspi:SendASPI32Command ASPI: Partially implemented SC_HA_INQUIRY
for adapter 1.
err:aspi:SCSI_OpenDevice Failed to open device /dev/hda: Permission denied
err:aspi:SCSI_OpenDevice Failed to open device /dev/hdc: No medium found
err:aspi:SCSI_OpenDevice Failed to open device /dev/hda: Permission denied
err:aspi:SCSI_OpenDevice Failed to open device /dev/hdc: No medium found
johne53
Level 2
Level 2
Posts: 15
Joined: Thu May 01, 2008 10:22 am

Post by johne53 »

Interesting - your errors are subtlely different from mine.

Okay, there's an extra stage you might need to try. Inside the 'Utilities' folder you'll find an application called ASPI32.exe. This is a standard Adaptec utility for installing ASPI drivers. When I tried running it on my machine, ASPI32.exe told me that there was no SCSI adapter found (even though I do have one).

Unfortunately, I hadn't tried running my own app before I ran ASPI32.exe (so I don't know what errors I'd have seen if I'd never tried installing ASPI32). Maybe you could try running ASPI32.exe and see if your error messages then match mine.

It's possible that the problem could be with ASPI32.exe, rather than Linux or Wine.
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Non-bootable PC after using ASPI via Wine

Post by austin987 »

On Fri, May 2, 2008 at 12:34 AM, johne53 <[email protected]> wrote:
Interesting - your errors are subtlely different from mine.

Okay, there's an extra stage you might need to try. Inside the 'Utilities' folder you'll find an application called ASPI32.exe. This is a standard Adaptec utility for installing ASPI drivers. When I tried running it on my machine, ASPI32.exe told me that there was no SCSI adapter found (even though I do have one).

Unfortunately, I hadn't tried running my own app before I ran ASPI32.exe (so I don't know what errors I'd have seen if I'd never tried installing ASPI32). Maybe you could try running ASPI32.exe and see if your error messages then match mine.

It's possible that the problem could be with ASPI32.exe, rather than Linux or Wine.





I see the same...Well, it tells me no qualifying adaptec products, but
I have a feeling they mean no SCSI devices.
Locked