sata_async_notification(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

Welcome to the Kernel API Manual, bestie β€” this is sata_async_notification(9), the SATA async notification handler. It’s giving β€œI handle the notification vibe” and honestly? Iconic. ✨

πŸŽ€ SYNOPSIS πŸŽ€

int sata_async_notification (struct ata_port *ap );

🌸 ARGUMENTS 🌸

  • ap β€” the ATA port where async notification is received. That’s the whole argument, bestie. 🫢

πŸ¦‹ DESCRIPTION πŸ¦‹

So like, this is the handler to be called when async notification via SDB FIS is received. It schedules EH if necessary β€” literally only when it’s necessary, no extra drama. πŸ’…

LOCKING: spin_lock_irqsave(host lock) β€” bestie, this is the lock situation and you need to respect it. Do not come for this function without that host lock handled via spin_lock_irqsave. Periodt. πŸ”₯

🌈 RETURN 🌈

Returns 1 if EH is scheduled, 0 otherwise. Clean. Simple. Ate. πŸ’–

⭐ SEE ALSO ⭐

Kernel file ./drivers/ata/libata-sata.c, plus the whole friend group: sata_scr_valid(9), sata_scr_read(9), sata_scr_write(9), sata_scr_write_flush(9), ata_tf_to_fis(9), ata_tf_from_fis(9), sata_link_debounce(9), sata_link_resume(9), sata_link_scr_lpm(9), sata_set_spd_needed(9), sata_set_spd(9), sata_down_spd_limit(9), sata_link_hardreset(9), sata_std_hardreset(9), ata_qc_complete_multiple(9), ata_slave_link_init(9), sata_lpm_ignore_phy_events(9), ata_ncq_prio_supported(9), ata_ncq_prio_enabled(9), ata_ncq_prio_enable(9), ata_change_queue_depth(9), ata_scsi_change_queue_depth(9), ata_sas_sdev_configure(9), ata_sas_queuecmd(9), ata_eh_read_log_10h(9), ata_eh_get_ncq_success_sense(9), ata_eh_analyze_ncq_error(9).


And that’s the tea, bestie πŸ“ β€” this page comes from ./drivers/ata and it’s dated October 2026. Slay, goodbye. πŸ’œ

πŸ“¦ where this page comes from