NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: port-sparc/56078: sparc audioamd(4) KASSERT on playing audio



The following reply was made to PR port-sparc/56078; it has been noted by GNATS.

From: matthew green <mrg%eterna.com.au@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: port-sparc-maintainer%netbsd.org@localhost, gnats-admin%netbsd.org@localhost,
    netbsd-bugs%netbsd.org@localhost
Subject: re: port-sparc/56078: sparc audioamd(4) KASSERT on playing audio
Date: Sun, 28 Mar 2021 15:22:57 +1100

 > Maybe "sc->sc_am7930.sc_lock" in the am7930swintr() was
 > typo of "sc->sc_am7930.sc_intr_lock", as a commit log in
 > the jmcneill-audiomp3 branch:
 
 ah, that looks right to me.  and it was fixed in the merge
 of the am7930 drivers:
 
    http://mail-index.netbsd.org/source-changes/2020/09/12/msg121802.html
 
 which uses sc_spin_lock in the now swintr handler.
 
 > The following change just works at least on my SPARCclassic:
 >
 > ---
 > Index: sys/arch/sparc/dev/audioamd.c
 > ===================================================================
 > RCS file: /cvsroot/src/sys/arch/sparc/dev/audioamd.c,v
 > retrieving revision 1.29
 > diff -u -p -d -r1.29 audioamd.c
 > --- sys/arch/sparc/dev/audioamd.c	8 May 2019 13:40:16 -0000	1.29
 > +++ sys/arch/sparc/dev/audioamd.c	28 Mar 2021 03:41:59 -0000
 > @@ -461,7 +461,7 @@ am7930swintr(void *sc0)
 >  
 >  	au = &sc->sc_au;
 >  
 > -	mutex_spin_enter(&sc->sc_am7930.sc_lock);
 > +	mutex_spin_enter(&sc->sc_am7930.sc_intr_lock);
 >  	if (au->au_rdata > au->au_rend && sc->sc_rintr != NULL) {
 >  		(*sc->sc_rintr)(sc->sc_rarg);
 >  	}
 > @@ -469,7 +469,7 @@ am7930swintr(void *sc0)
 >  	if (pint)
 >  		(*sc->sc_pintr)(sc->sc_parg);
 >  
 > -	mutex_spin_exit(&sc->sc_am7930.sc_lock);
 > +	mutex_spin_exit(&sc->sc_am7930.sc_intr_lock);
 >  }
 
 please send this to pullup-9.  it looks 100% right to me.
 
 thanks!
 
 
 .mrg.
 


Home | Main Index | Thread Index | Old Index