sata_pmp_eh_recover_pmp(9)
β¨ sata_pmp_eh_recover_pmp(9) β¨
okay so this is straight out of the Kernel API Manual bestie, and it's about rescuing a PMP π«Ά yes we're doing kernel-level rescue missions today, it's giving main character energy fr fr
π NAME π
sata_pmp_eh_recover_pmp β recover PMP π
πΈ SYNOPSIS πΈ
int sata_pmp_eh_recover_pmp (struct ata_port *ap , struct
ata_reset_operations *reset_ops );
π ARGUMENTS π
apβ the ATA port that the PMP is attached to π¦ like that's its home, its whole vibereset_opsβ the set of reset operations you're gonna use, no cap, you gotta hand it the whole toolkit β¨
π DESCRIPTION π
So here's the tea: this bad boy recovers the PMP attached to ap. π«Ά
The recovery procedure is somewhat similar to the one in ata_eh_recover, except β and this is the important part, bestie β reset should always be performed in a hard->soft sequence, and if recovery fails, the result is PMP detachment. π like it literally just lets go. the drama.
LOCKING: Kernel thread context (may sleep). π so don't you dare call this from somewhere that can't sleep, ok?
π RETURN π
0on success π slay-errnoon failure π it's giving error code
π₯ SEE ALSO π₯
Kernel file ./drivers/ata/libata-pmp.c β go read it, iykyk πβ¨
sata_pmp_read(9)sata_pmp_write(9)sata_pmp_qc_defer_cmd_switch(9)sata_pmp_scr_read(9)sata_pmp_scr_write(9)sata_pmp_set_lpm(9)sata_pmp_read_gscr(9)sata_pmp_attach(9)sata_pmp_detach(9)sata_pmp_same_pmp(9)sata_pmp_revalidate(9)sata_pmp_revalidate_quick(9)sata_pmp_eh_recover(9)sata_pmp_error_handler(9)
ok that's literally the whole page, go forth and recover those PMPs responsibly π§ββοΈ
soooo that's it bestie!! this one lives in ./drivers/ata, dated October 2026 in the Kernel API Manual π mwah, ily, bye πβ
π¦ 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