All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com
Subject: drivers/scsi/qla2xxx/qla_init.c:8490:28: warning: variable 'fragment' set but not used
Date: Tue, 2 Dec 2025 19:10:18 +0100	[thread overview]
Message-ID: <202512021947.U82G4ELP-lkp@intel.com> (raw)

:::::: 
:::::: Manual check reason: "bisect to a FBC not belonging to original linux-review patches: branch: linux-review/Nilesh-Javali/qla2xxx-Add-Speed-in-SFP-print-information/20251202-140943, commit: 1bfb31c14b23902a2fe29ecfd75b669ced4b2dc0"
:::::: 

BCC: lkp@intel.com
CC: llvm@lists.linux.dev
CC: oe-kbuild-all@lists.linux.dev
TO: Manish Rangankar <mrangankar@marvell.com>
CC: 0day robot <lkp@intel.com>
CC: Nilesh Javali <njavali@marvell.com>

tree:   https://github.com/intel-lab-lkp/linux/commits/Nilesh-Javali/qla2xxx-Add-Speed-in-SFP-print-information/20251202-140943
head:   72ffa216e20607b795b5962d24ebee31661864b2
commit: 1bfb31c14b23902a2fe29ecfd75b669ced4b2dc0 qla2xxx: Add load flash firmware mailbox support for 28xxx
date:   12 hours ago
:::::: branch date: 12 hours ago
:::::: commit date: 12 hours ago
config: x86_64-kexec (https://download.01.org/0day-ci/archive/20251202/202512021947.U82G4ELP-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251202/202512021947.U82G4ELP-lkp@intel.com/reproduce)

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@intel.com>
| Closes: https://lore.kernel.org/r/202512021947.U82G4ELP-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/scsi/qla2xxx/qla_init.c:8490:28: warning: variable 'fragment' set but not used [-Wunused-but-set-variable]
    8490 |         uint templates, segments, fragment;
         |                                   ^
   In file included from drivers/scsi/qla2xxx/qla_init.c:6:
   In file included from drivers/scsi/qla2xxx/qla_def.h:12:
   In file included from include/linux/module.h:13:
   In file included from include/linux/stat.h:19:
   In file included from include/linux/time.h:60:
   In file included from include/linux/time32.h:13:
   In file included from include/linux/timex.h:67:
   In file included from arch/x86/include/asm/timex.h:6:
   In file included from arch/x86/include/asm/tsc.h:11:
   In file included from arch/x86/include/asm/msr.h:11:
   In file included from arch/x86/include/asm/cpumask.h:5:
   In file included from include/linux/cpumask.h:12:
   In file included from include/linux/bitmap.h:13:
   In file included from include/linux/string.h:382:
   include/linux/fortify-string.h:580:4: warning: call to '__read_overflow2_field' declared with 'warning' attribute: detected read beyond size of field (2nd parameter); maybe use struct_group()? [-Wattribute-warning]
     580 |                         __read_overflow2_field(q_size_field, size);
         |                         ^
   2 warnings generated.


vim +/fragment +8490 drivers/scsi/qla2xxx/qla_init.c

1bfb31c14b2390 Manish Rangankar 2025-12-02  8482  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8483  static int
1bfb31c14b2390 Manish Rangankar 2025-12-02  8484  qla28xx_load_fw_template(scsi_qla_host_t *vha, uint32_t faddr)
1bfb31c14b2390 Manish Rangankar 2025-12-02  8485  {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8486  	struct qla_hw_data *ha = vha->hw;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8487  	struct fwdt *fwdt = ha->fwdt;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8488  	struct req_que *req = ha->req_q_map[0];
1bfb31c14b2390 Manish Rangankar 2025-12-02  8489  	uint32_t risc_size, risc_attr = 0;
1bfb31c14b2390 Manish Rangankar 2025-12-02 @8490  	uint templates, segments, fragment;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8491  	uint32_t *dcode;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8492  	ulong dlen;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8493  	int rval;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8494  	uint j;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8495  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8496  	dcode = (uint32_t *)req->ring;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8497  	segments = FA_RISC_CODE_SEGMENTS;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8498  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8499  	for (j = 0; j < segments; j++) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8500  		rval = qla24xx_read_flash_data(vha, dcode, faddr, 10);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8501  		if (rval) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8502  			ql_log(ql_log_fatal, vha, 0x01a1,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8503  			       "-> Failed to read flash addr + size .\n");
1bfb31c14b2390 Manish Rangankar 2025-12-02  8504  			return QLA_FUNCTION_FAILED;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8505  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8506  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8507  		risc_size = be32_to_cpu((__force __be32)dcode[3]);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8508  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8509  		if (risc_attr == 0)
1bfb31c14b2390 Manish Rangankar 2025-12-02  8510  			risc_attr = be32_to_cpu((__force __be32)dcode[9]);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8511  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8512  		dlen = ha->fw_transfer_size >> 2;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8513  		for (fragment = 0; risc_size; fragment++) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8514  			if (dlen > risc_size)
1bfb31c14b2390 Manish Rangankar 2025-12-02  8515  				dlen = risc_size;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8516  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8517  			faddr += dlen;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8518  			risc_size -= dlen;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8519  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8520  	}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8521  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8522  	templates = (risc_attr & BIT_9) ? 2 : 1;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8523  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8524  	ql_dbg(ql_dbg_init, vha, 0x01a1, "-> templates = %u\n", templates);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8525  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8526  	for (j = 0; j < templates; j++, fwdt++) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8527  		vfree(fwdt->template);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8528  		fwdt->template = NULL;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8529  		fwdt->length = 0;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8530  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8531  		dcode = (uint32_t *)req->ring;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8532  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8533  		rval = qla24xx_read_flash_data(vha, dcode, faddr, 7);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8534  		if (rval) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8535  			ql_log(ql_log_fatal, vha, 0x01a2,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8536  			    "-> Unable to read template size.\n");
1bfb31c14b2390 Manish Rangankar 2025-12-02  8537  			goto failed;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8538  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8539  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8540  		risc_size = be32_to_cpu((__force __be32)dcode[2]);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8541  		ql_dbg(ql_dbg_init, vha, 0x01a3,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8542  		    "-> fwdt%u template array at %#x (%#x dwords)\n",
1bfb31c14b2390 Manish Rangankar 2025-12-02  8543  		    j, faddr, risc_size);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8544  		if (!risc_size || !~risc_size) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8545  			ql_dbg(ql_dbg_init, vha, 0x01a4,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8546  			    "-> fwdt%u failed to read array\n", j);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8547  			goto failed;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8548  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8549  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8550  		/* skip header and ignore checksum */
1bfb31c14b2390 Manish Rangankar 2025-12-02  8551  		faddr += 7;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8552  		risc_size -= 8;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8553  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8554  		ql_dbg(ql_dbg_init, vha, 0x01a5,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8555  		    "-> fwdt%u template allocate template %#x words...\n",
1bfb31c14b2390 Manish Rangankar 2025-12-02  8556  		    j, risc_size);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8557  		fwdt->template = vmalloc(risc_size * sizeof(*dcode));
1bfb31c14b2390 Manish Rangankar 2025-12-02  8558  		if (!fwdt->template) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8559  			ql_log(ql_log_warn, vha, 0x01a6,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8560  			    "-> fwdt%u failed allocate template.\n", j);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8561  			goto failed;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8562  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8563  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8564  		dcode = fwdt->template;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8565  		rval = qla24xx_read_flash_data(vha, dcode, faddr, risc_size);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8566  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8567  		if (rval || !qla27xx_fwdt_template_valid(dcode)) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8568  			ql_log(ql_log_warn, vha, 0x01a7,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8569  			    "-> fwdt%u failed template validate (rval %x)\n",
1bfb31c14b2390 Manish Rangankar 2025-12-02  8570  			    j, rval);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8571  			goto failed;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8572  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8573  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8574  		dlen = qla27xx_fwdt_template_size(dcode);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8575  		ql_dbg(ql_dbg_init, vha, 0x01a7,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8576  		    "-> fwdt%u template size %#lx bytes (%#lx words)\n",
1bfb31c14b2390 Manish Rangankar 2025-12-02  8577  		    j, dlen, dlen / sizeof(*dcode));
1bfb31c14b2390 Manish Rangankar 2025-12-02  8578  		if (dlen > risc_size * sizeof(*dcode)) {
1bfb31c14b2390 Manish Rangankar 2025-12-02  8579  			ql_log(ql_log_warn, vha, 0x01a8,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8580  			    "-> fwdt%u template exceeds array (%-lu bytes)\n",
1bfb31c14b2390 Manish Rangankar 2025-12-02  8581  			    j, dlen - risc_size * sizeof(*dcode));
1bfb31c14b2390 Manish Rangankar 2025-12-02  8582  			goto failed;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8583  		}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8584  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8585  		fwdt->length = dlen;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8586  		ql_dbg(ql_dbg_init, vha, 0x01a9,
1bfb31c14b2390 Manish Rangankar 2025-12-02  8587  		    "-> fwdt%u loaded template ok\n", j);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8588  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8589  		faddr += risc_size + 1;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8590  	}
1bfb31c14b2390 Manish Rangankar 2025-12-02  8591  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8592  	return QLA_SUCCESS;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8593  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8594  failed:
1bfb31c14b2390 Manish Rangankar 2025-12-02  8595  	vfree(fwdt->template);
1bfb31c14b2390 Manish Rangankar 2025-12-02  8596  	fwdt->template = NULL;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8597  	fwdt->length = 0;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8598  
1bfb31c14b2390 Manish Rangankar 2025-12-02  8599  	return QLA_SUCCESS;
1bfb31c14b2390 Manish Rangankar 2025-12-02  8600  }
1bfb31c14b2390 Manish Rangankar 2025-12-02  8601  

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

             reply	other threads:[~2025-12-02 18:10 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-02 18:10 kernel test robot [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-12-03  2:23 drivers/scsi/qla2xxx/qla_init.c:8490:28: warning: variable 'fragment' set but not used kernel test robot

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=202512021947.U82G4ELP-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=oe-kbuild@lists.linux.dev \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.