mirror of
https://github.com/SerenityOS/serenity
synced 2024-07-23 02:55:15 +00:00
Kernel: Move handle_interrupt out-of-line in PCIIRQHandler
Upgrade to GCC 13.1.0 triggered an UBSAN in PCIIRQHandler. Moving the handle_interrupt() function out-of-line fixes this issue.
This commit is contained in:
parent
ff70418ffc
commit
d14c2a3583
|
@ -63,4 +63,9 @@ void PCIIRQHandler::disable_irq()
|
|||
device.disable_interrupt(interrupt_number());
|
||||
}
|
||||
|
||||
bool PCIIRQHandler::handle_interrupt(RegisterState const& regs)
|
||||
{
|
||||
return handle_irq(regs);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@ class PCIIRQHandler : public GenericInterruptHandler {
|
|||
public:
|
||||
virtual ~PCIIRQHandler() = default;
|
||||
|
||||
virtual bool handle_interrupt(RegisterState const& regs) override { return handle_irq(regs); }
|
||||
virtual bool handle_interrupt(RegisterState const& regs) override;
|
||||
virtual bool handle_irq(RegisterState const&) = 0;
|
||||
|
||||
void enable_irq();
|
||||
|
|
Loading…
Reference in a new issue