mirror of https://github.com/xqemu/xqemu.git
avoid rounding problems
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@696 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
e463b581ea
commit
1154e441aa
|
@ -136,6 +136,10 @@ static int64_t pit_get_next_transition_time(PITChannelState *s,
|
||||||
}
|
}
|
||||||
/* convert to timer units */
|
/* convert to timer units */
|
||||||
next_time = s->count_load_time + muldiv64(next_time, ticks_per_sec, PIT_FREQ);
|
next_time = s->count_load_time + muldiv64(next_time, ticks_per_sec, PIT_FREQ);
|
||||||
|
/* fix potential rounding problems */
|
||||||
|
/* XXX: better solution: use a clock at PIT_FREQ Hz */
|
||||||
|
if (next_time <= current_time)
|
||||||
|
next_time = current_time + 1;
|
||||||
return next_time;
|
return next_time;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue