Hi Stefan, On 07/15/2016 04:43 PM, Stefan Brenner wrote: > Hi, > > we are using inject_irq() from Martin Stein to inject interrupts into > the normal world VM running Linux. > > When measuring the time between issuing inject_irq() and actually > arriving at the ISR in normal world (using CPU performance counters in > CPU cycles granularity) we can see that this always requires at least 10 > million cycles, which is 10ms at 1Ghz and exactly what is defined as > cpu_fill_ms in base-hw/src/core/include/kernel/configuration.h. > > If we set cpu_fill_ms to 1, we can measure that it only requires 1 > million cycles. Apparently it is not possible to set values below 1 > (some assertion fails on compile). > > Is there another option, probably a more elegant one, that allows the > acceleration of interrupt injection? >
Normally, as long as no other component is runable and scheduled, you should immediately receive the interrupt after calling inject_irq(...). Are you sure that no other component is actively polling or otherwise consuming a lot of cpu time? Regards Stefan > Best, Stefan. > -- Stefan Kalkowski Genode Labs https://github.com/skalk ยท http://genode.org/ ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports.http://sdm.link/zohodev2dev _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main