git: kernel - opencrypto - optimize chained synchronous callbacks for soft crypto

Matthew Dillon dillon at crater.dragonflybsd.org
Fri Aug 20 13:11:24 PDT 2010


commit 345ee1fbc233997066e5042695d9c4a5a299803c
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Fri Aug 20 13:05:54 2010 -0700

    kernel - opencrypto - optimize chained synchronous callbacks for soft crypto
    
    * When a crypto operation is dispatched to a crypto thread and makes a
      synchronous callback from that thread, and the callback function
      dispatches a followup crypto as part of a chain, we ignore F_BATCH
      and run the followup crypto directly.
    
      Since we are already in a crypto thread there's no point dispatching
      the followup crypto to another crypto thread.
    
      Increases dm_crypt's essiv performance w/software crypto by 7%.
    
    * Warning: The chain length for crypto operations with synchronous
      callbacks should be limited to 2 or 3 to avoid blowing up the kernel's
      thread stack.

Summary of changes:
 sys/opencrypto/crypto.c |   27 ++++++++++++++++++++-------
 sys/sys/thread.h        |    1 +
 2 files changed, 21 insertions(+), 7 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/345ee1fbc233997066e5042695d9c4a5a299803c


-- 
DragonFly BSD source repository





More information about the Commits mailing list