Kernel/Audio: Implement 2 correctness fixes in AC97

The fixes are:
1. Don't copy PCI::DeviceIdentifier during construction. This is a heavy
structure to copy so we definitely don't want to do that. Instead, use
a const reference to it like what happens in other parts in the Kernel.
2. Declare the constructor as explicit to avoid construction errors.
This commit is contained in:
Liav A 2021-11-28 09:13:45 +02:00 committed by Brian Gianforcaro
parent 45844f9338
commit 8abc4fa8c2
Notes: sideshowbarker 2024-07-18 00:36:07 +09:00
2 changed files with 2 additions and 2 deletions

View File

@ -44,7 +44,7 @@ UNMAP_AFTER_INIT void AC97::detect()
});
}
UNMAP_AFTER_INIT AC97::AC97(PCI::DeviceIdentifier pci_device_identifier)
UNMAP_AFTER_INIT AC97::AC97(PCI::DeviceIdentifier const& pci_device_identifier)
: PCI::Device(pci_device_identifier.address())
, IRQHandler(pci_device_identifier.interrupt_line().value())
, CharacterDevice(42, 42)

View File

@ -145,7 +145,7 @@ private:
StringView m_name;
};
AC97(PCI::DeviceIdentifier);
explicit AC97(PCI::DeviceIdentifier const&);
// ^IRQHandler
virtual bool handle_irq(const RegisterState&) override;