• Edmund Nadolski's avatar
    isci: replace isci_timer list with proper embedded timers · 5553ba2b
    Edmund Nadolski authored
    Rather than preallocating a list of timers and doling them out at runtime,
    embed a struct timerlist in each object that needs one.  A struct sci_timer
    interface is introduced to manage the timer cancellation semantics which
    currently need to guarantee the timer is cancelled while holding
    spin_lock(ihost->scic_lock).  Since the timeout functions also need to acquire
    the lock it currently prevents the driver from using del_timer_sync() for
    runtime cancellations.
    
    del_timer_sync() is used however before the objects go out of scope.
    Signed-off-by: default avatarEdmund Nadolski <edmund.nadolski@intel.com>
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    5553ba2b
isci.h 20.5 KB