[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a3e95937-b0c7-020e-d52d-7189d2540f8f@huawei.com>
Date: Sat, 25 Oct 2025 16:45:32 +0800
From: Zeng Heng <zengheng4@...wei.com>
To: Ben Horgan <ben.horgan@....com>, <james.morse@....com>
CC: <amitsinght@...vell.com>, <baisheng.gao@...soc.com>,
<baolin.wang@...ux.alibaba.com>, <bobo.shaobowang@...wei.com>,
<carl@...amperecomputing.com>, <catalin.marinas@....com>, <dakr@...nel.org>,
<dave.martin@....com>, <david@...hat.com>, <dfustini@...libre.com>,
<fenghuay@...dia.com>, <gregkh@...uxfoundation.org>, <gshan@...hat.com>,
<guohanjun@...wei.com>, <jeremy.linton@....com>,
<jonathan.cameron@...wei.com>, <kobak@...dia.com>, <lcherian@...vell.com>,
<lenb@...nel.org>, <linux-acpi@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>, <linux-kernel@...r.kernel.org>,
<lpieralisi@...nel.org>, <peternewman@...gle.com>, <quic_jiles@...cinc.com>,
<rafael@...nel.org>, <robh@...nel.org>, <rohit.mathew@....com>,
<scott@...amperecomputing.com>, <sdonthineni@...dia.com>,
<sudeep.holla@....com>, <tan.shaopeng@...itsu.com>, <will@...nel.org>,
<xhao@...ux.alibaba.com>, <wangkefeng.wang@...wei.com>,
<sunnanyong@...wei.com>
Subject: Re: [PATCH mpam mpam/snapshot/v6.14-rc1] arm64/mpam: Fix MBWU monitor
overflow handling
Hi Ben,
On 2025/10/23 0:17, Ben Horgan wrote:
>>
>> Also fix the handling of overflow amount calculation. There's no need to
>> subtract mbwu_state->prev_val when calculating overflow_val.
>
> Why not? Isn't this the pre-overflow part that we are missing from the
> running count?
>
The MSMON_MBWU register accumulates counts monotonically forward and
would not automatically cleared to zero on overflow.
The overflow portion is exactly what mpam_msmon_overflow_val() computes,
there is no need to additionally subtract mbwu_state->prev_val.
>>
>> Signed-off-by: Zeng Heng <zengheng4@...wei.com>
>> ---
>> drivers/resctrl/mpam_devices.c | 8 +++++---
>> 1 file changed, 5 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/resctrl/mpam_devices.c b/drivers/resctrl/mpam_devices.c
>> index 0dd048279e02..06f3ec9887d2 100644
>> --- a/drivers/resctrl/mpam_devices.c
>> +++ b/drivers/resctrl/mpam_devices.c
>> @@ -1101,7 +1101,8 @@ static void __ris_msmon_read(void *arg)
>> clean_msmon_ctl_val(&cur_ctl);
>> gen_msmon_ctl_flt_vals(m, &ctl_val, &flt_val);
>> config_mismatch = cur_flt != flt_val ||
>> - cur_ctl != (ctl_val | MSMON_CFG_x_CTL_EN);
>> + (cur_ctl & ~MSMON_CFG_x_CTL_OFLOW_STATUS) !=
>> + (ctl_val | MSMON_CFG_x_CTL_EN);
>
> This only considers 31 bit counters. I would expect any change here to
> consider all lengths of counter. Also, as the overflow bit is no longer
> reset due to the config mismatch it needs to be reset somewhere else.
Yes, overflow bit needs to be cleared somewhere. I try to point out in
the next patch mail.
Best Regards,
Zeng Heng
Powered by blists - more mailing lists