• Matthew Wilcox's avatar
    [SCSI] Simplify error handling · b4e93a73
    Matthew Wilcox authored
    Use wait_for_completion_timeout() instead of using a timer (as
    Christoph Hellwig did for aic7xxx).
    
    That lets me eliminate the sym_eh_wait structure; the struct completion,
    the old_done pointer and the to_do flag can be folded into the sym_ucmd
    (which overrides the scsi_pointer in scsi_cmnd).
    
    The sym_eh_done() function becomes much simpler as the timeout handling
    is done in sym_eh_handler() directly.
    
    The host_lock can be unlocked earlier, and I cache the host in
    a local variable to make accesses to it quicker.
    Signed-off-by: default avatarMatthew Wilcox <matthew@wil.cx>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    b4e93a73
sym_glue.c 52.8 KB