Re: GETOSPACE in Sound DMA handler, mmap [hack patch]

Jason T. Collins (dark@ksu.edu)
Thu, 23 Apr 1998 00:22:24 -0500


Hannu Savolainen wrote:
>
> Hi,
>
> I recall SNDCTL_DSP_GETOSPACE ioctl has always been disabled with mmap().
> At least it should be. The information returned by it is absolutely
> meaningless together with mmap() and it's a _MAJOR_ bug in Quake2 if it
> tries to use it. It's also a major error trying to fix the situation by
> removing this test from the driver.
>
> SNDCTL_DSP_GETOSPACE call is intended to be used with write(). It returns
> the number of bytes that can be written to the device without blocking. It
> has no defined meaning together with mmap.
>
> The call that Quake2 should use is SNDCTL_DSP_GETOPTR.

Hmmm. It was not disabled in 2.0.xx kernels which is probably why it
was/is being used by Q2. I discovered that this was the problem partly
by comparing the two versions of the sound driver call. I'll see if I
can get this to whoever is in charge of the Linux Q2 port, but if anyone
who sees this knows them go ahead and drop it by them because I'll have
to hunt them down and it may take me a while (finals are approaching, no
time for this computer stuff :))

Jason

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