Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Sep 2005 18:33:34 +0000 (UTC)
From:      Alexander Leidinger <netchild@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/dev/sound/pcm dsp.c sound.c
Message-ID:  <200509121833.j8CIXYNM071006@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
netchild    2005-09-12 18:33:34 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/sound/pcm    dsp.c sound.c 
  Log:
  - Fix the locking in dsp.c to prevent a LOR (AFAIK not on the LOR page).
  
  - Remove an assertion in sound.c, it's not needed (and causes a panic now).
    From the conversation via mail between glebius and Ariff:
    ---snip---
    > Well, but which mutex protects now? Do we own anything else
    > in pcm_chnalloc()? I see some queue(4) macros in pcm_chnalloc(),
    > they should be protected, shouldn't they?
    Queue insertion/removal occur during
       1) driver loading (which is pretty much single thread /
          sequential) or unloading (mutex protected, bail out if there is
          any channel with refcount > 0 or busy).
       2) vchan_create()/destroy(), (which is *sigh* quite complicated), but
          somehow protected by 'master'/parent channel mutex. Other
          thread cannot add/remove vchan (or even continue traversing
          that queue) unless it can acquire parent channel mutex.
  ---snip---
  
  Fix the locking in dsp.c to prevent a LOR (AFAIK not on the LOR page).
  
  Submitted by:   Ariff Abdullah <skywizard@MyBSD.org.my>
  Tested with:    INVARIANTS[1] and DIAGNOSTICS[2]
  Tested by:      netchild [1,2], David Reid <david@jetnet.co.uk> [1]
  
  Revision  Changes    Path
  1.84      +3 -3      src/sys/dev/sound/pcm/dsp.c
  1.96      +0 -2      src/sys/dev/sound/pcm/sound.c



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