Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Aug 2023 17:26:24 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 268393] system always reboots once from a powered off state
Message-ID:  <bug-268393-227-Jqoej538A5@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-268393-227@https.bugs.freebsd.org/bugzilla/>
References:  <bug-268393-227@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D268393

--- Comment #57 from John Grafton <john.grafton@runbox.com> ---
(In reply to Warner Losh from comment #54)
You mean like this?

diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c
index 79ab71516cd9..78c99db8e813 100644
--- a/sys/dev/sound/pci/hda/hdac.c
+++ b/sys/dev/sound/pci/hda/hdac.c
@@ -393,13 +393,13 @@ hdac_intr_handler(void *context)
         * re-examine GIS then we can leave it set and never get an interru=
pt
         * again.
         */
-       hdac_lock(sc);
        intsts =3D HDAC_READ_4(&sc->mem, HDAC_INTSTS);
        while (intsts !=3D 0xffffffff && (intsts & HDAC_INTSTS_GIS) !=3D 0)=
 {
+               hdac_lock(sc);
                hdac_one_intr(sc, intsts);
+               hdac_unlock(sc);
                intsts =3D HDAC_READ_4(&sc->mem, HDAC_INTSTS);
        }
-       hdac_unlock(sc);
 }

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-268393-227-Jqoej538A5>