• Chandra Seetharaman's avatar
    [SCSI] scsi_dh: Add a single threaded workqueue for initializing paths · bab7cfc7
    Chandra Seetharaman authored
    Before this patch set (SCSI hardware handlers), initialization of a
    path was done asynchronously. Doing that requires a workqueue in each
    device/hardware handler module and leads to unneccessary complication
    in the device handler code, making it difficult to read the code and
    follow the state diagram.
    
    Moving that workqueue to this level makes the device handler code simpler.
    Hence, the workqueue is moved to dm level.
    
    A new workqueue is added instead of adding it to the existing workqueue
    (kmpathd) for the following reasons:
    	1. Device activation has to happen faster, stacking them along
    	   with the other workqueue might lead to unnecessary delay
    	   in the activation of the path.
    	2. The effect could be felt the other way too. i.e the current
    	   events that are handled by the existing workqueue might get
    	   a delayed response.
    Signed-off-by: default avatarChandra Seetharaman <sekharan@us.ibm.com>
    Acked-by: default avatarAlasdair G Kergon <agk@redhat.com>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    bab7cfc7
dm-mpath.c 33.4 KB