git: kernel - Fix SILI callout timer race

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


commit e27434d7864e9fb4463c99205dbd3eff78bdcae7
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/e27434d7864e9fb4463c99205dbd3eff78bdcae7


-- 
DragonFly BSD source repository





More information about the Commits mailing list