Hey,
So I have been dealing with this issue the last couple of days, and despite searching old threads of information I can't seem to get it working
In bochs, I can get "equally" amount of interrupts on all cores using low priority, however in QEmu and VirtualBox none of the AP's get ANY interrupts at all.
The apic setup is:
Destination Format: 0xF0000000
Logical Destination: 0xFF000000
Interrupts are configured as: 0xFF000000000009VV
Initial Task Priority for all cores are 0 (varying the initial priority didn't change anything)
Interrupts are the Local Apic Timer which has the priority of 0xF0, and the RTC with priority of 0xEC
As stated, in QEmu and VirtualBox only the BSP gets interrupts, while in Bochs cores share them, have I set anything wrong here?
The Task Priority varies between 0 - 0x3E depending on the thread priority
APIC Trouble with SMP
Re: APIC Trouble with SMP
Hi,
For the other problems; make sure you've enabled each CPU's local APIC in each CPU's "spurious interrupt vector register".
Cheers,
Brendan
For the local APIC timer, using "lower priority delivery" (where the interrupt is sent to whichever CPU happens to be running at the lowest priority at the time) makes no sense at all because the each CPU's local APIC can only send interrupts to its CPU.MollenOS wrote:Interrupts are the Local Apic Timer which has the priority of 0xF0, and the RTC with priority of 0xEC
As stated, in QEmu and VirtualBox only the BSP gets interrupts, while in Bochs cores share them, have I set anything wrong here?
For the other problems; make sure you've enabled each CPU's local APIC in each CPU's "spurious interrupt vector register".
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Re: APIC Trouble with SMP
Brendan, thanks, that explains a lot