|
|
|
|
|
|
|
|
|
|
xen-ia64-devel
RE: [Xen-ia64-devel] Question domU blocking and xen timer interrupt
Dietmar Hahn write on 2007年1月15日 23:01:
>> Hi,
Hi Dietmar,
The attached patch is intend to enable HYPERVISOR_set_timer_op for IPF.
I can understand what you described.
Can you ckeck whether HYPERVISOR_sched_op is called with interrupt disabled?
And can you check whether the event for domU timer irq is pending?
--Anthony
>>
>> for emulating the function block_domain() in the mini-os I played
>> with the hypervisor call HYPERVISOR_sched_op(SCHEDOP_block, 0).
>> For tests I tried a timer interrupt in the mini-os with HZ=1 (means 1
>> interrupt per second). The timer initialisation sets cr.itm.
>> A thread gets started and calls HYPERVISOR_sched_op(SCHEDOP_block,
>> 0) in a loop. Now the domU gets blocked and never woken up (no
>> timerinterrupt occurs!) until I press a key and a console interrupt
>> is done. This wakes up the domU. Now the timer stuff gets checked
>> but now is the current cr.itc larger than the old cr.itm and the
>> timer interrupt handler gets not called (in vcpu_timer_expired()).
>> May it be that the xen timer interrupt handling does not handle this
>> domU blocking correctly or do I understand something completely
>> wrong?
>> On x86 the HYPERVISOR_set_timer_op(until) is used to wake up the domU
>> again. But this is not implemented on ia64.
>> Thanks.
>>
>
> I looked a little bit deeper in the xen source. As far as I
> understand is xen_timer_irqaction() called on every timer interrupt
> in the hypervisor. I can see only the checking of the timer of the
> "current" domain. If a domain never gets scheduled because of the set
> _VCPUF_blocked flag, then the domain gets never a timer interrupt
> because it never gets broken by the xen timer interrupt! Do I see
> this right? Is this the right way?
> Thanks.
>
> Dietmar.
>
> _______________________________________________
> Xen-ia64-devel mailing list
> Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-ia64-devel
do_timer.patch
Description: do_timer.patch
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|
|
|
|
|