Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Oct 2020 00:30:38 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r367124 - stable/12/sys/dev/sound/pci/hda
Message-ID:  <202010290030.09T0Uc2E060768@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mav
Date: Thu Oct 29 00:30:38 2020
New Revision: 367124
URL: https://svnweb.freebsd.org/changeset/base/367124

Log:
  MFC r366733: Drop unsolicited responses to the still attaching CODECs.
  
  It is reported to fix kernel panics when early unsolicited responses
  delivered to the CODEC device not having driver attached yet.
  
  PR:		250248

Modified:
  stable/12/sys/dev/sound/pci/hda/hdac.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/sound/pci/hda/hdac.c
==============================================================================
--- stable/12/sys/dev/sound/pci/hda/hdac.c	Thu Oct 29 00:23:16 2020	(r367123)
+++ stable/12/sys/dev/sound/pci/hda/hdac.c	Thu Oct 29 00:30:38 2020	(r367124)
@@ -1001,7 +1001,8 @@ hdac_unsolq_flush(struct hdac_softc *sc)
 			sc->unsolq_rp %= HDAC_UNSOLQ_MAX;
 			cad = sc->unsolq[sc->unsolq_rp++];
 			sc->unsolq_rp %= HDAC_UNSOLQ_MAX;
-			if ((child = sc->codecs[cad].dev) != NULL)
+			if ((child = sc->codecs[cad].dev) != NULL &&
+			    device_is_attached(child))
 				HDAC_UNSOL_INTR(child, resp);
 			ret++;
 		}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202010290030.09T0Uc2E060768>