Re: Problem in sys_vm86 or QuakeII on 2.2.6?

phazer (phazer@battlemech.ml.org)
Wed, 21 Apr 1999 06:01:05 -0400 (EDT)


Hi

I had the same problem a while ago but i don't remeber the details.
Try doing a 'make mrproper' and then rebuild your Kernel. i think that
fixed my problem. Also if you compiled your own SVGA lib, rebuild that and
see if you still get the errors.

-phazer

On Tue, 20 Apr 1999, Menion wrote:

>Have you gotten it working at all? Because this is also the standard
>symptom of a video misconfiguration. In fact, I have never seen quake2
>bomb on this when it was _not_ svgalib. Have you tried running the X
>version?
>
>Frederick W Reimer wrote:
>>
>> Hello,
>>
>> Word of warning - I'm not a kernel hacker, so forgive me if I give
>> incomplete information.
>>
>> Seems that QuakeII bombs on syscall 166 (sys_vm86) on my 2.2.6 based SMP
>> system (2 PII-350's).
>>
>> Here's the last strace line:
>> SYS_166(0x402f20f8, 0, 0x402f2288, 0x1150, 0x1000 <unfinished ...>
>> +++ killed by SIGSEGV +++
>>
>> with the kernel output of:
>> no vm86_info: BAD
>>
>> Looking at the definition for this syscall -
>> asmlinkage int sys_vm86(unsigned long subfunction, struct
>> vm86plus_struct * v86);
>>
>> it looks like quake2 is passing garbage to the function? Shouldn't it
>> have only two arguments (the subfunction and a pointer to a
>> vm86plus_struct structure)?
>>
>> It's actually bombing in save_v86_state, which gets called only from
>> return_to_32_bit, which is called from a few places. But, it only
>> prints this info if vm86_info is blank. Tracing the sys_vm86 call, it
>> looks like vm86_info is set during a VM86_ENTER or VM86_ENTER_NO_BYPASS
>> before save_v86_state could possibly get called.
>>
>> Was sys_vm86old once syscall 166 and sys_vm86 replaced it (Doesn't look
>> like it from the numbering of the two syscalls)? Can't think of any
>> other possibility other than quake2 is just passing the kernel garbage.
>> Is there any way I can trace it to give more info (like checking the
>> address that is passed as a pointer or something)? I'll try it on an
>> earlier kernel if needed.
>>
>> BTW, it works under software rendering (+set vid_ref softx). It only
>> bombs when I'm trying to use my Voodoo2 board. I have the 2.0 version
>> of the 3dfx.o module compiled under 2.2.6 installed.
>>
>> Also, it doesn't work with the ad1816 sound driver as a module (havn't
>> tried compiled in yet). It core dumps during a memset when initializing
>> the sound. Don't know if this is ad1816 specific, or just a generic
>> problem with quake2...
>>
>> Sorry for the long fractured post. It's late.
>>
>> Fred Reimer
>>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/