10 Apr
2007
10 Apr
'07
11:59 p.m.
On 4/10/07, Ciaccia ciacciax@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