freebsd-skq/sys/netnatm
rwatson 2b598d0e5c Merge if_atmsubr.c:1.38, natm.c:1.38, natm.h:1.11, natm_pcb.c:1.16,
natm_proto.c:1.16 from HEAD to RELENG_6:

  Lock down netnatm and mark as MPSAFE:

  - Introduce a subsystem mutex, natm_mtx, manipulated with accessor macros
    NATM_LOCK_INIT(), NATM_LOCK(), NATM_UNLOCK(), NATM_LOCK_ASSERT().  It
    protects the consistency of pcb-related data structures.  Finer grained
    locking is possible, but should be done in the context of specific
    measurements (as very little work is done in netnatm -- most is in the
    ATM device driver or socket layer, so there's probably not much
    contention).

  - Remove GIANT_REQUIRED, mark as NETISR_MPSAFE, remove
    NET_NEEDS_GIANT("netnatm").

  - Conditionally acquire Giant when entering network interfaces for
    ifp->if_ioctl() using IFF_LOCKGIANT(ifp)/IFF_UNLOCKGIANT(ifp) in order
    to coexist with non-MPSAFE atm ifnet drivers..

  - De-spl.

  Reviewed by:    harti, bms (various versions)

Approved by:	re (hrs)
2005-08-15 09:51:15 +00:00
..
natm_pcb.c Merge if_atmsubr.c:1.38, natm.c:1.38, natm.h:1.11, natm_pcb.c:1.16, 2005-08-15 09:51:15 +00:00
natm_proto.c Merge if_atmsubr.c:1.38, natm.c:1.38, natm.h:1.11, natm_pcb.c:1.16, 2005-08-15 09:51:15 +00:00
natm.c Merge if_atmsubr.c:1.38, natm.c:1.38, natm.h:1.11, natm_pcb.c:1.16, 2005-08-15 09:51:15 +00:00
natm.h Merge if_atmsubr.c:1.38, natm.c:1.38, natm.h:1.11, natm_pcb.c:1.16, 2005-08-15 09:51:15 +00:00