pm80xx_fatal_errors(9)
π pm80xx_fatal_errors β a kernel API manual moment π
okay so bestie, welcome to the pm80xx_fatal_errors(9) page π this is one of those tiny little functions that's lowkey doing the most important job: telling you whether the storage controller situation is "haha okay" or "we are SO cooked" π
β¨ NAME β¨
pm80xx_fatal_errors β returns non-zero ONLY when fatal errors π₯
like, <rainbow>ONLY ONLY ONLY</rainbow> β that's the whole vibe check. no false alarms, no drama, just straight facts about whether things have gone fully off the rails.
πΈ SYNOPSIS πΈ
int pm80xx_fatal_errors (struct pm8001_hba_info *pm8001_ha );
π¦ ARGUMENTS π¦
pm8001_haβ our hba card information π this is basically the controller's little ID card / gossip folder, and it's what we're peeking into to see if anything is catastrophically wrong.
π DESCRIPTION π
ok so here's the tea π fatal errors are recoverable only after a host reboot. that's it. that's the whole mood. no clever workaround, no sneaky reset, no "just try again" energy β the machine has to actually go down and come back up for things to be okay again π
ngl, that's a big deal β treat a fatal error like a genuine emergency, not a "eh, it'll buff out" situation π
π§ SEE ALSO π§
the whole friend group π«Ά (all the sibling functions hanging out in the same neighborhood, plus the file where the magic happens):
- Kernel file
./drivers/scsi/pm8001/pm80xx_hwi.cβ the source, the origin, the main character π read_main_config_table(9)read_general_status_table(9)read_phy_attr_table(9)read_inbnd_queue_table(9)read_outbnd_queue_table(9)init_default_table_values(9)update_main_config_table(9)update_inbnd_queue_table(9)update_outbnd_queue_table(9)mpi_init_check(9)check_fw_ready(9)pm80xx_set_thermal_config(9)pm80xx_set_sas_protocol_timer_config(9)pm80xx_get_encrypt_info(9)pm80xx_encrypt_update(9)pm80xx_chip_init(9)pm80xx_fatal_error_uevent_emit(9)pm80xx_chip_soft_rst(9)pm80xx_chip_interrupt_enable(9)pm80xx_chip_interrupt_disable(9)mpi_ssp_completion(9)pm80xx_hw_event_ack_req(9)hw_event_sas_phy_up(9)hw_event_sata_phy_up(9)hw_event_phy_down(9)mpi_thermal_hw_event(9)mpi_hw_event(9)mpi_phy_stop_resp(9)mpi_set_controller_config_resp(9)mpi_get_controller_config_resp(9)mpi_get_phy_profile_resp(9)mpi_flash_op_ext_resp(9)mpi_set_phy_profile_resp(9)mpi_kek_management_resp(9)mpi_dek_management_resp(9)ssp_coalesced_comp_resp(9)process_one_iomb(9)pm80xx_chip_smp_req(9)pm80xx_chip_ssp_io_req(9)pm80xx_chip_phy_start_req(9)pm80xx_chip_phy_stop_req(9)pm80xx_chip_phy_ctl_req(9)pm80xx_chip_isr(9)
and that's the whole page, bestie π
this cutie lives in ./drivers/scsi/pm8001 and the manual itself is dated October 2026 β go forth, check your fatal errors, and slay β¨ππ
π¦ 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