[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?


  • To: Kai Huang <mail.kai.huang@xxxxxxxxx>
  • From: Keir Fraser <keir@xxxxxxx>
  • Date: Thu, 19 Jan 2012 09:49:35 +0000
  • Cc: Xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Thu, 19 Jan 2012 09:50:13 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AczWj6aPVsCRjiEvMUaqlB2QSCvsgg==
  • Thread-topic: [Xen-devel] [question] what's the purpose of smp_send_event_check_mask?

On 19/01/2012 09:26, "Kai Huang" <mail.kai.huang@xxxxxxxxx> wrote:

> 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?

That's right, it's called automatically from various places, which you can
grep for.

 -- Keir

> -cody
> 
>> 
>>> 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
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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