[alsa-devel] [PATCH] ALSA: get rid of CONFIG_SND_VERBOSE_PRINTK
joe at perches.com
Thu Jun 6 23:50:32 CEST 2013
On Thu, 2013-06-06 at 17:28 -0400, Alan Stern wrote:
> The important point is that these files are _drivers_; what matters at
> runtime is the device name. On systems with more than one sound card
> of the same type, the device name is vital, but even on others it still
> helps a lot.
> What I want to do is make the messages include the device and driver
> names. Basically this means calling dev_info() and friends instead of
> "snd_printk(KERN_INFO" or pr_info(). As part of the fallout from this
> change, it should no longer be necessary to print the filename or
> module name. If a driver contains multiple identical messages, they
> can be made non-identical (assuming it really matters; messages like
> "can't allocate memory" usually don't need to be pinned down exactly).
> Line numbers are even less useful because they can change from one
> kernel version to the next.
> I can't convert the entire sound subsystem at once -- it's way too big.
> But I can at least do the sound/usb subsystem. If this means that two
> different logging APIs are used by different sets of sound drivers, so
> be it.
> In theory, this would be more or less independent of the patches posted
> so far. In fact, when taken to its logical extreme, _all_ the messages
> would use dev_*() or some variant. There wouldn't be any snd_printk(),
> snd_printd(), pr_info(), ... messages left to worry about.
> I don't expect that to happen any time soon. Still, I think it makes
> more sense to concentrate on converting the messages below sound/usb
> rather than fiddling around with the existing API, which is inadequate
> anyway since it doesn't include the device.
I agree with that.
It'd be pretty easy to take that large patch that did
snd_printk(fmt, ...) -> snd_dbg(1, fmt, ...) and
convert it to snd_card_dbg(card *, fmt, ...)
whenever a struct snd_card * was available.
snd_card_dbg() would be either a macro or a function
to deference the snd_card * dev and maybe emit
"struct snd_card.shortname" with it too.
Want to start with that?
More information about the Alsa-devel