]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: pcm: Call snd_card_unref() inside in_pcm_file()
authorTakashi Iwai <tiwai@suse.de>
Sun, 13 Jan 2019 08:25:42 +0000 (09:25 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 21 Jan 2019 15:38:15 +0000 (16:38 +0100)
commit4d3086d617ae7921aa3682b3f80753608ef8f697
tree4b06164a6a2ccf304d45b88b2f728d26afeecc0e
parentd6952d4b95d3a6897fcea7446c97f59f8d24556b
ALSA: pcm: Call snd_card_unref() inside in_pcm_file()

The snd_card_unref() call in snd_pcm_link() looks suspicious through a
quick glance, but it's a correct usage; this is needed just because
the file descriptor check in is_pcm_file() calls the helper
snd_lookup_minor_data() that keeps the card refcount.

Despite of the correctness, the code still looks confusing.
Basically, keeping the card ref for the whole code isn't needed
as fdget() blocks the release of the opened file.  Hence it's more
understandable if snd_card_unref() is moved into is_pcm_file(), then
the caller doesn't have to take care after the call.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/core/pcm_native.c