On 2011-02-07 15:58, Avi Kivity wrote: > On 02/07/2011 04:54 PM, Anthony Liguori wrote: >> >>> Why the accumulated_ticks argument? >> >> Then the missing ticks is stored in the PeriodicTimer instead of >> storing it in the device state. That means we won't forget to save it >> in vmstate. >> >> It's convenient because then if we lose ticks in the PeriodicTimer >> layer, the devices have instance access to that info. When you do a >> read() from timerfd, it returns the number of coalesced events. >> That's the interface I had in my mind. >> >> We could just add a getter for PeriodicTimer and it would serve the >> same purpose. > > If a drift compensation policy is in effect, you don't need the missed > ticks, since you will get one callback for each (delayed) tick. If > there is no drift compensation policy, presumably you aren't interested > in lost ticks. So the ticks argument isn't very useful. Exactly. > > On the other hand, we need a way to inject lost ticks into a > PeriodicTimer. If interrupt injection detects that an interrupt was > coalesced, we want the timer to schedule a new tick for us. Isn't absence of corresponding call to periodic_timer_ack() sufficient? Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html