cvs commit: src/sys/netnatm natm.c natm.h natm_pcb.c natm_proto.c

Robert Watson rwatson at FreeBSD.org
Mon Aug 15 09:51:16 GMT 2005


rwatson     2005-08-15 09:51:15 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_6)
    sys/netnatm          natm.c natm.h natm_pcb.c natm_proto.c 
  Log:
  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)
  
  Revision  Changes    Path
  1.37.2.1  +56 -51    src/sys/netnatm/natm.c
  1.10.2.1  +7 -0      src/sys/netnatm/natm.h
  1.15.2.1  +3 -5      src/sys/netnatm/natm_pcb.c
  1.15.2.1  +2 -3      src/sys/netnatm/natm_proto.c


More information about the cvs-src mailing list