Hi,
I've not been able to get the kernel thread tests working on windows. The only thing I've found is that changing thread.c:
/* simulate a call to set_test_val(10) */ #if 0 stack = (int *)ctx.Esp; stack[-1] = 10; stack[-2] = ctx.Eip; ctx.Esp -= 2 * sizeof(int *); ctx.Eip = (DWORD)set_test_val; #endif
or even
#if 0 ctx.Eip = (DWORD)set_test_val; #endif
makes the test run instead of crashing. They still fail, but only for the last ok().
Unfortunatly this is way over my head. So I'd appreciate if someone could have a look.
What worries me (maybe needless) is that the test runs OK on Wine. So either we're way better or we implement things differently.
Cheers,
Paul.
Paul Vriens wrote:
Hi,
I've not been able to get the kernel thread tests working on windows. The only thing I've found is that changing thread.c:
/* simulate a call to set_test_val(10) */
#if 0 stack = (int *)ctx.Esp; stack[-1] = 10; stack[-2] = ctx.Eip; ctx.Esp -= 2 * sizeof(int *); ctx.Eip = (DWORD)set_test_val; #endif
or even
#if 0 ctx.Eip = (DWORD)set_test_val; #endif
makes the test run instead of crashing. They still fail, but only for the last ok().
Unfortunatly this is way over my head. So I'd appreciate if someone could have a look.
What worries me (maybe needless) is that the test runs OK on Wine. So either we're way better or we implement things differently.
Cheers,
Paul.
is it still the case with latest CVS ? A+
* On Thu, 17 Nov 2005, Eric Pouech wrote:
- Paul Vriens wrote:
I've not been able to get the kernel thread tests working on windows. The only thing I've found is that changing thread.c:
/* simulate a call to set_test_val(10) */
#if 0 stack = (int *)ctx.Esp; stack[-1] = 10; stack[-2] = ctx.Eip; ctx.Esp -= 2 * sizeof(int *); ctx.Eip = (DWORD)set_test_val; #endif
makes the test run instead of crashing.
What worries me (maybe needless) is that the test runs OK on Wine. So either we're way better or we implement things differently.
is it still the case with latest CVS ?
you mean with latest Winetest-*.exe package? yes it is still present. [1] if you look at the "kernel32:thread" line you'll notice all OSes crashing. strange enough is the fact, that some win98s don't crash. [2] maybe that are those which runs under Qemu emulator? (w98.ie50.dx61 and w98.ie6.dx81)
[1] http://test.winehq.org/data/200511171000/ [2] http://test.winehq.org/data/200511161000/#Win98
- On Thu, 17 Nov 2005, Eric Pouech wrote:
- Paul Vriens wrote:
I've not been able to get the kernel thread tests working on windows. The only thing I've found is that changing thread.c:
/* simulate a call to set_test_val(10) */
#if 0 stack = (int *)ctx.Esp; stack[-1] = 10; stack[-2] = ctx.Eip; ctx.Esp -= 2 * sizeof(int *); ctx.Eip = (DWORD)set_test_val; #endif
makes the test run instead of crashing.
What worries me (maybe needless) is that the test runs OK on Wine. So either we're way better or we implement things differently.
is it still the case with latest CVS ?
you mean with latest Winetest-*.exe package? yes it is still present. [1] if you look at the "kernel32:thread" line you'll notice all OSes crashing. strange enough is the fact, that some win98s don't crash. [2] maybe that are those which runs under Qemu emulator? (w98.ie50.dx61 and w98.ie6.dx81)
[1] http://test.winehq.org/data/200511171000/ [2] http://test.winehq.org/data/200511161000/#Win98
I first though that maybe it has to do with running the tests on VMware (most of my test results on test.winehq.org are from VMware images), but my WinXP box at home also fails.
And as Saulius already mentioned, the current output on test.winehq.org is with latest CVS (including your fix for the set_test_val routine).
Paul.
Am Freitag, den 18.11.2005, 02:51 +0200 schrieb Saulius Krasuckas:
strange enough is the fact, that some win98s don't crash. [2] maybe that are those which runs under Qemu emulator? (w98.ie50.dx61 and w98.ie6.dx81)
qemu is correct.
On Thu, 2005-11-17 at 13:51 +0100, Paul Vriens wrote:
Hi,
I've not been able to get the kernel thread tests working on windows. The only thing I've found is that changing thread.c:
/* simulate a call to set_test_val(10) */
#if 0 stack = (int *)ctx.Esp; stack[-1] = 10; stack[-2] = ctx.Eip; ctx.Esp -= 2 * sizeof(int *); ctx.Eip = (DWORD)set_test_val; #endif
or even
#if 0 ctx.Eip = (DWORD)set_test_val; #endif
makes the test run instead of crashing. They still fail, but only for the last ok().
Unfortunatly this is way over my head. So I'd appreciate if someone could have a look.
What worries me (maybe needless) is that the test runs OK on Wine. So either we're way better or we implement things differently.
http://cvs.winehq.org/patch.py?id=21337
so we were better after all :-)
Paul.