Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Horgan <ben.horgan@arm.com>
To: Lee Trager <lee@trager.us>
Cc: james.morse@arm.com, reinette.chatre@intel.com,
	fenghuay@nvidia.com, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, dave.martin@arm.com,
	andre.przywara@arm.com
Subject: Re: [PATCH v1 07/11] arm_mpam: Initialize all of struct mon_read in mpam_restore_mbwu_state()
Date: Tue, 21 Jul 2026 09:40:49 +0100	[thread overview]
Message-ID: <f154889e-5afc-4b9c-99f3-3da86f5e87cf@arm.com> (raw)
In-Reply-To: <0e117330-36ed-4917-8a63-384d1e4f77fc@trager.us>

Hi Lee,

On 7/21/26 00:05, Lee Trager wrote:
> On 7/10/26 4:55 AM, Ben Horgan wrote:
> 
>> m->err may be read before initialization in __ris_msmon_read() when called
>> from mpam_restore_mbwu_state().
>>
>> Initialize the whole struct mon_read in mpam_restore_mbwu_state() and fix
>> the spelling of mbwu in the name.
>>
>> Fixes: 41e8a14950e1 ("arm_mpam: Track bandwidth counter state for power management")
>> Signed-off-by: Ben Horgan <ben.horgan@arm.com>
>> ---
>>   drivers/resctrl/mpam_devices.c | 13 +++++++------
>>   1 file changed, 7 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/resctrl/mpam_devices.c b/drivers/resctrl/mpam_devices.c
>> index a49f426aefc0..c9adc450f087 100644
>> --- a/drivers/resctrl/mpam_devices.c
>> +++ b/drivers/resctrl/mpam_devices.c
>> @@ -1640,7 +1640,6 @@ static int mpam_restore_mbwu_state(void *_ris)
>>   {
>>       int i;
>>       u64 val;
> val is still uninitialized. Its passed to to __ris_mon_read() below which does *m->val += now;

Ok, I don't think this causes any actual problems as an unitialized automatic variable has an
indeterminate value, we're just adding to it rather than making any decisions or persisting the
value. As it's unsigned the addition is defined even if it wraps around. Having said that, it's
clearer just to initialize it. I'll set it to 0.

Thanks,

Ben

>> -    struct mon_read mwbu_arg;
>>       struct mpam_msc_ris *ris = _ris;
>>       struct msmon_mbwu_state *mbwu_state;
>>       struct mpam_msc *msc = ris->vmsc->msc;
>> @@ -1653,16 +1652,18 @@ static int mpam_restore_mbwu_state(void *_ris)
>>               return -EIO;
>>             if (ris->mbwu_state[i].enabled) {
>> -            mwbu_arg.ris = ris;
>> -            mwbu_arg.ctx = &ris->mbwu_state[i].cfg;
>> -            mwbu_arg.type = mpam_msmon_choose_counter(class);
>> -            mwbu_arg.val = &val;
>> +            struct mon_read mbwu_arg = {
>> +                .ris = ris,
>> +                .ctx = &ris->mbwu_state[i].cfg,
>> +                .type = mpam_msmon_choose_counter(class),
>> +                .val = &val
>> +            };
>>                 mbwu_state->reset_on_next_read = true;
>>                 mpam_mon_sel_unlock(msc);
>>   -            __ris_msmon_read(&mwbu_arg);
>> +            __ris_msmon_read(&mbwu_arg);
>>           } else {
>>               mpam_mon_sel_unlock(msc);
>>           }



  reply	other threads:[~2026-07-21  8:41 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-10 11:55 [PATCH v1 00/11] arm_mpam: minor fixes at v7.2 Ben Horgan
2026-07-10 11:55 ` [PATCH v1 01/11] arm_mpam: Move MPAMF_ECR write helpers to allow reuse Ben Horgan
2026-07-10 11:55 ` [PATCH v1 02/11] arm_mpam: Restore the error interrupt enable from mpam_cpu_online() Ben Horgan
2026-07-16  3:59   ` Gavin Shan
2026-07-16  8:59     ` Ben Horgan
2026-07-17  0:51       ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 03/11] arm_mpam: Set mpam_feat_msmon_mbwu_31counter when there are bandwidth counters Ben Horgan
2026-07-15  6:34   ` Shaopeng Tan (Fujitsu)
2026-07-15  9:11     ` Ben Horgan
2026-07-16  4:18   ` Gavin Shan
2026-07-16  9:26     ` Ben Horgan
2026-07-17  0:52       ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 04/11] arm_mpam: Add missing mon_sel locking in MBWU restore Ben Horgan
2026-07-16  4:29   ` Gavin Shan
2026-07-16  9:31     ` Ben Horgan
2026-07-17  0:53       ` Gavin Shan
2026-07-17  0:56   ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 05/11] arm_mpam: Ensure MBWU counters are reset on restore Ben Horgan
2026-07-15  7:49   ` Shaopeng Tan (Fujitsu)
2026-07-15  8:45     ` Ben Horgan
2026-07-16  0:26       ` Shaopeng Tan (Fujitsu)
2026-07-16  9:34         ` Ben Horgan
2026-07-10 11:55 ` [PATCH v1 06/11] arm_mpam: Use __ris_msmon_read() for saving MBWU state Ben Horgan
2026-07-16  4:49   ` Gavin Shan
2026-07-17  0:55   ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 07/11] arm_mpam: Initialize all of struct mon_read in mpam_restore_mbwu_state() Ben Horgan
2026-07-17  0:55   ` Gavin Shan
2026-07-20 23:05   ` Lee Trager
2026-07-21  8:40     ` Ben Horgan [this message]
2026-07-10 11:55 ` [PATCH v1 08/11] arm_mpam: resctrl: Correct check that existing class is L3 Ben Horgan
2026-07-16  4:51   ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 09/11] arm_mpam: resctrl: Make read_mon_cdp_safe() self consistent Ben Horgan
2026-07-16  4:51   ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 10/11] arm_mpam: Don't loop forever if there is the maximum possible amount of PARTIDs Ben Horgan
2026-07-16  4:52   ` Gavin Shan
2026-07-10 11:55 ` [PATCH v1 11/11] arm_mpam: Switch to kvzmalloc_objs() for allocation of component cfg Ben Horgan
2026-07-16  4:52   ` Gavin Shan
2026-07-16  4:58 ` [PATCH v1 00/11] arm_mpam: minor fixes at v7.2 Gavin Shan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f154889e-5afc-4b9c-99f3-3da86f5e87cf@arm.com \
    --to=ben.horgan@arm.com \
    --cc=andre.przywara@arm.com \
    --cc=dave.martin@arm.com \
    --cc=fenghuay@nvidia.com \
    --cc=james.morse@arm.com \
    --cc=lee@trager.us \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=reinette.chatre@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox