ata_port_abort(9)
π ata_port_abort(9) β like, the kernel API manual page, bestie π
okay so this is from the Kernel API Manual (yes, the manpage collection, not the vibes collection) and it's about ata_port_abort β the function that just, like, ends things. gracefully. sort of. π
β¨ NAME β¨
ata_port_abort β abort all qc's on the port
like literally all of them. every last one. periodt. π«Ά
πΈ SYNOPSIS πΈ
int ata_port_abort (struct ata_port *ap );
that's it. that's the whole call. one argument, one int back. iconic minimalism honestly π
π¦ ARGUMENTS π¦
apβ the ATA port to abort qc's for π like, this is the port we're doing the aborting on, no cap.
β DESCRIPTION β
Abort all active qc's of ap and schedule EH.
read that again bestie: all active qc's. not some. not the ones you vibe with. all of them π₯ and then it schedules EH to come in and clean up the situation.
LOCKING:spin_lock_irqsave(host_set lock)β so this one's already holding thehost_setlock withspin_lock_irqsavewhen it does its thing. don't go grabbing that lock yourself, that's giving chaos energy π
π RETURN π
Number of aborted qc's. that's it β the count of how many qc's it actually aborted, as an int. so you can, like, know how much damage you did π
π SEE ALSO π
kernel file ./drivers/ata/libata-eh.c β and then the whole friend group, honestly, this is a massive squad:
__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_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_link_autopsy(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)
iykyk π that's a lot of error handling besties. read them all. i believe in you π
okay bye ily, this page came from ./drivers/ata and it's dated October 2026 β so like, future vibes fr fr ββ¨π
π¦ 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