<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI][SHARDS] igt@kms_flip@flip-vs-expired-vblank - Failed assertion: gettime_us() - start < 500"
href="https://bugs.freedesktop.org/show_bug.cgi?id=105363#c4">Comment # 4</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI][SHARDS] igt@kms_flip@flip-vs-expired-vblank - Failed assertion: gettime_us() - start < 500"
href="https://bugs.freedesktop.org/show_bug.cgi?id=105363">bug 105363</a>
from <span class="vcard"><a class="email" href="mailto:arkadiusz.hiler@intel.com" title="Arek Hiler <arkadiusz.hiler@intel.com>"> <span class="fn">Arek Hiler</span></a>
</span></b>
<pre>The test is making sure that blocking wait on a expired vblank (that has
already
happened, so the current_seq == requested_seq) should be "immediate", i.e.
taking
no longer than 500us.
This tests fails in all its variants, 2x, interruptible, non-interruptible.
500us seems like a plenty of time, but I have especially bad intuition when
it comes to time scales.
I would advise extending logging to that we igt_debug() the time it takes for a
successful and failed wait, so we can inspect the time scale, and confirm that
500us is good enough. Another culprit may be the method of getting the current
time and type casting done along the way.
Reading both the kernel handler for the IOCTL and libdrm wrapper I have no idea
where we could waste time other than some wonky OS scheduling / context
switching.
User impact: hard to tell, without more information on the failed waits, but
should be no more than "medium", assuming they are not taking forever.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
<li>You are the QA Contact for the bug.</li>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>