mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Stratos Karafotis <stratosk@semaphore.gr>
Cc: Jaroslav Kysela <perex@perex.cz>,
	alsa-devel@alsa-project.org,
	"linux-kernel@vger.kernel.org >> LKML"
	<linux-kernel@vger.kernel.org>
Subject: Re: oops during boot with CONFIG_SND_DYNAMIC_MINORS not set
Date: Thu, 22 Aug 2013 23:23:16 +0200	[thread overview]
Message-ID: <s5hy57tifnf.wl%tiwai@suse.de> (raw)
In-Reply-To: <52163660.8000700@semaphore.gr>

At Thu, 22 Aug 2013 19:03:44 +0300,
Stratos Karafotis wrote:
> 
> On 08/22/2013 10:59 AM, Takashi Iwai wrote:
> > At Thu, 22 Aug 2013 00:42:41 +0300,
> > Stratos Karafotis wrote:
> >>
> >> Hi,
> >>
> >> I get the following oops during boot when build with CONFIG_SND_DYNAMIC_MINORS
> >> not set (3.11-rc6).
> >> The issue is vanished building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
> >> as suggested in printk message.
> >>
> >> Regards,
> >> Stratos
> >>
> >>
> > 
> > Could you check the patch below?
> > Thanks!
> > 
> > 
> > Takashi
> > 
> > ---
> > From: Takashi Iwai <tiwai@suse.de>
> > Subject: [PATCH] ALSA: hda - Fix NULL dereference with CONFIG_SND_DYNAMIC_MINORS=n
> > 
> > Without the dynamic minor assignment, HDMI codec may have less PCM
> > instances than the number of pins, which eventually leads to Oops.
> > 
> > Reported-by: Stratos Karafotis <stratosk@semaphore.gr>
> > Cc: <stable@vger.kernel.org>
> > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> > ---
> >   sound/pci/hda/patch_hdmi.c | 3 +++
> >   1 file changed, 3 insertions(+)
> > 
> > diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
> > index 030ca86..e2cb92b 100644
> > --- a/sound/pci/hda/patch_hdmi.c
> > +++ b/sound/pci/hda/patch_hdmi.c
> > @@ -1781,6 +1781,9 @@ static int generic_hdmi_build_controls(struct hda_codec *codec)
> >   		struct snd_pcm_chmap *chmap;
> >   		struct snd_kcontrol *kctl;
> >   		int i;
> > +
> > +		if (pin_idx >= codec->num_pcms)
> > +			break;
> >   		err = snd_pcm_add_chmap_ctls(codec->pcm_info[pin_idx].pcm,
> >   					     SNDRV_PCM_STREAM_PLAYBACK,
> >   					     NULL, 0, pin_idx, &chmap);
> > 
> 
> Hi,
> 
> Unfortunately, still the same problem after applying your patch.

Bah, it's a wrong one.  The patch below should work better.
Sorry for inconvenience.


Takashi

---
From: Takashi Iwai <tiwai@suse.de>
Subject: [PATCH v2] ALSA: hda - Fix NULL dereference with CONFIG_SND_DYNAMIC_MINORS=n

Without the dynamic minor assignment, HDMI codec may have less PCM
instances than the number of pins, which eventually leads to Oops.

Reported-by: Stratos Karafotis <stratosk@semaphore.gr>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/pci/hda/patch_hdmi.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 030ca86..9f35862 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -1781,6 +1781,9 @@ static int generic_hdmi_build_controls(struct hda_codec *codec)
 		struct snd_pcm_chmap *chmap;
 		struct snd_kcontrol *kctl;
 		int i;
+
+		if (!codec->pcm_info[pin_idx].pcm)
+			break;
 		err = snd_pcm_add_chmap_ctls(codec->pcm_info[pin_idx].pcm,
 					     SNDRV_PCM_STREAM_PLAYBACK,
 					     NULL, 0, pin_idx, &chmap);
-- 
1.8.3.4


  reply	other threads:[~2013-08-22 21:21 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-21 21:42 Stratos Karafotis
2013-08-22  7:59 ` Takashi Iwai
2013-08-22 16:03   ` Stratos Karafotis
2013-08-22 21:23     ` Takashi Iwai [this message]
2013-08-22 21:56       ` Stratos Karafotis
2013-08-23  8:04         ` Takashi Iwai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5hy57tifnf.wl%tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=stratosk@semaphore.gr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®