From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 911566E497 for ; Fri, 21 May 2021 07:38:38 +0000 (UTC) Date: Fri, 21 May 2021 00:37:37 -0700 Message-ID: <87h7iwedvi.wl-ashutosh.dixit@intel.com> From: "Dixit, Ashutosh" In-Reply-To: <20210521064906.775140-1-viswax.krishna.raveendra.talabattula@intel.com> References: <20210521064906.775140-1-viswax.krishna.raveendra.talabattula@intel.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Subject: Re: [igt-dev] [Patch V5] [i-g-t] tests/i915: test pass for no caching case List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: viswax.krishna.raveendra.talabattula@intel.com Cc: igt-dev@lists.freedesktop.org, Mahesh.Meena@intel.com List-ID: On Thu, 20 May 2021 23:49:06 -0700, wrote: > > From: Viswa Krishna Raveendra Talabattula > > The userptr memory does not support I915_CACHING_NONE(no caching) level > as per the below commit related to i915 in the kernel > > commit 02b64a4a0cb14e414b0be3b7261edc4fabfc0e2c > Author: Maarten Lankhorst > Date: Tue Mar 23 16:50:02 2021 +0100 > > drm/i915: Reject more ioctls for userptr, v2. > > So lets make test pass for return value of -ENXIO and 0 > Print warning of "Deprecated userptr SET_CACHING behavior" for older > kernels Reviewed-by: Ashutosh Dixit > Signed-off-by: Viswa Krishna Raveendra Talabattula > --- > tests/i915/gem_userptr_blits.c | 33 ++++++++++++++++++++++++++++----- > 1 file changed, 28 insertions(+), 5 deletions(-) > > diff --git a/tests/i915/gem_userptr_blits.c b/tests/i915/gem_userptr_blits.c > index aad5f141..2814e3c3 100644 > --- a/tests/i915/gem_userptr_blits.c > +++ b/tests/i915/gem_userptr_blits.c > @@ -2016,6 +2016,7 @@ static void test_set_caching(int i915) > }; > uint32_t handle; > void *page; > + int ret; > > page = mmap(NULL, 4096, PROT_READ | PROT_WRITE, > MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); > @@ -2032,15 +2033,37 @@ static void test_set_caching(int i915) > > for (int idx = 0; idx < ARRAY_SIZE(levels); idx++) { > gem_userptr(i915, page, 4096, 0, 0, &handle); > - igt_assert_eq(__gem_set_caching(i915, handle, levels[idx]), 0); > + ret = __gem_set_caching(i915, handle, levels[idx]); > + if (levels[idx] == I915_CACHING_NONE) { > + if(ret != 0) > + igt_assert_eq(ret, -ENXIO); > + else > + igt_warn("Deprecated userptr SET_CACHING behavior\n"); > + } else { > + igt_assert_eq(ret, 0); > + } > gem_close(i915, handle); > } > > gem_userptr(i915, page, 4096, 0, 0, &handle); > - for (int idx = 0; idx < ARRAY_SIZE(levels); idx++) > - igt_assert_eq(__gem_set_caching(i915, handle, levels[idx]), 0); > - for (int idx = 0; idx < ARRAY_SIZE(levels); idx++) > - igt_assert_eq(__gem_set_caching(i915, handle, levels[idx]), 0); > + for (int idx = 0; idx < ARRAY_SIZE(levels); idx++) { > + ret = __gem_set_caching(i915, handle, levels[idx]); > + if (levels[idx] == I915_CACHING_NONE) { > + if (ret != 0) > + igt_assert_eq(ret, -ENXIO); > + } else { > + igt_assert_eq(ret, 0); > + } > + } > + for (int idx = 0; idx < ARRAY_SIZE(levels); idx++) { > + ret = __gem_set_caching(i915, handle, levels[idx]); > + if (levels[idx] == I915_CACHING_NONE) { > + if (ret != 0) > + igt_assert_eq(ret, -ENXIO); > + } else { > + igt_assert_eq(ret, 0); > + } > + } > gem_close(i915, handle); > > munmap(page, 4096); > -- > 2.30.0 > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev