[Barrelfish-users] User Level IPI Support on SCC

Simon Peter speter at inf.ethz.ch
Mon Jan 7 00:16:09 CET 2013

Hi Jinghao,

There is no direct way on the SCC to send an IPI from user space. Be 
aware that while each core of the SCC has a local APIC, it is only used 
for receiving IPIs, not for sending them. Sending is done via the 
configuration registers and, AFAIR, IPI broadcast is not supported by 
the architecture.

You can probably add a debug system call to the CPU driver to directly 
generate an IPI via the configuration registers, which you can then call 
from user-space. The usr/bench/ipi_bench.c program is for x86 
architectures only, though might be adaptable to the SCC.


On 01/05/2013 12:39 AM, Shi Jinghao wrote:
> Hi,
> I was wondering whether I can send a IPI to anther core in user space.
> Furthermore, can I broadcast IPIs to multiple cores at the same time?
> I checked the code in /user/bench/ipi_bench.c, it seems exactly what I
> want (except broadcast) but it won't compile correctly. And it also
> seems to be for X86_64 only. The comment in symbolic_targets.mk
> <http://symbolic_targets.mk/> says the ipi_bench target is broken in the
> newidc system.
> Thanks,
> Jinghao
> _______________________________________________
> Barrelfish-users mailing list
> Barrelfish-users at lists.inf.ethz.ch
> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users

More information about the Barrelfish-users mailing list