[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240701105238.GC20127@noisy.programming.kicks-ass.net>
Date: Mon, 1 Jul 2024 12:52:38 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Adrian Hunter <adrian.hunter@...el.com>
Cc: Ingo Molnar <mingo@...hat.com>, Mark Rutland <mark.rutland@....com>,
	Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
	Heiko Carstens <hca@...ux.ibm.com>,
	Thomas Richter <tmricht@...ux.ibm.com>,
	Hendrik Brueckner <brueckner@...ux.ibm.com>,
	Suzuki K Poulose <suzuki.poulose@....com>,
	Mike Leach <mike.leach@...aro.org>,
	James Clark <james.clark@....com>, coresight@...ts.linaro.org,
	linux-arm-kernel@...ts.infradead.org,
	Yicong Yang <yangyicong@...ilicon.com>,
	Jonathan Cameron <jonathan.cameron@...wei.com>,
	Will Deacon <will@...nel.org>,
	Arnaldo Carvalho de Melo <acme@...nel.org>,
	Jiri Olsa <jolsa@...nel.org>, Namhyung Kim <namhyung@...nel.org>,
	Ian Rogers <irogers@...gle.com>, Andi Kleen <ak@...ux.intel.com>,
	linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org
Subject: Re: [PATCH V8 01/12] perf/core: Add aux_pause, aux_resume,
 aux_start_paused
On Fri, Jun 28, 2024 at 09:51:00AM +0300, Adrian Hunter wrote:
> +	union {
> +		__u32	aux_action;
> +		struct {
> +			__u32	aux_start_paused :  1, /* start AUX area tracing paused */
> +				aux_pause        :  1, /* on overflow, pause AUX area tracing */
> +				aux_resume       :  1, /* on overflow, resume AUX area tracing */
> +				__reserved_3     : 29;
> +		};
> +	};
> @@ -12860,7 +12930,7 @@ perf_event_create_kernel_counter(struct perf_event_attr *attr, int cpu,
>  	 * Grouping is not supported for kernel events, neither is 'AUX',
>  	 * make sure the caller's intentions are adjusted.
>  	 */
> -	if (attr->aux_output)
> +	if (attr->aux_output || attr->aux_action)
>  		return ERR_PTR(-EINVAL);
>  
AFAICT this is the only usage of aux_action. But in a few patches time
you'll introduce a helper along the lines of has_aux_action() that tests
all the individual bits.
Combined with perf_copy_attr() ensuring __reserved_3 is actually 0, I'm
thinking that should all be enough to render this aux_action field
surplus to requirement, and we can simplify all this somewhat, no?
Powered by blists - more mailing lists
 
