[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [question] what's the purpose of smp_send_event_check_mask?

On Thu, Jan 19, 2012 at 5:14 PM, Keir Fraser <keir.xen@xxxxxxxxx> wrote:
> On 19/01/2012 09:02, "Kai Huang" <mail.kai.huang@xxxxxxxxx> wrote:
>> Hi,
>> I see cpu_raise_softirq calls smp_send_event_check_mask after setting
>> softirq bit for target CPU if target CPU is not the current CPU. I
>> thought smp_send_event_check_mask will send IPI to target CPU and then
>> trigger target CPU to run pending irq, but seems
>> smp_send_event_check_mask does nothing but jast ACK the IPI. So what's
>> the purpose of this function? Why do we need this function?
> Xen always checks softirqs on return from interrupt context to guest
> context, and also in its idle loopon wakeup. Hence the event_check interrupt
> handler itself doesn't need to do anything.

Does this mean if raising softirq for remote CPU, we don't need to
call do_softirq explicitly on target CPU?


>> BTW, would someone gives me some knowledge when will the pending irqs
>> be triggered to run after setting up the pending bits? Seems normally
>> they are called asynchronously.
> Yes, of course it's asynchronous, the smp_send_event_check_mask interrupt is
> just to make sure it happens "soon".
>  -- Keir
>> Thanks in advance!
>> -cody
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>> http://lists.xensource.com/xen-devel

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.