On 6/24/06, Vitaliy Margolen <[EMAIL PROTECTED]> wrote:
You can ignore tag altogether. It's only enabled with a special registry key (on
windows). And drivers have no way nor need to verify the tag. So I think you can
just remove that trace. I will need to think something to stop of from crashing.
Or try using wine_dbgstr_a((char*)&Tag) instead.

ok. I have not made a real patch, but but if it pops up again i may try that.

PS: I wasn't sure if you were using my ntoskrnl implementation or not.
yes. I'm using: http://www.winehq.com/pipermail/wine-devel/2006-June/048583.html

If you are then could you post somewhere +ntoskrnl trace? That might be helpful.
Also it could be number of other things that this driver tries to do that 
ntoskrnl
has not implementation for.
It seems to work ok with autocad 2004. I think the problems are more
in the safedisc itself.

I have the +all log: (16 MB)
$ grep -i ':ntoskrnl:' all_log.txt
163439:0009:trace:ntoskrnl:NTOSKRNL_connect Connecting to ntoskrnl
163444:0009:trace:ntoskrnl:NTOSKRNL_connect Trying to start ntoskrnl
178596:wine_dbg_vprintf: debugstr buffer overflow (contents:
'000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 20 ')
200646:0009:trace:ntoskrnl:NTOSKRNL_connect Connecting to ntoskrnl

I just noticed, after my "fix" the there are no ntoskrnl traces in the
+all log.
so my fix was preventing the error by crashing ntoskrnl :-(

here is the log after remofing the tag altogether:
(I had to ctrl-c wine, autocad did not shutdown by itself, so I think
things are improving.)

$ grep -i ':ntoskrnl:' all_log_no_tag.txt
000f:trace:ntoskrnl:ExAllocatePoolWithTag (1 16 <tag>), semi-stub
000f:trace:ntoskrnl:ExFreePool (0x401fcc18)
000f:trace:ntoskrnl:ExAllocatePoolWithTag (1 94 <tag>), semi-stub
000f:trace:ntoskrnl:ExFreePool (0x4020d220)
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 168 <tag>), semi-stub
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 20 <tag>), semi-stub
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 120 <tag>), semi-stub
000f:trace:ntoskrnl:IoCreateDevice (0x4020d220, 0,
L"\\Device\\CdaC17BA", 51712, 0, 0, 0x407523a0)
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 24 <tag>), semi-stub
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 184 <tag>), semi-stub
000f:trace:ntoskrnl:IoCreateDevice Created device with handel 0x28
000f:trace:ntoskrnl:IoCreateSymbolicLink (L"\\DosDevices\\CdaC17BA" ->
L"\\Device\\CdaC17BA")
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 24 <tag>), semi-stub
000f:trace:ntoskrnl:ExAllocatePoolWithTag (1 36 <tag>), semi-stub
000f:trace:ntoskrnl:IoCreateDevice (0x4020d220, 0,
L"\\Device\\CdaC15BA", 61184, 0, 0, 0x40752140)
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 24 <tag>), semi-stub
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 184 <tag>), semi-stub
000f:trace:ntoskrnl:IoCreateDevice Created device with handel 0x34
000f:trace:ntoskrnl:IoCreateSymbolicLink (L"\\DosDevices\\CdaC15BA" ->
L"\\Device\\CdaC15BA")
000f:trace:ntoskrnl:ExAllocatePoolWithTag (0 24 <tag>), semi-stub
000f:trace:ntoskrnl:driver_control returned from call with status 00000000

does "semi-stub" mean that this call is not fully implemented ?

Jaap.


Reply via email to