lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZecStMBA4YgQaBEZ@FVFF77S0Q05N>
Date: Tue, 5 Mar 2024 12:40:20 +0000
From: Mark Rutland <mark.rutland@....com>
To: Yang Jialong 杨佳龙 <jialong.yang@...ngroup.cn>
Cc: Heiko Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>,
	Alexander Gordeev <agordeev@...ux.ibm.com>,
	Christian Borntraeger <borntraeger@...ux.ibm.com>,
	Sven Schnelle <svens@...ux.ibm.com>, linux-s390@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] arch/s390/perf: Register cpumf_pmu with type =
 PERF_TYPE_RAW

On Tue, Mar 05, 2024 at 09:43:16AM +0800, Yang Jialong 杨佳龙 wrote:
> 在 2024/3/4 17:34, Mark Rutland 写道:
> > On Mon, Mar 04, 2024 at 10:27:01AM +0800, JiaLong.Yang wrote:
> > > The struct pmu cpumf_pmu has handled generic events. So it need some
> > > flags to tell core this thing.
> > 
> > It's not necessary to register as PERF_TYPE_RAW in order to handle raw events,
> > and PERF_TYPE_RAW is not a flag.
> > 
> > Have you encountered a functional problem, or was this found by inspection?
> 
> As you expected, I'm trying to confirm which one pmu has the capability to
> handle generic events in registering pmus instead of test generic events in
> each pmus when opening.

If we want to do that, then we need a new flag on struct pmu to restrict which
events we try to open on a PMU.

If you want to do that, you need to Cc the perf maintainers and discuss that
rather than point-hacking individual drivers.

> We can confirm that before using. We have pay more in handling them when
> opening.
> So most driver developers use PERF_TYPE_RAW. x86 and arm use
> PERF_PMU_CAP_EXTENDED_HW_TYPE. Others use struct pmu::task_ctx_nr =
> perf_hw_context.
> I think PERF_TYPE_RAW will be a easily accepted way. So ...

No, this is a hack, and it doesn't solve the problem you describe above.

If we want to remove the need for most PMUs to look at perf_event_attr::type,
then we should have a new PERF_PMU_CAP_ flag on the PMU to say "this PMU
supports generic events" (or separate flags for the generic RAW/HW/CACHE
types), and update all relevant PMUs accordingly.

Please do not try to overload pmu::type with additional semantics; it's messy
enough as-is.

Mark. 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ