• Dan Williams's avatar
    [SCSI] isci: revert bcn filtering · 52d74634
    Dan Williams authored
    The initial bcn filtering implementation was validated on a kernel
    baseline that predated the switch to new libata error handling.  Also,
    prior to that conversion we borrowed the mvsas MVS_DEV_EH approach to
    prevent the unwanted extra ap->ops->phy_reset(ap) that occurred in the
    ata_bus_probe() path.
    
    After the conversion to new libata eh resets at discovery are more
    frequent and get filtered prematurely by IDEV_EH.  The result is that
    our bcn filtering has been blocked from running and at discovery and it
    appears to stall discovery completion to the point of triggering hung
    task timeouts.  So, revert the implementation for now.  When it returns
    it will go into libsas proper.
    
    The domain rediscovery that takes place due to ->lldd_I_T_nexus_reset()
    events should now be properly waited for by the ata_port_wait_eh() call
    in ata_port_probe().  So the hard coded delay in the isci
    ->lldd_I_T_nexus_reset() and other libsas drivers should help debounce
    the libsas thread from seeing temporary device removals.
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
    52d74634
port.h 9.01 KB