[PATCH i-g-t] tests/i915/perf: trybot: try to fix short-reads
Umesh Nerlige Ramappa
umesh.nerlige.ramappa at intel.com
Fri Sep 18 00:42:38 UTC 2020
When checking for EFAULT in short-reads, make sure you weed out lost
reports.
Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa at intel.com>
---
tests/i915/perf.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tests/i915/perf.c b/tests/i915/perf.c
index ba477f1c..fbd7b4f3 100644
--- a/tests/i915/perf.c
+++ b/tests/i915/perf.c
@@ -2788,7 +2788,12 @@ test_short_reads(void)
/* A read that can't return a single record because it would result
* in a fault on buffer overrun should result in an EFAULT error...
*/
- ret = read(stream_fd, pages + page_size - 16, page_size);
+ do {
+ header = (void *)(pages + page_size - record_size);
+ ret = read(stream_fd,
+ pages + page_size - 16,
+ page_size);
+ } while (ret > 0 && header->type == DRM_I915_PERF_RECORD_OA_REPORT_LOST);
igt_assert_eq(ret, -1);
igt_assert_eq(errno, EFAULT);
--
2.20.1
More information about the Intel-gfx-trybot
mailing list