• M
    dm mpath: remove harmful bio-based optimization · 980b632f
    Mike Snitzer 提交于
    commit dbaf971c9cdf10843071a60dcafc1aaab3162354 upstream.
    
    Removes the branching for edge-case where no SCSI device handler
    exists.  The __map_bio_fast() method was far too limited, by only
    selecting a new pathgroup or path IFF there was a path failure, fix this
    be eliminating it in favor of __map_bio().  __map_bio()'s extra SCSI
    device handler specific MPATHF_PG_INIT_REQUIRED test is not in the fast
    path anyway.
    
    This change restores full path selector functionality for bio-based
    configurations that don't haave a SCSI device handler.  But it should be
    noted that the path selectors do have an impact on performance for
    certain networks that are extremely fast (and don't require frequent
    switching).
    
    Fixes: 8d47e659 ("dm mpath: remove unnecessary NVMe branching in favor of scsi_dh checks")
    Cc: stable@vger.kernel.org
    Reported-by: NDrew Hastings <dhastings@crucialwebhost.com>
    Suggested-by: NMartin Wilck <mwilck@suse.de>
    Signed-off-by: NMike Snitzer <snitzer@redhat.com>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    980b632f
dm-mpath.c 50.1 KB