ata_eh_link_autopsy(9)
πΈ ata_eh_link_autopsy(9) πΈ
ok so you're in the Kernel API Manual bestie, and we're about to do a whole forensic girlie thing π
this is ata_eh_link_autopsy(9) and yes it's literally as dramatic as it sounds.
β¨ NAME β¨
ata_eh_link_autopsy β analyze error and determine recovery action π«Ά
π SYNOPSIS π
void ata_eh_link_autopsy (struct ata_link *link );
π¦ ARGUMENTS π¦
linkβ the host link we're doing the autopsy on π like this is the patient, okay, we're investigating this one
π DESCRIPTION π
okay so the whole vibe here is: figure out why the link failed and decide which recovery actions are actually needed. That's the job. That's the whole assignment β¨
This function also sets the more detailed AC_ERR_* values β yes, the specific ones, not just a vague "something broke" β and it fills in sense data for ATAPI CHECK SENSE. Very thorough, very main character energy π
π LOCKING π
Kernel thread context (may sleep). So likeβ¦ it's allowed to nap. Not me though π
π SEE ALSO π
Kernel file ./drivers/ata/libata-eh.c β go read it, iykyk π and also all of these besties:
__ata_ehi_push_desc(9)ata_ehi_push_desc(9)ata_ehi_clear_desc(9)ata_port_desc(9)ata_port_pbar_desc(9)ata_internal_cmd_timeout(9)ata_internal_cmd_timed_out(9)ata_eh_acquire(9)ata_eh_release(9)ata_scsi_error(9)ata_scsi_cmd_error_handler(9)ata_scsi_port_error_handler(9)ata_port_wait_eh(9)ata_eh_set_pending(9)ata_qc_schedule_eh(9)ata_std_sched_eh(9)ata_std_end_eh(9)ata_port_schedule_eh(9)ata_link_abort(9)ata_port_abort(9)__ata_port_freeze(9)ata_port_freeze(9)ata_eh_freeze_port(9)ata_eh_thaw_port(9)ata_eh_qc_complete(9)ata_eh_qc_retry(9)ata_dev_disable(9)ata_eh_detach_dev(9)ata_eh_about_to_do(9)ata_eh_done(9)ata_err_string(9)atapi_eh_tur(9)ata_eh_decide_disposition(9)ata_eh_request_sense(9)atapi_eh_request_sense(9)ata_eh_analyze_serror(9)ata_eh_analyze_tf(9)ata_eh_speed_down_verdict(9)ata_eh_speed_down(9)ata_eh_worth_retry(9)ata_eh_quiet(9)ata_eh_link_set_lpm(9)ata_eh_autopsy(9)ata_get_cmd_name(9)ata_eh_link_report(9)ata_eh_report(9)ata_eh_set_mode(9)atapi_eh_clear_ua(9)ata_eh_maybe_retry_flush(9)ata_eh_recover(9)ata_eh_finish(9)ata_std_error_handler(9)ata_eh_handle_port_suspend(9)ata_eh_handle_port_resume(9)
no cap, that's a lot of cross-references, but every single one of them is iconic in its own way π go click around, it's giving lore.
and that's the whole page bestie!! this one lives in ./drivers/ata and it's dated October 2026, so mark your calendar ποΈβ¨ mwah, go fix those links ππ¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms