From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BAB58C369B5 for ; Mon, 14 Apr 2025 23:19:14 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6B3CD10E17E; Mon, 14 Apr 2025 23:19:14 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="NOeIB0Jc"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) by gabe.freedesktop.org (Postfix) with ESMTPS id A989F10E17E for ; Mon, 14 Apr 2025 23:19:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1744672752; x=1776208752; h=date:message-id:from:to:cc:subject:in-reply-to: references:mime-version; bh=B1hRCGE2LtoeQ8kHYc7sfaNnD1PXfJGjtXBC43JafV4=; b=NOeIB0JcpaKVpHM8umqzBTVYxEWSxlhozaFEtLuTMyd5WBW4+0GwEij0 8G6em2dx3wwe1a/GBA3a/oYrQovDULVllBcOHXhpI4sljWecrDnzCX7uc 7mVGutzuLURcJl8YoOKJspPgA7/hjutr5ySXhSAFlwyJN5MmAxCggIAMx S0L/l36XQJGg7P8vo8R81UWYz1raI8cJyMNVWsSe7WhScWK5O0aBxbnKM e6xEXsWlOrdk1G1oHb/lkbYdcZmdyyLNEQmBHzSXAw3kqL8liSa1Nh6zd REbyv7DwnG/F6KiLbQ61GMd7qeTSFasOTUEQdxNM/EQRYjJ2SPaOjuEP4 g==; X-CSE-ConnectionGUID: kFTl3RHlTyGj5gJY6cToNw== X-CSE-MsgGUID: lW6Ij5vtS9WiULHrbhZRfA== X-IronPort-AV: E=McAfee;i="6700,10204,11403"; a="49992050" X-IronPort-AV: E=Sophos;i="6.15,213,1739865600"; d="scan'208";a="49992050" Received: from fmviesa006.fm.intel.com ([10.60.135.146]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Apr 2025 16:19:12 -0700 X-CSE-ConnectionGUID: KINHVQ6+SJCXSO28g8unHw== X-CSE-MsgGUID: TQ49ViBWTTWLx1MrPOu3LA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.15,213,1739865600"; d="scan'208";a="129796027" Received: from orsosgc001.jf.intel.com (HELO orsosgc001.intel.com) ([10.165.21.142]) by fmviesa006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Apr 2025 16:19:13 -0700 Date: Mon, 14 Apr 2025 16:19:11 -0700 Message-ID: <8534eas55c.wl-ashutosh.dixit@intel.com> From: "Dixit, Ashutosh" To: Umesh Nerlige Ramappa Cc: Subject: Re: [PATCH i-g-t] tests/intel/xe_oa: Get stream status on read error In-Reply-To: References: <20250409233441.143402-1-umesh.nerlige.ramappa@intel.com> <877c3reoyf.wl-ashutosh.dixit@intel.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/29.4 (x86_64-redhat-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-BeenThere: igt-dev@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development mailing list for IGT GPU Tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" On Mon, 14 Apr 2025 15:19:12 -0700, Umesh Nerlige Ramappa wrote: > > On Thu, Apr 10, 2025 at 01:33:44PM -0700, Dixit, Ashutosh wrote: > > On Wed, 09 Apr 2025 16:34:41 -0700, Umesh Nerlige Ramappa wrote: > >> > >> Whenever read fails, get stream status so we know the state of OA status > >> bits. > >> > >> Signed-off-by: Umesh Nerlige Ramappa > >> --- > >> tests/intel/xe_oa.c | 6 ++++++ > >> 1 file changed, 6 insertions(+) > >> > >> diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c > >> index 67acc74b3279..f3521c3d602e 100644 > >> --- a/tests/intel/xe_oa.c > >> +++ b/tests/intel/xe_oa.c > >> @@ -2294,6 +2294,7 @@ static void test_polling_small_buf(void) > >> errno = 0; > >> ret = read(stream_fd, buf, sizeof(buf)); > >> igt_assert_eq(ret, -1); > >> + get_stream_status(stream_fd); > >> igt_assert_eq(errno, ENOSPC); > >> > >> /* Poll with 0 timeout and expect POLLIN flag to be set */ > >> @@ -2568,6 +2569,7 @@ test_enable_disable(const struct drm_xe_engine_class_instance *hwe) > >> errno = 0; > >> ret = read(stream_fd, buf, sizeof(buf)); > >> igt_assert_eq(ret, -1); > >> + get_stream_status(stream_fd); > >> igt_assert_eq(errno, EINVAL); > >> > >> do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0); > >> @@ -2584,6 +2586,7 @@ test_enable_disable(const struct drm_xe_engine_class_instance *hwe) > >> /* Ensure num_reports can be read */ > >> while ((ret = read(stream_fd, buf, sizeof(buf))) < 0 && errno == EINTR) > >> ; > >> + get_stream_status(stream_fd); > >> igt_assert_eq(ret, sizeof(buf)); > > > > Here read() is not failing, so maybe we should drop this one? Otherwise: > > But here we could get an EIO for some strange reason and would be good to > know if a specific status bit was set. The idea was to call > get_stream_status in all places where read was called. It's fine, I went ahead and merged this along with some other patches. > Thanks, > Umesh > > > > > Reviewed-by: Ashutosh Dixit > > > >> > >> __perf_close(stream_fd); > >> @@ -2727,6 +2730,7 @@ test_non_sampling_read_error(void) > >> > >> ret = read(stream_fd, buf, sizeof(buf)); > >> igt_assert_eq(ret, -1); > >> + get_stream_status(stream_fd); > >> igt_assert_eq(errno, EINVAL); > >> > >> __perf_close(stream_fd); > >> @@ -2768,6 +2772,7 @@ test_disabled_read_error(void) > >> > >> ret = read(stream_fd, buf, sizeof(buf)); > >> igt_assert_eq(ret, -1); > >> + get_stream_status(stream_fd); > >> igt_assert_eq(errno, EINVAL); > >> > >> __perf_close(stream_fd); > >> @@ -2786,6 +2791,7 @@ test_disabled_read_error(void) > >> > >> ret = read(stream_fd, buf, sizeof(buf)); > >> igt_assert_eq(ret, -1); > >> + get_stream_status(stream_fd); > >> igt_assert_eq(errno, EINVAL); > >> > >> do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0); > >> -- > >> 2.43.0 > >>