[alsa-devel] Improving or replacing snd_printk()
stern at rowland.harvard.edu
Fri May 31 16:24:51 CEST 2013
On Fri, 31 May 2013, Takashi Iwai wrote:
> > I don't see the complexity/hell in adding functions
> > for specific types of struct * to reduce the complexity
> > of the code though. Centralizing those indirections
> > into functions also generally reduces overall code size.
> I don't mind to add the struct pointer to new snd_*() -- if we really
> introduce them. The bigger question is whether we really need to
> introduce such, and if yes, what variants. And for that, I don't
> think we need to add many functions. Maybe snd_card_<level>() would
> be good. But others don't seem to make sense to me (remember that I
> suggest dropping CONFIG_SND_VERBOSE_PRINTK).
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.
I guess defining snd_card_*() to use card->card_dev makes the most
sense. If some code wants to use card->dev instead, it can pass that
as the first argument to dev_*().
The most commonly used levels seem to be err, warn, info, and dbg.
Those ought to be enough. In fact, you probably could getting along
without warn -- just err, info, and dbg.
More information about the Alsa-devel