Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Jun 2003 20:37:28 -0700 (PDT)
From:      Warner Losh <imp@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/dev/pccbb pccbb.c pccbbvar.h
Message-ID:  <200306120337.h5C3bSmB075154@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
imp         2003/06/11 20:37:28 PDT

  FreeBSD src repository

  Modified files:
    sys/dev/pccbb        pccbb.c pccbbvar.h 
  Log:
  Make cbb interrupts MPSAFE:
  o Register ISR INTR_MPSAFE.
  o Loop on KTHREAD_DONE == 0 in the thread.
  o Safe the INTR_MPSAFE flag for client drivers (don't know if there are any
    CardBus/PCI drivers that are INTR_MPSAFE)
  o Read status after acquiring mtx_lock(Giant) rather than before so that we
    catch state changes that happen while Giant is being acquired.
  o Turn off the CD bit when we see a CD interrupt, and turn it back on after
    we've attached/detached the card.
  o On suspend, actually set the CBB_SOCKET_MASK to zero rather than oring
    in '0' to turn it off on suspend.
  o If the ISR that's registerd is MPSAFE, don't acquire Giant around call to
    client ISR.
  o Fix comments to reflect these changes.
  
  Revision  Changes    Path
  1.76      +31 -20    src/sys/dev/pccbb/pccbb.c
  1.19      +3 -2      src/sys/dev/pccbb/pccbbvar.h



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