On 01/02/2019 10:40, Andrew Cooper wrote:
> On 01/02/2019 07:26, Juergen Gross wrote:
>> While working on my core scheduling series I stumbled over the periodic
>> timer. Could it be this timer never worked correctly?
>>
>> When the vcpu with an active periodic timer is running everything seems
>> to be fine. But when not running the timer is stopped in schedule(). So
>> a vcpu going to idle relying to be woken up by the periodic timer will
>> remain sleeping until another event is happening. The periodic timer
>> won't fire as it is stopped.
>>
>> The periodic timer is used via VCPUOP_set_periodic_timer only, and
>> today's Linux kernel isn't using it at all. So I guess this timer not
>> really working as it should is no big issue.
>>
>> I just wanted to mention that fact, maybe someone is keen repairing
>> this issue.
> 
> Do you mean to say that, after the next schedule(), any configured
> periodic timer ceases to provide further interrupts?

No, it just won't wake the vcpu up. As soon as the vcpu is running the
timer will run again and it will provide interrupts again. In case an
interrupt was due during the vcpu was not running that interrupt will
be delivered as soon as the vcpu starts running again.


Juergen

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to