Re: local_irq_disable when Guest is executing

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

 



On 08/01/13 15:41, Sundaram, Senthilkumar wrote:
> 
> 
> 
>> -----Original Message-----
>> From: Marc Zyngier [mailto:marc.zyngier@xxxxxxx]
>> Sent: Tuesday, January 08, 2013 6:44 PM
>> To: Sundaram, Senthilkumar
>> Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx
>> Subject: Re:  local_irq_disable when Guest is executing
>>
>> On 08/01/13 12:03, Sundaram, Senthilkumar wrote:
>>> I see that in the kvm_arch_vcpu_ioctl_run() function before the guest
>> starts executing there is a local_irq_disable() and local_irq_enable() after the
>> guest returns.
>>>
>>> What is the motivation for this? Why are we disabling interrupts while the
>> guest is running?
>>
>> You got it slightly wrong.
>>
>> Interrupts are disabled while we're doing the world switch. Once we run the
>> guest, interrupts are redirected to HYP mode. Otherwise, you would simply
>> kill the host, who needs its interrupts to be serviced no matter what is
>> running.
> [[ss]] Thanks, I suspected that IRQs might be routed to Hyp mode, but just wanted to make sure. I have a followup question, Why are the interrupts routed to Hyp Mode? Is it so that there is one unified place to handle all guest exits?

Well, if you didn't route the physical interrupts to HYP, they would be
delivered to the guest... Not exactly what you want!

	M.
-- 
Jazz is not dead. It just smells funny...


_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm


[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux