<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Mar 28, 2022 at 4:56 PM Cyril Hrubis <<a href="mailto:chrubis@suse.cz" target="_blank">chrubis@suse.cz</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi!<br>
> >         clock_getres(CLOCK_REALTIME_COARSE, &res);<br>
> ><br>
> >         delta = 5 + (res.tv_nsec / 1000000) * 5;<br>
> ><br>
> <br>
> Sounds reasonable.<br>
> <br>
> But I don't understand why you multiply 5 for the resolution<br>
> (in milliseconds) here. Or, a wiser choice is to get the real<br>
> resolution for each clockid? i.e.<br>
<br>
I did multiply it with 5 just to add some error margin. I guess that we<br>
can as well multiply it with 2 if that works well enough.<br></blockquote><div><br></div><div><div class="gmail_default" style="font-size:small">Ok, I'd like to multiply 5 in case VM needs more.</div></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
I do not think that we should get resolution for each clock, the COARSE<br>
clock should have the worst resolution of all clocks.<br></blockquote><div><br></div><div><div class="gmail_default" style="font-size:small">Yes, quite enough for the rest. </div><div class="gmail_default" style="font-size:small">For precise clock, the second part will be zero since divided by 1000000.</div></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">    delta = 5 + (res.tv_nsec / 1000000) * 5;<br></div><div><br></div><div><br></div><div><div class="gmail_default" style="font-size:small">Test data from aarch4 (kernel-5.14) FYI:</div><div class="gmail_default" style="font-size:small">===================</div></div><div><span class="gmail_default" style="font-size:small"></span>clock_gettime04.c:108: TINFO: CLOCK_REALTIME: resolution is 1ns<br><div class="gmail_default" style="font-size:small">...</div>clock_gettime04.c:108: TINFO: CLOCK_REALTIME_COARSE: resolution is 10000000ns<br>clock_gettime04.c:108: TINFO: CLOCK_MONOTONIC: resolution is 1ns<br>clock_gettime04.c:108: TINFO: CLOCK_MONOTONIC_COARSE: resolution is 10000000ns<br>clock_gettime04.c:108: TINFO: CLOCK_MONOTONIC_RAW: resolution is 1ns<br>clock_gettime04.c:108: TINFO: CLOCK_BOOTTIME: resolution is 1ns<br><div class="gmail_default" style="font-size:small"><br></div></div></div><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div>Regards,<br></div><div>Li Wang<br></div></div></div></div>