Lines Matching full:eh
3 * libata-eh.c - libata error handling
115 /* The following table determines timeouts to use for EH internal
316 * EH context.
339 * Notify EH that internal command @cmd for @dev timed out. This
344 * EH context.
434 /* doesn't make sense for port-wide EH actions */ in ata_eh_clear_action()
451 * ata_eh_acquire - acquire EH ownership
452 * @ap: ATA port to acquire EH ownership for
454 * Acquire EH ownership for @ap. This is the basic exclusion
456 * the same host can claim the ownership of EH.
459 * EH context.
469 * ata_eh_release - release EH ownership
470 * @ap: ATA port to release EH ownership for
472 * Release EH ownership for @ap if the caller. The caller must
473 * have acquired EH ownership using ata_eh_acquire() previously.
476 * EH context.
567 /* For new EH, all qcs are finished in one of three ways - in ata_scsi_cmd_error_handler()
570 * completion wins, the qc never reaches EH. When error in ata_scsi_cmd_error_handler()
623 /* If we have timed out qcs. They belong to EH from in ata_scsi_cmd_error_handler()
657 /* acquire EH ownership */ in ata_scsi_port_error_handler()
666 /* fetch & clear EH info */ in ata_scsi_port_error_handler()
688 ap->excl_link = NULL; /* don't maintain exclusion over EH */ in ata_scsi_port_error_handler()
692 /* invoke EH, skip if unloading or suspended */ in ata_scsi_port_error_handler()
708 * EH in such case. in ata_scsi_port_error_handler()
718 "EH pending after %d tries, giving up\n", in ata_scsi_port_error_handler()
723 /* this run is complete, make sure EH info is clear */ in ata_scsi_port_error_handler()
727 /* end eh (clear host_eh_scheduled) while holding in ata_scsi_port_error_handler()
729 * point but before EH completion, SCSI midlayer will in ata_scsi_port_error_handler()
730 * re-initiate EH. in ata_scsi_port_error_handler()
753 ata_port_info(ap, "EH complete\n"); in ata_scsi_port_error_handler()
766 * ata_port_wait_eh - Wait for the currently pending EH to complete
767 * @ap: Port to wait EH for
769 * Wait until the currently pending EH is complete.
792 /* make sure SCSI EH is complete */ in ata_port_wait_eh()
860 * is non-zero and EH wasn't pending before. Fast drain ensures
861 * that EH kicks in in timely manner.
895 * Schedule error handling for @qc. EH will kick in as soon as
911 * ata_scsi_error() takes care of such scmds on EH entry. in ata_qc_schedule_eh()
919 * ata_std_sched_eh - non-libsas ata_ports issue eh with this common routine
920 * @ap: ATA port to schedule EH for
935 DPRINTK("port EH scheduled\n"); in ata_std_sched_eh()
940 * ata_std_end_eh - non-libsas ata_ports complete eh with this common routine
941 * @ap: ATA port to end EH for
962 * @ap: ATA port to schedule EH for
964 * Schedule error handling for @ap. EH will kick in as soon as
1006 * Abort all active qc's active on @link and schedule EH.
1024 * Abort all active qc's of @ap and schedule EH.
1096 * ata_eh_freeze_port - EH helper to freeze port
1118 * ata_eh_thaw_port - EH helper to thaw port
1166 * ata_eh_qc_complete - Complete an active ATA command from EH
1170 * completed. To be used from EH.
1180 * ata_eh_qc_retry - Tell midlayer to retry an ATA command after EH
1184 * should be retried. To be used from EH.
1205 * EH context.
1252 /* clear per-dev EH info */ in ata_eh_detach_dev()
1267 * Called just before performing EH actions to clear related bits
1268 * in @link->eh_info such that eh actions are not unnecessarily
1286 /* About to take EH action, set RECOVERED. Ignore actions on in ata_eh_about_to_do()
1296 * ata_eh_done - EH action complete
1297 * @link: ATA link for which EH actions are complete
1301 * Called right after performing EH actions to clear related bits
1362 * EH context (may sleep).
1391 * SENSE. This function is an EH helper.
1442 * SENSE. This function is EH helper.
1998 /* enforce default EH actions */ in ata_eh_link_autopsy()
2007 * perform per-dev EH action only on the offending device. in ata_eh_link_autopsy()
2204 * @link: ATA link EH is going on
2206 * Report EH to user.
2402 * @ap: ATA port to report EH about
2404 * Report EH to user.
2589 /* mark that this EH session started with reset */ in ata_eh_reset()
2788 * repeated EH runs but seems to be a better tradeoff than in ata_eh_reset()
2841 * requirements of ATA_EH_PARK handling. Since the EH thread in ata_eh_pull_park_action()
3096 * EH context (may sleep).
3150 * 0 if EH can continue, -errno if EH needs to be repeated.
3188 * successfully complete a failed command from EH. in ata_eh_maybe_retry_flush()
3223 * EH context.
3466 /* -EAGAIN from EH routine indicates retry without prejudice. in ata_eh_handle_dev_fail()
3589 /* prep for EH */ in ata_eh_recover()
3593 /* skip EH if possible. */ in ata_eh_recover()
3682 /* if PMP got attached, return, pmp EH will take care of it */ in ata_eh_recover()
3760 * ata_eh_finish - finish up EH
3761 * @ap: host port to finish EH for
3763 * Recovery is complete. Clean up EH states and retry or finish
3780 /* FIXME: Once EH migration is complete, in ata_eh_finish()
3799 /* make sure nr_active_links is zero after EH */ in ata_eh_finish()