Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Dec 2002 10:15:07 -0800 (PST)
From:      Sam Leffler <sam@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/opencrypto crypto.c cryptodev.c cryptodev.h
Message-ID:  <200212171815.gBHIF7B1035544@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
sam         2002/12/17 10:15:07 PST

  Modified files:        (Branch: RELENG_4)
    sys/opencrypto       crypto.c cryptodev.c cryptodev.h 
  Log:
  Revise processing of crypto ops for better performance.  Rather than context
  switch to a kernel thread to dispatch each request use a software interrupt
  to invoke the dispatching logic.  Also, and almost as important, decouple
  callbacks done when ops complete from the dispatch thread.  These are done
  in a kernel thread (as opposed to a swi context) so that clients of the crypto
  system don't need to be concerned with blocking crypto-related interrupts.
  
  Specific changes:
  
  o splimp's -> splcrypto's because entry to the crypto code can come at
    splsoftcrypto now
  o add system-wide statistics for the crypto system
  o add timing statistics for crypto ops as they pass through the system to
    help in analyzing performance; these are conditionally compiled in under
    CRYPTO_TIMING and enabled with a debug.crypto_timing sysctl
  o purge an unused entry from the cryptop data structure
  o change some wakeup's to wakeup_one since we know there's only one proc waiting
  o check error return from crypto_invoke in /dev/crypto support
  o bzero zalloc'd data in crypto_getreq (missed in previous MFC)
  
  Note: these changes are not relevant to -current because swi's are implemented
        with kthreads.
  Sponsored by:   Vernier Networks
  Inspired by:    Jonathan Stone <jonathan@DSG.Stanford.EDU>
  
  Revision  Changes    Path
  1.4.2.2   +232 -118  src/sys/opencrypto/crypto.c
  1.4.2.2   +8 -12     src/sys/opencrypto/cryptodev.c
  1.2.2.2   +28 -1     src/sys/opencrypto/cryptodev.h

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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