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>] [day] [month] [year] [list]
Message-ID: <202512100547.N7QPYgfb-lkp@intel.com>
Date: Wed, 10 Dec 2025 10:04:22 +0300
From: Dan Carpenter <dan.carpenter@...aro.org>
To: oe-kbuild@...ts.linux.dev, Rohit Mathew <rohit.mathew@....com>
Cc: lkp@...el.com, oe-kbuild-all@...ts.linux.dev,
	linux-kernel@...r.kernel.org,
	Catalin Marinas <catalin.marinas@....com>,
	James Morse <james.morse@....com>, Ben Horgan <ben.horgan@....com>,
	Jonathan Cameron <jonathan.cameron@...wei.com>,
	Fenghua Yu <fenghuay@...dia.com>, Gavin Shan <gshan@...hat.com>,
	Shaopeng Tan <tan.shaopeng@...fujitsu.com>
Subject: drivers/resctrl/mpam_devices.c:1112 __ris_msmon_read() error:
 uninitialized symbol 'overflow'.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   cb015814f8b6eebcbb8e46e111d108892c5e6821
commit: 9e5afb7c32830bcd123976a7729ef4e2dff0cd77 arm_mpam: Use long MBWU counters if supported
config: arm64-randconfig-r072-20251208 (https://download.01.org/0day-ci/archive/20251210/202512100547.N7QPYgfb-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project a805147ac1ba123916de182babb0831fbb148756)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Reported-by: Dan Carpenter <dan.carpenter@...aro.org>
| Closes: https://lore.kernel.org/r/202512100547.N7QPYgfb-lkp@intel.com/

New smatch warnings:
drivers/resctrl/mpam_devices.c:1112 __ris_msmon_read() error: uninitialized symbol 'overflow'.

vim +/overflow +1112 drivers/resctrl/mpam_devices.c

823e7c3712c584 James Morse  2025-11-19  1070  static void __ris_msmon_read(void *arg)
823e7c3712c584 James Morse  2025-11-19  1071  {
823e7c3712c584 James Morse  2025-11-19  1072  	u64 now;
823e7c3712c584 James Morse  2025-11-19  1073  	bool nrdy = false;
823e7c3712c584 James Morse  2025-11-19  1074  	bool config_mismatch;
b35363793291e3 Ben Horgan   2025-11-19  1075  	bool overflow;
823e7c3712c584 James Morse  2025-11-19  1076  	struct mon_read *m = arg;
823e7c3712c584 James Morse  2025-11-19  1077  	struct mon_cfg *ctx = m->ctx;
823e7c3712c584 James Morse  2025-11-19  1078  	struct mpam_msc_ris *ris = m->ris;
41e8a14950e173 James Morse  2025-11-19  1079  	struct msmon_mbwu_state *mbwu_state;
823e7c3712c584 James Morse  2025-11-19  1080  	struct mpam_props *rprops = &ris->props;
823e7c3712c584 James Morse  2025-11-19  1081  	struct mpam_msc *msc = m->ris->vmsc->msc;
823e7c3712c584 James Morse  2025-11-19  1082  	u32 mon_sel, ctl_val, flt_val, cur_ctl, cur_flt;
823e7c3712c584 James Morse  2025-11-19  1083  
823e7c3712c584 James Morse  2025-11-19  1084  	if (!mpam_mon_sel_lock(msc)) {
823e7c3712c584 James Morse  2025-11-19  1085  		m->err = -EIO;
823e7c3712c584 James Morse  2025-11-19  1086  		return;
823e7c3712c584 James Morse  2025-11-19  1087  	}
823e7c3712c584 James Morse  2025-11-19  1088  	mon_sel = FIELD_PREP(MSMON_CFG_MON_SEL_MON_SEL, ctx->mon) |
823e7c3712c584 James Morse  2025-11-19  1089  		  FIELD_PREP(MSMON_CFG_MON_SEL_RIS, ris->ris_idx);
823e7c3712c584 James Morse  2025-11-19  1090  	mpam_write_monsel_reg(msc, CFG_MON_SEL, mon_sel);
823e7c3712c584 James Morse  2025-11-19  1091  
823e7c3712c584 James Morse  2025-11-19  1092  	/*
823e7c3712c584 James Morse  2025-11-19  1093  	 * Read the existing configuration to avoid re-writing the same values.
823e7c3712c584 James Morse  2025-11-19  1094  	 * This saves waiting for 'nrdy' on subsequent reads.
823e7c3712c584 James Morse  2025-11-19  1095  	 */
823e7c3712c584 James Morse  2025-11-19  1096  	read_msmon_ctl_flt_vals(m, &cur_ctl, &cur_flt);
9e5afb7c32830b Rohit Mathew 2025-11-19  1097  
9e5afb7c32830b Rohit Mathew 2025-11-19  1098  	if (mpam_feat_msmon_mbwu_31counter == m->type)
b35363793291e3 Ben Horgan   2025-11-19  1099  		overflow = cur_ctl & MSMON_CFG_x_CTL_OFLOW_STATUS;
9e5afb7c32830b Rohit Mathew 2025-11-19  1100  	else if (mpam_feat_msmon_mbwu_44counter == m->type ||
9e5afb7c32830b Rohit Mathew 2025-11-19  1101  		 mpam_feat_msmon_mbwu_63counter == m->type)
9e5afb7c32830b Rohit Mathew 2025-11-19  1102  		overflow = cur_ctl & MSMON_CFG_MBWU_CTL_OFLOW_STATUS_L;

overflow not initialized on else path, but I haven't looked at how
&cur_flt is set in read_msmon_ctl_flt_vals() so this could be a
false positive.

b35363793291e3 Ben Horgan   2025-11-19  1103  
823e7c3712c584 James Morse  2025-11-19  1104  	clean_msmon_ctl_val(&cur_ctl);
823e7c3712c584 James Morse  2025-11-19  1105  	gen_msmon_ctl_flt_vals(m, &ctl_val, &flt_val);
823e7c3712c584 James Morse  2025-11-19  1106  	config_mismatch = cur_flt != flt_val ||
823e7c3712c584 James Morse  2025-11-19  1107  			  cur_ctl != (ctl_val | MSMON_CFG_x_CTL_EN);
823e7c3712c584 James Morse  2025-11-19  1108  
b35363793291e3 Ben Horgan   2025-11-19  1109  	if (config_mismatch) {
823e7c3712c584 James Morse  2025-11-19  1110  		write_msmon_ctl_flt_vals(m, ctl_val, flt_val);
b35363793291e3 Ben Horgan   2025-11-19  1111  		overflow = false;
b35363793291e3 Ben Horgan   2025-11-19 @1112  	} else if (overflow) {
                                                           ^^^^^^^^
here.

b35363793291e3 Ben Horgan   2025-11-19  1113  		mpam_write_monsel_reg(msc, CFG_MBWU_CTL,
9e5afb7c32830b Rohit Mathew 2025-11-19  1114  				      cur_ctl &
9e5afb7c32830b Rohit Mathew 2025-11-19  1115  				      ~(MSMON_CFG_x_CTL_OFLOW_STATUS |
9e5afb7c32830b Rohit Mathew 2025-11-19  1116  					MSMON_CFG_MBWU_CTL_OFLOW_STATUS_L));
b35363793291e3 Ben Horgan   2025-11-19  1117  	}
823e7c3712c584 James Morse  2025-11-19  1118  
823e7c3712c584 James Morse  2025-11-19  1119  	switch (m->type) {
823e7c3712c584 James Morse  2025-11-19  1120  	case mpam_feat_msmon_csu:

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ