mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-24 02:12:09 -05:00
Kernel/Storage: Recover from fatal AHCI error on TFES, HBDS and HBFS
These errors are classed as fatal, so we need to recover from them. Found while trying to debug AHCI boot on VMware Player, where I got TFES. From the spec: "Fatal errors (signified by the setting of PxIS.HBFS, PxIS.HBDS, PxIS.IFS, or PxIS.TFES) will cause the HBA to enter the ERR:Fatal state" We were already recovering from IFS.
This commit is contained in:
parent
cf9ce0d857
commit
3507397fed
1 changed files with 1 additions and 1 deletions
|
@ -104,7 +104,7 @@ void AHCIPort::handle_interrupt()
|
|||
reset();
|
||||
return;
|
||||
}
|
||||
if (m_interrupt_status.is_set(AHCI::PortInterruptFlag::IF)) {
|
||||
if (m_interrupt_status.is_set(AHCI::PortInterruptFlag::IF) || m_interrupt_status.is_set(AHCI::PortInterruptFlag::TFE) || m_interrupt_status.is_set(AHCI::PortInterruptFlag::HBD) || m_interrupt_status.is_set(AHCI::PortInterruptFlag::HBF)) {
|
||||
recover_from_fatal_error();
|
||||
}
|
||||
m_interrupt_status.clear();
|
||||
|
|
Loading…
Add table
Reference in a new issue