[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 10/11] hvm/hpet: Prevent master clock equal to comparator while enabled
On 04/25/14 08:25, Jan Beulich wrote: >>>> On 17.04.14 at 19:43,<dslutz@xxxxxxxxxxx> wrote: >> Based on the software-developers-hpet-spec-1-0a.pdf, the comparator >> for a periodic timer will change to the new value when it matches >> the master clock. The current code here uses a very standard >> rounding formula of "((x + y - 1) / y) * y". This is wrong because >> in this case you need to go to the next comparator value when "x" >> equals "y". Not when "x + 1" equals "y". In this case "y" is the >> period and "x" is the master clock. >> >> The code lines: >> >> elapsed = hpet_read_maincounter(h, guest_time) + >> period - 1 - comparator; >> comparator += (elapsed / period) * period; >> >> are what matter here. > So this is basically answering the question I raised on an earlier > patch, and I think it implies that this earlier patch is then pointless > (or should likely be folded with this one). Yes, the -1 is wrong. After more thinking on it, the last patch (#11) does make the previous patch (#8) not needed. Looks like I will be dropping patch #8 "hvm/hpet: Use signed divide in hpet_get_comparator." as not needed. -Don Slutz > Jan > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |