Re: [PATCH 4/7] qla2xxx: qla82xx_pinit_from_rom(): Initialize 'n' before using it
From: Daniel Wagner <hidden>
Date: 2021-03-16 08:37:34
On Mon, Mar 15, 2021 at 08:56:52PM -0700, Bart Van Assche wrote:
This patch suppresses the following sparse warning:
[...]
quoted hunk ↗ jump to hunk
diff --git a/drivers/scsi/qla2xxx/qla_nx.c b/drivers/scsi/qla2xxx/qla_nx.c index 0677295957bc..5683126e0cbc 100644 --- a/drivers/scsi/qla2xxx/qla_nx.c +++ b/drivers/scsi/qla2xxx/qla_nx.c@@ -1095,7 +1095,7 @@ qla82xx_pinit_from_rom(scsi_qla_host_t *vha) int i ; struct crb_addr_pair *buf; unsigned long off; - unsigned offset, n; + unsigned offset, n = 0; struct qla_hw_data *ha = vha->hw; struct crb_addr_pair {
I think sparse is not able to see that n is initialized
before it is used.
/* Read the signature value from the flash.
* Offset 0: Contain signature (0xcafecafe)
* Offset 4: Offset and number of addr/value pairs
* that present in CRB initialize sequence
*/
n = 0;
if (qla82xx_rom_fast_read(ha, 0, &n) != 0 || n != 0xcafecafeUL ||
qla82xx_rom_fast_read(ha, 4, &n) != 0) {
ql_log(ql_log_fatal, vha, 0x006e,
"Error Reading crb_init area: n: %08x.\n", n);
return -1;
}
I suppose this n = 0 should be dropped if n is initialized at the
beginning of the function.