|
The Pedigree Project 0.1
|
#include <LocalApicIcrTransaction.h>
Collaboration diagram for LocalApicIcrTransaction:Public Member Functions | |
| constexpr | LocalApicIcrTransaction (bool interruptsWereEnabled) |
| constexpr bool | masksMaskableInterrupts () const |
| constexpr bool | restoreInterrupts () const |
| constexpr bool | allowsMaskableHardIrqPreemption () const |
Private Attributes | |
| bool | m_InterruptsWereEnabled |
Models the local interrupt boundary around one LAPIC ICR transaction.
The ICR is per processor. Masking local maskable interrupts before its two register writes prevents a same-core hard interrupt from preempting an in-progress submission; no cross-CPU software ownership exists to acquire.
Definition at line 19 of file LocalApicIcrTransaction.h.
|
inlineexplicitconstexpr |
Definition at line 21 of file LocalApicIcrTransaction.h.
|
inlineconstexpr |
Definition at line 32 of file LocalApicIcrTransaction.h.
|
inlineconstexpr |
Definition at line 24 of file LocalApicIcrTransaction.h.
|
inlineconstexpr |
Definition at line 28 of file LocalApicIcrTransaction.h.
|
private |
Definition at line 37 of file LocalApicIcrTransaction.h.