Re: lock order reversal

From: Jan-Espen Pettersen <sigsegv_at_leakingmemory.org>
Date: Wed, 30 Apr 2003 23:16:00 +0200
On Wednesday 30 April 2003 22:28, Jan-Espen Pettersen wrote:
> On Wednesday 30 April 2003 22:20, Jan-Espen Pettersen wrote:
> > On Wednesday 30 April 2003 18:28, Georg Funk wrote:
> > > hm, the patch doesn't seem to work:
> > >
> > > --------------------------------------------------
> > > #patch < pcm.diff
> > > Hmm...  Looks like a normal diff to me...
> > > The text leading up to this was:
> > > --------------------------
> > >
> > > |cvs diff: Diffing sys/dev/sound/pcm
> > > |Index: sys/dev/sound/pcm/dsp.c
> > > |===================================================================
> > > |RCS file:
> > >
> > > /old/pub/FreeBSD/development/FreeBSD-CVS/src/sys/dev/sound/pcm/dsp.c,v
> > >
> > > |retrieving revision 1.62
> > > |diff -r1.62 dsp.c
> > >
> > > --------------------------
> > > Patching file dsp.c using Plan A...
> > > Hunk #1 failed at 265.
> > > Hunk #2 failed at 270.
> > > Hunk #3 failed at 287.
> > > Hunk #4 succeeded at 304.
> > > 3 out of 4 hunks failed--saving rejects to dsp.c.rej
> > > done
> > >
> > > On Wednesday 30 April 2003 16:33, you wrote:
> > > > On Wednesday 30 April 2003 14:55, Georg Funk wrote:
> > > > > Hi!
> > > > > I'm running the FreeBSD 5.0-RELEASE. When I boot up, this appears:
> > > > >
> > > > > 1st 0xc12a7230 process lock (process lock) _at_
> > > > > ../../../kern/kern_descrip.c:2112 lock order reversal
> > > > > I haven't noticed any disfunctions, but what does this mean?
> > > > >
> > > > > I get a similar error when I use my soundcard:
> > > > >
> > > > > lock order reversal
> > > > >  1st 0xc120a680 pcm0 (sound softc) _at_
> > > > > ../../../dev/sound/isa/mss.c:177 2nd 0xc120a740 pcm0:play:0 (pcm
> > > > > channel) _at_
> > > > > ../../../dev/sound/pcm/channel.c:441
> > > > >
> > > > > I have to restart the KDE artsd before the soundcard works correct.
> > > > > Please give me advice how to solve this.
> > > > >
> > > > > Thanks in advance, Georg Funk
> > > >
> > > > I have also seen that problem, and this patch seems to work here..
> > > > It is probably not very optimized, but the lock order reversal didn't
> > > > show up again...
> > > >
> > > > cvs diff: Diffing sys/dev/sound/pcm
> > > > Index: sys/dev/sound/pcm/dsp.c
> > > > ===================================================================
> > > > RCS file:
> > > > /old/pub/FreeBSD/development/FreeBSD-CVS/src/sys/dev/sound/pcm/dsp.c,
> > > >v retrieving revision 1.62
> > > > diff -r1.62 dsp.c
> > > > 265,266c265
> > > > <       pcm_unlock(d);
> > > > <       /* finished with snddev, new channels still locked */
> > > > ---
> > > >
> > > > >       /* keep the snddev lock to avoid a lock order reversal, new
> > > > > channels still locked */
> > > >
> > > > 271d269
> > > > <                       pcm_lock(d);
> > > > 289d286
> > > > <                       pcm_lock(d);
> > > > 306a304
> > > >
> > > > >       pcm_unlock(d);
> >
> > Sorry, I was in a hurry. I was supposed to be at work 30 minutes later...
> >
> > This one should work:
>
> Eh. Sorry again, wordwrap did put a few newlines the patch. Here is a new
> one:
>
> I'm really sorry for wasting your time and bandwith, etc.
> Jan-Espen Pettersen

I will try one more time to get this corrent:

The patch can be downloaded from: ftp://www.radiotube.org/patch/dsp.c.patch

I have tested it, so it should work.
Anyway, an md5 checksum of the dsp.c file before I did the changes is available at: ftp://www.radiotube.org/patch/dsp.c.md5
and the whole file after I did the changes: ftp://www.radiotube.org/patch/dsp.c

Note that ftp.radiotube.org will not work...

Sorry all,
Jan-Espen Pettersen
Received on Wed Apr 30 2003 - 12:16:06 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:05 UTC