lkml.org 
[lkml]   [1996]   [Apr]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectLinux Sound ioctls? 1.3.8x

Kernel Sound hackers,

I have been trying to get the a simple WAV file player working, I
downloaded a package from sunsite, but never could get it to work either.
I'm not sure if it kernel related or sound driver related.

The problem is, anytime I call an ioctl with SNDCTL_* requests, I only
get a Segfault and no real reason why is appearent.

Is case it matters,gcc 2.7.0 on a pentium 90.

Sample program and strace...

#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/soundcard.h>


int main()
{

int speed;
int audiodev;


audiodev= open("/dev/dsp", O_RDWR);

speed = ioctl( audiodev, SNDCTL_DSP_SPEED, 11500);

printf("Audio Playback speed set to %d\n", speed);

return 0;
}


strace a.out | more
open("", O_RDONLY) = 3
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE, 3, 0) = 0x40006000
close(3) = 0
mprotect(0x40000000, 17899, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x8000000, 1482, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
getuid() = 0
geteuid() = 0
getgid() = 0
getegid() = 0
stat("/etc/ld.so.cache", {st_mode=S_IFREG|0644, st_size=3477, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY) = 3
mmap(0, 3477, PROT_READ, MAP_SHARED, 3, 0) = 0x40007000
close(3) = 0
open("/lib/libc.so.5.0.9", O_RDONLY) = 3
open("/dev/zero", O_RDONLY) = 4
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 720896, PROT_NONE, MAP_PRIVATE, 4, 0) = 0x40008000
mmap(0x40008000, 489361, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3,
0) = 0x40008000
mmap(0x40080000, 19860, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x77000) = 0x40080000
mmap(0x40085000, 205176, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0) = 0x40085000
close(4) = 0
close(3) = 0
mprotect(0x40008000, 489361, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
munmap(0x40007000, 3477) = 0
mprotect(0x8000000, 1482, PROT_READ|PROT_EXEC) = 0
mprotect(0x40008000, 489361, PROT_READ|PROT_EXEC) = 0
mprotect(0x40000000, 17899, PROT_READ|PROT_EXEC) = 0
SYS_136(0, 0x1, 0x4, 0x40000000, 0x40001df0) = 0
brk(0) = 0x80016a4
open("/dev/dsp", O_RDWR) = 3
ioctl(3, 0xc0045002 <unfinished ...>
+++ killed by SIGSEGV +++




\
 
 \ /
  Last update: 2005-03-22 13:37    [W:0.038 / U:0.184 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site