cvs commit: src/sys/geom/gate g_gate.c g_gate.h

Pawel Jakub Dawidek pjd at
Wed Feb 9 08:29:40 GMT 2005

pjd         2005-02-09 08:29:39 UTC

  FreeBSD src repository

  Modified files:
    sys/geom/gate        g_gate.c g_gate.h 
  - Remove g_gate_hold()/g_gate_release() from start/done paths. It saves
    4 mutex operations per I/O requests.
  - Use only one mutex to protect both (incoming and outgoing) queue.
    As MUTEX_PROFILING(9) shows, there is no big contention for this lock.
  - Protect sc_queue_count with queue mutex, instead of doing atomic
    operations on it.
  - Remove DROP_GIANT()/PICKUP_GIANT() - ggate is marked as MPSAFE and no
    Giant there.
  Revision  Changes    Path
  1.15      +36 -54    src/sys/geom/gate/g_gate.c
  1.4       +4 -5      src/sys/geom/gate/g_gate.h

More information about the cvs-all mailing list