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 5B1C9C25B74 for ; Tue, 21 May 2024 16:10:31 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id F10A089321; Tue, 21 May 2024 16:10:30 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="LzonZtq3"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) by gabe.freedesktop.org (Postfix) with ESMTPS id 06E0689321 for ; Tue, 21 May 2024 16:10:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1716307814; x=1747843814; h=date:message-id:from:to:cc:subject:in-reply-to: references:mime-version; bh=1hdkGQ//zKflVrWnP452iw3O5xuAi4vpwSjVRusXaTQ=; b=LzonZtq3/JwSKvGc2oCVjEKcemUKeEW7QMrXkikz+l1U5yOE5cAJQFmF YcTV5kR7LZppNzHew3kmpTu4YKTXe+BvxPvFg29bVJBgCCN4/rq0tdcDM rMjJIkGN4Q6MPb59Jrhr3/HzRVHJv7qPjlKJBWYm9NsuluFev1PDE29z5 WTfAoXvFIvdJGEJYqzOMvK10i9i+UjgmFaGV/gMWU2z9I2yv4YMZqO8XD iVdyt5EsPCI2PIZWBj43X360C2ebFhClJt1BSoJ3KhelNHSvUaRMDXikx 4XGJwIspysMuFcVOzfUuvmfl513zeHO5cYVUMEU2pNJXgpv8PIZ5uaKtv w==; X-CSE-ConnectionGUID: mrM8Z8VzS6Kqz64SDx6HTQ== X-CSE-MsgGUID: P1J5XzhDTsOSMW6xKic7ow== X-IronPort-AV: E=McAfee;i="6600,9927,11078"; a="12357970" X-IronPort-AV: E=Sophos;i="6.08,178,1712646000"; d="scan'208";a="12357970" Received: from orviesa005.jf.intel.com ([10.64.159.145]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 May 2024 09:10:12 -0700 X-CSE-ConnectionGUID: mxSqISkUS9igkdw7xLOuWw== X-CSE-MsgGUID: d8df5d7/QySbaA3+mnikZw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,178,1712646000"; d="scan'208";a="37800142" Received: from orsosgc001.jf.intel.com (HELO orsosgc001.intel.com) ([10.165.21.138]) by orviesa005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 May 2024 09:10:11 -0700 Date: Tue, 21 May 2024 09:10:11 -0700 Message-ID: <851q5v2ljw.wl-ashutosh.dixit@intel.com> From: "Dixit, Ashutosh" To: "Souza, Jose" Cc: "intel-xe@lists.freedesktop.org" , "Krzemien, Robert" , "Nerlige Ramappa, Umesh" , "Landwerlin, Lionel G" Subject: Re: [PATCH 00/17] Add OA functionality to Xe In-Reply-To: <595ea35d63cd92777b36f6ab87cd1f6483a4b38f.camel@intel.com> References: <20240315013518.2848986-1-ashutosh.dixit@intel.com> <438b276a653bf56fe1e0e131709d615dec86ae3e.camel@intel.com> <87frufuc96.wl-ashutosh.dixit@intel.com> <96d03111d07e8182e7ecb3c0ca1942c7fef22e6f.camel@intel.com> <595ea35d63cd92777b36f6ab87cd1f6483a4b38f.camel@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/28.2 (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: intel-xe@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel Xe graphics driver List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-xe-bounces@lists.freedesktop.org Sender: "Intel-xe" On Tue, 21 May 2024 07:47:58 -0700, Souza, Jose wrote: Hi Jose, > > Other ask, can you remove this 'Failed to remove unknown OA config' > > debug message from xe_oa_remove_config_ioctl()? > > Missed 'Insufficient privileges to remove xe OA config', that need to be > removed too from xe_oa_remove_config_ioctl(). > > > Mesa will be using DRM_XE_PERF_OP_REMOVE_CONFIG with config id set to > > UINT64_MAX to detect if Xe KMD supports OA counters and if application > > has enough permissions to use it. So it causes dmesg to be flooded > > with 'xe 0000:00:02.0: [drm:xe_oa_remove_config_ioctl [xe]] Failed to > > remove unknown OA config' messages when running tests suites. > > > > Or do you have other suggestion of uAPI that I can use. OK, so you are relying on ENODEV and EACCES errno's from DRM_XE_PERF_OP_REMOVE_CONFIG to find out (a) if OA is present and (b) if you need to be root (actually CAP_PERFMON or CAP_SYS_ADMIN). This logic in Xe should be close to what we have in i915? What does Mesa do for i915, or what doesn't work in Xe? Here are some pointers: * You can execute DRM_XE_DEVICE_QUERY_OA_UNITS to see if OA is present * Add/remove OA configs and using the global OAG buffer (time based sampling or DRM_XE_OA_PROPERTY_SAMPLE_OA set) are priviliged operations (need root). Operations which only need OAR/OAC (OA queries, without DRM_XE_OA_PROPERTY_SAMPLE_OA) can be executed by non-root. * If "/proc/sys/dev/xe/perf_stream_paranoid" is 0, all operations can be executed by non-root users. Otherwise, as I described in the previous point. So basically I think you just need to check for the perf_stream_paranoid file above. It will tell you both (a) if OA is present (because we are going to merge the code which creates this file together with OA) and (b) if you need to be root for particular operations. Thanks. -- Ashutosh