Re: [PATCH] x86/resctrl: Fix a silly -Wunused-but-set-variable warning

From: Moger, Babu
Date: Tue Jan 24 2023 - 13:45:07 EST


Boris, Thanks for the fix.

Tested-by: Babu Moger <babu.moger@xxxxxxx>


On 1/24/23 12:13, Borislav Petkov wrote:
> From: "Borislav Petkov (AMD)" <bp@xxxxxxxxx>
>
> clang correctly complains
>
> arch/x86/kernel/cpu/resctrl/rdtgroup.c:1456:6: warning: variable \
> 'h' set but not used [-Wunused-but-set-variable]
> u32 h;
> ^
>
> but it can't know whether this use is innocuous or really a problem.
> There's a reason why those warning switches are behind a W=1 and not
> enabled by default - yes, one needs to do:
>
> make W=1 CC=clang HOSTCC=clang arch/x86/kernel/cpu/resctrl/
>
> with clang 14 in order to trigger it.
>
> I would normally not take a silly fix like that but this one is simple
> and doesn't make the code uglier so...
>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>
> Link: https://lore.kernel.org/r/202301242015.kbzkVteJ-lkp@xxxxxxxxx
> ---
> arch/x86/kernel/cpu/resctrl/rdtgroup.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> index 5990589f8a21..e2c1599d1b37 100644
> --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> @@ -1453,17 +1453,17 @@ static void mon_event_config_read(void *info)
> {
> struct mon_config_info *mon_info = info;
> unsigned int index;
> - u32 h;
> + u64 msrval;
>
> index = mon_event_config_index_get(mon_info->evtid);
> if (index == INVALID_CONFIG_INDEX) {
> pr_warn_once("Invalid event id %d\n", mon_info->evtid);
> return;
> }
> - rdmsr(MSR_IA32_EVT_CFG_BASE + index, mon_info->mon_config, h);
> + rdmsrl(MSR_IA32_EVT_CFG_BASE + index, msrval);
>
> /* Report only the valid event configuration bits */
> - mon_info->mon_config &= MAX_EVT_CONFIG_BITS;
> + mon_info->mon_config = msrval & MAX_EVT_CONFIG_BITS;
> }
>
> static void mondata_config_read(struct rdt_domain *d, struct mon_config_info *mon_info)

--
Thanks
Babu Moger