Summary: | [CI] igt@perf@short-reads -fail - Failed assertion: ret == -1 | ||
---|---|---|---|
Product: | DRI | Reporter: | Marta Löfstedt <marta.lofstedt> |
Component: | DRM/Intel | Assignee: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Status: | RESOLVED MOVED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Severity: | minor | ||
Priority: | medium | CC: | don.hiatt, intel-gfx-bugs, martin.peres |
Version: | DRI git | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | ReadyForDev | ||
i915 platform: | BXT, GLK, HSW, KBL, SKL | i915 features: | Perf/OA |
Description
Marta Löfstedt
2017-10-10 08:07:20 UTC
8bytes is exactly the size of the report header, so probably just a case of being unlucky with the read() giving us a REPORT_LOST, which just so happens to fit into the non-protected region so we don't get an EFAULT. First thought would just be: diff --git a/tests/perf.c b/tests/perf.c index ad62319e..fe8e32bf 100644 --- a/tests/perf.c +++ b/tests/perf.c @@ -3121,7 +3121,13 @@ 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 - 16); + ret = read(stream_fd, + header, + page_size); + } while (header->type == DRM_I915_PERF_RECORD_OA_REPORT_LOST); + igt_assert_eq(ret, -1); igt_assert_eq(errno, EFAULT); Last seen:shard-kbl: CI_DRM_3236: 2017-10-14 / 114 runs ago shard-apl: CI_DRM_3206: 2017-10-11 / 145 runs ago Reproduced GLK-shards: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_3445/shard-glkb1/igt@perf@short-reads.html (perf:12770) CRITICAL: Test assertion failure function test_short_reads, file perf.c:3125: (perf:12770) CRITICAL: Failed assertion: ret == -1 (perf:12770) CRITICAL: error: 8 != -1 Subtest short-reads failed. https://intel-gfx-ci.01.org/tree/drm-tip/igt@perf@short-reads.html All green in CI and no new reports since December, can this be closed? Thank you. (In reply to Elizabeth from comment #4) > https://intel-gfx-ci.01.org/tree/drm-tip/igt@perf@short-reads.html > All green in CI and no new reports since December, can this be closed? Thank > you. The cut-off time for a CI generated bug is 1 month. Unless there is a real fix merged. Sure, feel free to close. One kernel patch that might have fixed this is : commit 41d3fdcd15d5ecf29cc73e8b79c2327ebb54b960 Author: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Date: Thu Mar 1 11:06:13 2018 +0000 drm/i915/perf: fix perf stream opening lock Re-opened due to SKL: https://intel-gfx-ci.01.org/tree/drm-tip/drmtip_19/fi-skl-6260u/igt@perf@short-reads.html (perf:1333) CRITICAL: Test assertion failure function test_short_reads, file ../tests/perf.c:2693: (perf:1333) CRITICAL: Failed assertion: ret == -1 (perf:1333) CRITICAL: error: 8 != -1 Subtest short-reads failed. This issue was seen last time two weeks ago. This issue occurs once in a week or two with drmtip/igt/CI DRM FULL. Do not close this issue until we get consistent results. Need to wait few weeks/months to close this issue. https://intel-gfx-ci.01.org/tree/drm-tip/drmtip_105/fi-kbl-r/igt@perf@short-reads.html (perf:1577) CRITICAL: Test assertion failure function test_short_reads, file ../tests/perf.c:2697: (perf:1577) CRITICAL: Failed assertion: ret == -1 (perf:1577) CRITICAL: error: 8 != -1 Subtest short-reads failed.(pe *** Bug 106917 has been marked as a duplicate of this bug. *** https://intel-gfx-ci.01.org/tree/drm-tip/drmtip_157/fi-bxt-j4205/igt@perf@short-reads.html Starting subtest: short-reads (perf:2171) CRITICAL: Test assertion failure function test_short_reads, file ../tests/perf.c:2704: (perf:2171) CRITICAL: Failed assertion: ret == -1 (perf:2171) CRITICAL: error: 8 != -1 Subtest short-reads failed. The test_short_reads() "tests/perf.c" is trying to read the OA perf records. The assert is triggering because it is requesting a read that can't return a single record and is expecting an EFAULT. However, instead of getting the EFAULT, the read is failing with -8(ENOEXEC). In Comment #1, mwa suggested a fix that has still not been added to igt. The failure is still occurring on KBL(CI_DRM_6743_full 1 week, 6 days old) / SKL(drmtip_356 2 days, 3 hours old). As this is a test harness issue, it doesn't seem to have any user impact so lowering the current high/critical to medium/minor. The fix in #1 should be given a try. A CI Bug Log filter associated to this bug has been updated: {- SKL BXT APL KBL GLK: igt@perf@short-reads - Failed assertion: ret == -1 -} {+ SKL BXT APL KBL GLK: igt@perf@short-reads - fail / timeout - Failed assertion: ret == -1 +} New failures caught by the filter: * https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7092/shard-apl5/igt@perf@short-reads.html Submitted mwa's suggested fix (Comment #1) to try-bot. A CI Bug Log filter associated to this bug has been updated: {- SKL BXT APL KBL GLK: igt@perf@short-reads - fail / timeout - Failed assertion: ret == -1 -} {+ HSW BXT APL SKL KBL GLK: igt@perf@short-reads - fail / timeout - Failed assertion: ret == -1 +} New failures caught by the filter: * https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7238/shard-hsw6/igt@perf@short-reads.html -- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/drm/intel/issues/51. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.