[alsa-devel] Improving or replacing snd_printk()

Alan Stern stern at rowland.harvard.edu
Fri May 31 17:33:44 CEST 2013

On Fri, 31 May 2013, Takashi Iwai wrote:

> > struct snd_card contains pointers to two different devices: dev and 
> > card_dev.  Some contexts might want to use one of them for log messages 
> > while other contexts might want to use the other.
> Yes, there are some corner cases, indeed.
> Also, another expected problem is that neither card->card_dev nor
> card->dev are set when snd_card_err() is called.  Many drivers set the
> device pointers at the late stage just before the device
> registration.  So, systematic replacements won't work as expected in
> many cases.  (The same is applied for replacement with dev_*(), too.)

Given that the drivers would have to be edited to fix up the snd_printk 
calls, the device pointer assignments can be moved to an earlier stage 
at the same time.  But doing this would require understanding how the 
driver works to some extent; it couldn't be done blindly.

Alan Stern

More information about the Alsa-devel mailing list