git: DragonFly_RELEASE_3_0 kernel - Fix SILI callout timer race

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Jan 23 12:59:44 PST 2012


commit ca0a66e567cbeb1b974a2feb7c2176464d7fb6b1
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Mon Jan 23 12:55:33 2012 -0800

    kernel - Fix SILI callout timer race
    
    * Do similar fix for SILI that we did for AHCI.
    
    * callout_stop_sync() can block.  If this occurs a race can cause a
      CCB to be processed for completion twice.
    
    * Add a serial number to detect this situation.
    
    * If the serial number does not match after the timeout is stopped
       we don't want to mess with the xa at all.
    
    Tested-by: lentferj

Summary of changes:
 sys/dev/disk/sili/atascsi.h |    1 +
 sys/dev/disk/sili/sili.c    |   20 ++++++++++++++++++--
 2 files changed, 19 insertions(+), 2 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/ca0a66e567cbeb1b974a2feb7c2176464d7fb6b1


-- 
DragonFly BSD source repository





More information about the Commits mailing list