[alsa-devel] Interrupts and kmalloc in alsa modules
Ciaccia
ciacciax at yahoo.com
Wed Apr 11 00:32:55 CEST 2007
Hi Lee,
Your guess is correct. The buffers are allocated in
the trigger callback, I attached the module source to
the my email but it got lost...?!?
Sorry for that, maybe this time it's better:
http://www.pecore.ch/test/ep93xx-i2s.c.txt
Thanks again
Andrea
--- Lee Revell <rlrevell at joe-job.com> wrote:
> On 4/10/07, Ciaccia <ciacciax at yahoo.com> wrote:
> > Could someone of you explain to me why I have to
> > enable the interrupts before calling kmalloc? The
> > strange thing is that the module never explicitly
> > turns them off (I attached the file to the mail)
> >
>
> I guess you're allocating memory in the trigger
> callback which is
> atomic meaning that the ALSA middle layer always
> calls it with
> interrupts disabled. It's a bug to call a function
> that can sleep
> with interrupts disabled.
>
> The standard way to do it is to allocate your
> buffers in a callback
> that can sleep like prepare. See numerous examples
> in other ALSA
> drivers.
>
> Of course without seeing your code, this is all
> guesswork...
>
> Lee
>
____________________________________________________________________________________
It's here! Your new message!
Get new email alerts with the free Yahoo! Toolbar.
http://tools.search.yahoo.com/toolbar/features/mail/
More information about the Alsa-devel
mailing list