[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <96075e49-5f99-4f43-9c43-5b01fdc98897@amd.com>
Date: Fri, 6 Dec 2024 15:08:14 +0530
From: Ravi Bangoria <ravi.bangoria@....com>
To: Ingo Molnar <mingo@...nel.org>
Cc: peterz@...radead.org, mingo@...hat.com, namhyung@...nel.org,
acme@...nel.org, eranian@...gle.com, mark.rutland@....com,
alexander.shishkin@...ux.intel.com, jolsa@...nel.org, irogers@...gle.com,
adrian.hunter@...el.com, kan.liang@...ux.intel.com, tglx@...utronix.de,
bp@...en8.de, dave.hansen@...ux.intel.com, x86@...nel.org, hpa@...or.com,
linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org,
santosh.shukla@....com, ananth.narayan@....com, sandipan.das@....com,
Ravi Bangoria <ravi.bangoria@....com>
Subject: Re: [PATCH v2 05/10] perf/amd/ibs: Don't allow freq mode event
creation through ->config interface
>>>> Most perf_event_attr->config bits directly maps to IBS_{FETCH|OP}_CTL
>>>> MSR. Since the sample period is programmed in these control registers,
>>>> IBS PMU driver allows opening an IBS event by setting sample period
>>>> value directly in perf_event_attr->config instead of using explicit
>>>> perf_event_attr->sample_period interface.
>>>>
>>>> However, this logic is not applicable for freq mode events since the
>>>> semantics of control register fields are applicable only to fixed
>>>> sample period whereas the freq mode event adjusts sample period after
>>>> each and every sample. Currently, IBS driver (unintentionally) allows
>>>> creating freq mode event via ->config interface, which is semantically
>>>> wrong as well as detrimental because it can be misused to bypass
>>>> perf_event_max_sample_rate checks.
>>>
>>> Then let's fix those rate checks?
>>>
>>> AFAICS this patch limits functionality because the IBS driver would
>>> have to be fixed/enhanced to support frequency based events?
>>>
>>> I'd strongly favor fixing/enhancing the driver instead, as 'perf top -F
>>> 1000' is easy to use and it is a useful concept.
>>
>> No. This patch does not prevent opening an IBS event in freq mode. User
>> can still open freq mode IBS event with usual interface attr->freq=1 and
>> attr->sample_freq=<freq>. i.e. 'perf top -F 1000' with IBS event will
>> work fine with this patch.
>
> Oh, I see - the regular tooling uses perf_event_attr->sample_period, right?
Correct.
> Never mind then.
No worries. Thanks for the review :)
Thanks,
Ravi
Powered by blists - more mailing lists