* emu10k1 moudle oops.
@ 1999-08-15 19:40 frodo1
0 siblings, 0 replies; only message in thread
From: frodo1 @ 1999-08-15 19:40 UTC (permalink / raw)
To: linux-sound
I am currently running suse 6.1 with kernel version 2.2.11-ac3 and the
sblive moudle emu10k1. When running the following program (which is part
of SDL .10 - http://www.devolution.com/~slouken/SDL/):
/* Program to load a wave file and loop playing it using SDL sound */
/* loopwaves.c is much more robust in handling WAVE files --
This is only for simple WAVEs
*/
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include "SDL.h"
#include "SDL_audio.h"
struct {
SDL_AudioSpec spec;
Uint8 *sound; /* Pointer to wave data */
Uint32 soundlen; /* Length of wave data */
int soundpos; /* Current play position */
} wave;
void fillerup(void *unused, Uint8 *stream, int len)
{
Uint8 *waveptr;
int waveleft;
/* Set up the pointers */
waveptr = wave.sound + wave.soundpos;
waveleft = wave.soundlen - wave.soundpos;
/* Go! */
while ( waveleft <= len ) {
SDL_MixAudio(stream, waveptr, waveleft, SDL_MIX_MAXVOLUME);
stream += waveleft;
len -= waveleft;
waveptr = wave.sound;
waveleft = wave.soundlen;
wave.soundpos = 0;
}
SDL_MixAudio(stream, waveptr, len, SDL_MIX_MAXVOLUME);
wave.soundpos += len;
}
static int done = 0;
void poked(int sig)
{
done = 1;
}
main(int argc, char *argv[])
{
/* Load the SDL library */
if ( SDL_Init(SDL_INIT_AUDIO) < 0 ) {
fprintf(stderr, "Couldn't initialize SDL: %s\n",SDL_GetError());
exit(1);
}
atexit(SDL_Quit);
if ( argv[1] = NULL ) {
fprintf(stderr, "Usage: %s <wavefile>\n", argv[0]);
exit(1);
}
/* Load the wave file into memory */
if ( SDL_LoadWAV(argv[1],
&wave.spec, &wave.sound, &wave.soundlen) = NULL ) {
fprintf(stderr, "Couldn't load %s: %s\n",
argv[1], SDL_GetError());
exit(1);
}
wave.spec.callback = fillerup;
/* Set the signals */
#ifdef SIGHUP
signal(SIGHUP, poked);
#endif
signal(SIGINT, poked);
#ifdef SIGQUIT
signal(SIGQUIT, poked);
#endif
signal(SIGTERM, poked);
/* Initialize fillerup() variables */
if ( SDL_OpenAudio(&wave.spec, NULL) < 0 ) {
fprintf(stderr, "Couldn't open audio: %s\n", SDL_GetError());
SDL_FreeWAV(wave.sound);
exit(2);
}
SDL_PauseAudio(0);
/* Let the audio run */
while ( ! done )
SDL_Delay(1000);
/* Clean up on signal */
SDL_CloseAudio();
SDL_FreeWAV(wave.sound);
exit(0);
}
I recive an oops which i use ksymoops, the output is as follows:
WARNING: This version of ksymoops is obsolete.
WARNING: The current version can be obtained from ftp://ftp.ocs.com.au/pub/ksymoops
Options used: -V (default)
-o /lib/modules/2.2.11-ac3/ (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-m /usr/src/linux/System.map (default)
-c 1 (default)
You did not tell me where to find symbol information. I will assume
that the log matches the kernel and modules that are running right now
and I'll use the default options above for symbol resolution.
If the current kernel and/or modules do not match the log, you can get
more accurate output by telling me the kernel version and where to find
map, modules, ksyms etc. ksymoops -h explains the options.
Oops: 0000
CPU: 0
EIP: 0010:[<d08455d6>]
EFLAGS: 00010202
eax: 00000000 ebx: d0850000 ecx: c2456000 edx: ccac5620
esi: ccac5620 edi: c2456000 ebp: c1633f28 esp: c1633f18
ds: 0018 es: 0018 ss: 0018
Process loopwave (pid: 8213, process nr: 46, stackpage¡633000)
Stack: 00000003 00000004 c1633fa8 00000023 00000000 c012dc57 ccac5620
c2456000
00000023 00000004 caa21758 00000023 00000145 00000003 c1632000
7fffffff
c2456000 c2456000 c012e128 00000004 c1633fa8 c1633fa4 c1632000
00000000
Call Trace: [<c012dc57>] [<c012e128>] [<c0124ab7>] [<c0108ee4>]
Code: 8b 40 1c 83 c0 4c 85 ff 74 0f 85 c0 74 0b 57 50 56 e8 ec 83
>>EIP: d08455d6 <mod_firmware_load+70b6/????>
Trace: c012dc57 <do_select+133/214>
Trace: c012e128 <sys_select+3f0/548>
Trace: c0124ab7 <sys_write+db/100>
Trace: c0108ee4 <system_call+34/40>
Code: d08455d6 <mod_firmware_load+70b6/????> 00000000 <_EIP>: <=Code: d08455d6 <mod_firmware_load+70b6/????> 0: 8b 40 1c movl 0x1c(%eax),%eax <=Code: d08455d9 <mod_firmware_load+70b9/????> 3: 83 c0 4c addl $0x4c,%eax
Code: d08455dc <mod_firmware_load+70bc/????> 6: 85 ff testl %edi,%edi
Code: d08455de <mod_firmware_load+70be/????> 8: 74 0f je d08455ef <mod_firmware_load+70cf/????>
Code: d08455e0 <mod_firmware_load+70c0/????> a: 85 c0 testl %eax,%eax
Code: d08455e2 <mod_firmware_load+70c2/????> c: 74 0b je d08455ef <mod_firmware_load+70cf/????>
Code: d08455e4 <mod_firmware_load+70c4/????> e: 57 pushl %edi
Code: d08455e5 <mod_firmware_load+70c5/????> f: 50 pushl %eax
Code: d08455e6 <mod_firmware_load+70c6/????> 10: 56 pushl %esi
Code: d08455e7 <mod_firmware_load+70c7/????> 11: e8 ec 83 00 00 call d084d9d8 <END_OF_CODE+f4b8/????>
4 warnings issued. Results may not be reliable.
Sincerly,
Michael
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~1999-08-15 19:40 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
1999-08-15 19:40 emu10k1 moudle oops frodo1
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.