From patchwork Wed Feb 3 21:41:43 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Anholt X-Patchwork-Id: 8209301 Return-Path: X-Original-To: patchwork-intel-gfx@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id EF3E2BEEED for ; Wed, 3 Feb 2016 21:41:49 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 239CF20260 for ; Wed, 3 Feb 2016 21:41:49 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 23491202D1 for ; Wed, 3 Feb 2016 21:41:48 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 20A946E34B; Wed, 3 Feb 2016 13:41:47 -0800 (PST) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from annarchy.freedesktop.org (annarchy.freedesktop.org [131.252.210.176]) by gabe.freedesktop.org (Postfix) with ESMTP id 0A5906E432; Wed, 3 Feb 2016 13:41:45 -0800 (PST) Received: from eliezer.anholt.net (annarchy.freedesktop.org [127.0.0.1]) by annarchy.freedesktop.org (Postfix) with ESMTP id F0B0B181EC; Wed, 3 Feb 2016 13:41:44 -0800 (PST) Received: by eliezer.anholt.net (Postfix, from userid 1000) id 7AE91F1B137; Wed, 3 Feb 2016 13:41:43 -0800 (PST) From: Eric Anholt To: intel-gfx@lists.freedesktop.org Date: Wed, 3 Feb 2016 13:41:43 -0800 Message-Id: <1454535703-660-9-git-send-email-eric@anholt.net> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1454535703-660-1-git-send-email-eric@anholt.net> References: <1454535703-660-1-git-send-email-eric@anholt.net> Subject: [Intel-gfx] [PATCH igt 9/9] igt/vc4_wait_bo: Add tests with rendering performed. X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Spam-Status: No, score=-4.6 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP These caught an unexpected bug with clear colors (we'd get the last executed clear's color in our new BO), while failing to catch the bug I'd been hoping to find all along. Signed-off-by: Eric Anholt --- tests/vc4_wait_bo.c | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/tests/vc4_wait_bo.c b/tests/vc4_wait_bo.c index 642b941..511c03a 100644 --- a/tests/vc4_wait_bo.c +++ b/tests/vc4_wait_bo.c @@ -34,6 +34,38 @@ #include #include "vc4_drm.h" +static void +test_used_bo(int fd, uint64_t timeout) +{ + size_t size = 4096; + uint32_t clearval = 0xaabbccdd + timeout; + int handle = igt_vc4_get_cleared_bo(fd, size, clearval); + struct drm_vc4_wait_bo wait = { + .timeout_ns = timeout, + .handle = handle, + }; + int ret, i; + + ret = ioctl(fd, DRM_IOCTL_VC4_WAIT_BO, &wait); + if (timeout == ~0ull) { + igt_assert(ret == 0); + } else { + if (ret == -1 && errno == ETIME) + igt_debug("Timeout triggered\n"); + igt_assert(ret == 0 || (ret == -1 && errno == ETIME)); + } + + if (ret == 0) { + uint32_t *map = igt_vc4_mmap_bo(fd, handle, size, PROT_READ); + for (i = 0; i < size / 4; i++) { + igt_assert_eq_u32(map[i], clearval); + } + munmap((void *)map, size); + } + + gem_close(fd, handle); +} + igt_main { int ret; @@ -82,6 +114,15 @@ igt_main igt_assert(ret == 0); } + igt_subtest("used-bo-0ns") + test_used_bo(fd, 0); + + igt_subtest("used-bo-1ns") + test_used_bo(fd, 1); + + igt_subtest("used-bo") + test_used_bo(fd, ~0ull); + igt_fixture close(fd); }