All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org, Libin Yang <libin.yang@linux.intel.com>
Subject: Re: New snd-hda warning spew
Date: Fri, 18 Mar 2016 15:54:59 +0200	[thread overview]
Message-ID: <20160318135459.GF4329@intel.com> (raw)
In-Reply-To: <20160316140420.GB4329@intel.com>

On Wed, Mar 16, 2016 at 04:04:20PM +0200, Ville Syrjälä wrote:
> On Tue, Mar 15, 2016 at 06:22:56PM +0100, Takashi Iwai wrote:
> > On Tue, 15 Mar 2016 17:02:07 +0100,
> > Ville Syrjälä wrote:
> > > 
> > > We have a few new WARN spews from snd-hda causing some grief in i915 CI.
> > > 
> > > This one happens on ILK and BYT. Looks like it happens 100% of the time on driver load:
> > > [   18.809850] ------------[ cut here ]------------
> > > [   18.809866] WARNING: CPU: 0 PID: 39 at sound/hda/hdac_i915.c:129 pin2port+0x25/0x30 [snd_hda_core]()
> > 
> > This is bad.  Basically we had a naive assumption of the fixed mapping
> > between the port number and the HD-audio widget, but it doesn't apply
> > properly to pre-HSW models.
> > 
> > The patch attached below disables the audio binding for pre-HSW
> > models.  I'm going to queue to for-linus branch.
> 
> That seems to eliminate the warn on my ILK.

Apparently it was less effective on BYT. We still get this:

[   14.978872] ------------[ cut here ]------------
[   14.978890] WARNING: CPU: 1 PID: 288 at sound/hda/hdac_i915.c:129 pin2port+0x25/0x30 [snd_hda_core]()
[   14.978894] Modules linked in: snd_hda_codec_hdmi(+) snd_hda_codec_realtek snd_hda_codec_generic i915 snd_hda_intel snd_hda_codec intel_powerclamp coretemp crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_hwdep snd_hda_core snd_pcm lpc_ich i2c_hid i2c_designware_platform i2c_designware_core r8169 mii sdhci_acpi sdhci mmc_core
[   14.978934] CPU: 1 PID: 288 Comm: modprobe Not tainted 4.5.0-gfxbench+ #1
[   14.978938] Hardware name: \xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff \xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff\xffffffff/DN2820FYK, BIOS FYBYT10H.86A.0038.2014.0717.1455 07/17/2014
[   14.978941]  0000000000000000 ffff8800732d3a48 ffffffff813fef15 0000000000000000
[   14.978948]  ffffffffa014077c ffff8800732d3a80 ffffffff81078a21 ffff880073201b90
[   14.978954]  ffff880073006878 ffff880073006880 0000000000000100 ffff880073006878
[   14.978961] Call Trace:
[   14.978969]  [<ffffffff813fef15>] dump_stack+0x67/0x92
[   14.978976]  [<ffffffff81078a21>] warn_slowpath_common+0x81/0xc0
[   14.978980]  [<ffffffff81078b15>] warn_slowpath_null+0x15/0x20
[   14.978988]  [<ffffffffa013f2d5>] pin2port+0x25/0x30 [snd_hda_core]
[   14.978997]  [<ffffffffa013f378>] snd_hdac_acomp_get_eld+0x38/0x70 [snd_hda_core]
[   14.979009]  [<ffffffffa0050a69>] hdmi_present_sense+0xa9/0x3a0 [snd_hda_codec_hdmi]
[   14.979016]  [<ffffffffa005112f>] generic_hdmi_build_controls+0x11f/0x200 [snd_hda_codec_hdmi]
[   14.979029]  [<ffffffffa018e5b1>] snd_hda_codec_build_controls+0x191/0x1d0 [snd_hda_codec]
[   14.979039]  [<ffffffffa018e881>] ? snd_hda_codec_build_pcms+0xe1/0x1a0 [snd_hda_codec]
[   14.979049]  [<ffffffffa0189442>] hda_codec_driver_probe+0x82/0x100 [snd_hda_codec]
[   14.979056]  [<ffffffff8153d9b9>] driver_probe_device+0x229/0x450
[   14.979061]  [<ffffffff8153dc63>] __driver_attach+0x83/0x90
[   14.979066]  [<ffffffff8153dbe0>] ? driver_probe_device+0x450/0x450
[   14.979070]  [<ffffffff8153b691>] bus_for_each_dev+0x61/0xa0
[   14.979074]  [<ffffffff8153d2a9>] driver_attach+0x19/0x20
[   14.979078]  [<ffffffff8153cd8f>] bus_add_driver+0x1ef/0x290
[   14.979083]  [<ffffffffa0059000>] ? 0xffffffffa0059000
[   14.979087]  [<ffffffff8153e98b>] driver_register+0x5b/0xe0
[   14.979096]  [<ffffffffa01890d5>] __hda_codec_driver_register+0x55/0x60 [snd_hda_codec]
[   14.979103]  [<ffffffffa005901e>] hdmi_driver_init+0x1e/0x20 [snd_hda_codec_hdmi]
[   14.979110]  [<ffffffff810003de>] do_one_initcall+0xae/0x1d0
[   14.979115]  [<ffffffff810e1091>] ? rcu_read_lock_sched_held+0x81/0x90
[   14.979121]  [<ffffffff811b8863>] ? kmem_cache_alloc_trace+0x293/0x300
[   14.979126]  [<ffffffff8115b3dc>] ? do_init_module+0x22/0x1c6
[   14.979131]  [<ffffffff8115b415>] do_init_module+0x5b/0x1c6
[   14.979136]  [<ffffffff81107d3a>] load_module+0x1c0a/0x24b0
[   14.979142]  [<ffffffff81105410>] ? symbol_put_addr+0x60/0x60
[   14.979147]  [<ffffffff81105706>] ? copy_module_from_fd.isra.63+0xe6/0x140
[   14.979152]  [<ffffffff811087ce>] SyS_finit_module+0x7e/0xa0
[   14.979160]  [<ffffffff817c5f5b>] entry_SYSCALL_64_fastpath+0x16/0x73
[   14.979271] ---[ end trace 639ed871547f2d0f ]---

<snip>
> > 
> > -- 8< --
> > From: Takashi Iwai <tiwai@suse.de>
> > Subject: [PATCH] ALSA: hda - Limit i915 HDMI binding only for HSW and later
> > MIME-Version: 1.0
> > 
> > It turned out that the pre-HSW Intel chips are incompatible with the
> > naive assumption we had -- the fixed mapping between the port and the
> > HD-audio widget.  This may result in the bad access, as captured by
> > the recent patch to add a WARN_ON() for the port mapping check.
> > 
> > As a quick workaround, disable the i915 audio component binding for
> > all pre-Haswell models.
> > 
> > Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Cc: <stable@vger.kernel.org> # v4.5
> > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> > ---
> >  sound/pci/hda/patch_hdmi.c | 5 +++--
> >  1 file changed, 3 insertions(+), 2 deletions(-)
> > 
> > diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
> > index 3fc259154c0b..cde9746cda8e 100644
> > --- a/sound/pci/hda/patch_hdmi.c
> > +++ b/sound/pci/hda/patch_hdmi.c
> > @@ -2243,9 +2243,10 @@ static int patch_generic_hdmi(struct hda_codec *codec)
> >  	codec->spec = spec;
> >  	hdmi_array_init(spec, 4);
> >  
> > -	/* Try to bind with i915 for any Intel codecs (if not done yet) */
> > +	/* Try to bind with i915 for Intel HSW+ codecs (if not done yet) */
> >  	if (!codec_has_acomp(codec) &&
> > -	    (codec->core.vendor_id >> 16) == 0x8086)
> > +	    (codec->core.vendor_id >> 16) == 0x8086 &&
> > +	    is_haswell_plus(codec))
> >  		if (!snd_hdac_i915_init(&codec->bus->core))
> >  			spec->i915_bound = true;
> >  
> > -- 
> > 2.7.3
> > 
> 
> -- 
> Ville Syrjälä
> Intel OTC

-- 
Ville Syrjälä
Intel OTC

  parent reply	other threads:[~2016-03-18 13:55 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-15 16:02 New snd-hda warning spew Ville Syrjälä
2016-03-15 17:22 ` Takashi Iwai
2016-03-16 14:04   ` Ville Syrjälä
2016-03-16 14:07     ` Takashi Iwai
2016-03-17  5:30       ` Libin Yang
2016-03-17 13:38     ` Takashi Iwai
2016-03-17 14:12       ` Takashi Iwai
2016-03-17 14:25         ` Ville Syrjälä
2016-03-17 14:39           ` Takashi Iwai
2016-03-18 13:54     ` Ville Syrjälä [this message]
2016-03-18 14:22       ` Takashi Iwai
2016-03-18 17:49         ` Ville Syrjälä
2016-03-18 18:51           ` Takashi Iwai
2016-03-18 18:56             ` Takashi Iwai
2016-03-18 19:07               ` Ville Syrjälä
2016-03-18 19:20                 ` Takashi Iwai
2016-03-18 19:10             ` Ville Syrjälä
2016-03-18 19:18               ` Takashi Iwai
2016-03-18 19:29                 ` Ville Syrjälä
2016-03-18 19:27               ` Ville Syrjälä
2016-03-18 20:26                 ` Takashi Iwai
2016-03-19 10:18   ` Takashi Iwai
2016-03-21 12:34     ` Imre Deak
2016-03-21 12:55       ` 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=20160318135459.GF4329@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=libin.yang@linux.intel.com \
    --cc=tiwai@suse.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.