Re: QuakeII and 2.1.95

Jason T. Collins (dark@ksu.edu)
Sat, 11 Apr 1998 15:14:30 -0500


Dominik Weis wrote:
>
> I am not able to plaq quake2 with 2.1.95. I think the sound configuration
> is O.K. because I don't have problems with other programs that are using
> sound. Quake was working fine with 2.0.33. I get that error messages:
>
> ------- sound initialization -------
> GETOSPACE: Invalid argument Um, can't
> do GETOSPACE?
> ==== ShutdownGame ====
>
> ------- sound initialization -------
> Cmd_AddCommand: play already defined
> Cmd_AddCommand: stopsound already defined
> Cmd_AddCommand: soundlist already defined
> Cmd_AddCommand: soundinfo already defined
> /dev/dsp: Bad file number
> Could not reset /dev/dsp
> ==== ShutdownGame ====
> Error: FS_Read: 0 bytes read
> recursive shutdown
>
> I would like to use 2.1.95 because I have a SMP board with 2 CPU's
> Thanx for any help.

This is a problem I have already worked around, though I don't
understand all of the issues so this might break something else (I have
a lot of other sound using programs, however, and they all seem to work
fine with this patch).

Change the following code in linux/drivers/sound/audio.c:
near line 733:
if (dmap->mapping_flags & DMA_MAP_MAPPED)
return -EINVAL;

change to:
if (dmap->mapping_flags & DMA_MAP_MAPPED) {
printk( KERN_WARNING "GETOSPACE: DMA_MAP_MAPPED set\n");
/* return -EINVAL; */
}

The printing of the kernel warning is of course, optional, but I am
doing that just in case I find a program that breaks when this behavior
is engaged.

There was no such case in GETOSPACE in the older Linux kernels (2.0.xx)
but since roughly 2.1.8x or so I believe I have had to work around
this. Also you may find module problems with sound if you have a SB
card in new kernels. I have a P.O.S. (TM) MAD16 card however so I don't
have any problems, besides the usual kmalloc request failures every so
often for the 64k sound buffer. I think the hardcore kernel guys are
already dealing with the kernel memory fragmentation issue however.

Jason

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu