summaryrefslogtreecommitdiff
path: root/sys/include/arch/amd64/ipi.h
AgeCommit message (Collapse)Author
19 hourskernel/amd64: ipi: Make halt IPI more directIan Moffett
This commit assigns the halt IPI its own vector so that it may be dispatched fast without needing to go through the IPI path as it is typically used only in very sensitive situations. Signed-off-by: Ian Moffett <ian@osmora.org>
45 hourskernel/amd64: ipi: Greatly simplify IPI frameworkIan Moffett
The previous IPI framework design was quite an overengineered mess thanks to our friend, Φ of the body. - Use a flat array instead of a weird bitmap - Only use one ISR and chain the functions Signed-off-by: Ian Moffett <ian@osmora.org>
14 dayskernel/amd64: Introduce flexible IPI managementIan Moffett
This commit greatly improves the handling of how inter-processor interrupts are allocated and managed. Previously Hyra used handlers at fixed interrupt vectors for IPIs, however, that is very rigid and not very scalable at all. With the new IPI framework, one may allocate IPIs by calling 'md_ipi_alloc()' and initializing the handler field. To send an IPI to a specific processor, one can use cpu_ipi_send() and pass the specific CPU structure as well as the IPI identifier. Signed-off-by: Ian Moffett <ian@osmora.org>