[coreboot] New Defects reported by Coverity Scan for coreboot
scan-admin at coverity.com
scan-admin at coverity.com
Fri Jan 26 15:53:39 CET 2018
Hi,
Please find the latest report on new defect(s) introduced to coreboot found with Coverity Scan.
4 new defect(s) introduced to coreboot found with Coverity Scan.
9 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan.
New defect(s) Reported-by: Coverity Scan
Showing 4 of 4 defect(s)
** CID 1385420: Null pointer dereferences (REVERSE_INULL)
/3rdparty/vboot/firmware/lib/region-init.c: 45 in VbGbbReadHWID()
________________________________________________________________________________________________________
*** CID 1385420: Null pointer dereferences (REVERSE_INULL)
/3rdparty/vboot/firmware/lib/region-init.c: 45 in VbGbbReadHWID()
39 struct vb2_shared_data *sd = vb2_get_sd(ctx);
40
41 if (!max_size)
42 return VBERROR_INVALID_PARAMETER;
43 *hwid = '\0';
44 StrnAppend(hwid, "{INVALID}", max_size);
>>> CID 1385420: Null pointer dereferences (REVERSE_INULL)
>>> Null-checking "ctx" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
45 if (!ctx)
46 return VBERROR_INVALID_GBB;
47
48 if (0 == sd->gbb->hwid_size) {
49 VB2_DEBUG("VbHWID(): invalid hwid size\n");
50 return VBERROR_SUCCESS; /* oddly enough! */
** CID 1385419: Memory - corruptions (OVERRUN)
/3rdparty/arm-trusted-firmware/plat/rockchip/rk3399/drivers/pmu/pmu.c: 1265 in cru_register_save()
________________________________________________________________________________________________________
*** CID 1385419: Memory - corruptions (OVERRUN)
/3rdparty/arm-trusted-firmware/plat/rockchip/rk3399/drivers/pmu/pmu.c: 1265 in cru_register_save()
1259
1260 void cru_register_save(void)
1261 {
1262 int i;
1263
1264 for (i = 0; i <= CRU_SDIO0_CON1; i = i + 4)
>>> CID 1385419: Memory - corruptions (OVERRUN)
>>> Overrunning array "store_cru" of 355 4-byte elements at element index 355 (byte offset 1420) using index "i / 4" (which evaluates to 355).
1265 store_cru[i / 4] = mmio_read_32(CRU_BASE + i);
1266 }
1267
1268 void cru_register_restore(void)
1269 {
1270 int i;
** CID 1385418: Memory - illegal accesses (OVERRUN)
/3rdparty/arm-trusted-firmware/plat/rockchip/rk3399/drivers/pmu/pmu.c: 1296 in cru_register_restore()
________________________________________________________________________________________________________
*** CID 1385418: Memory - illegal accesses (OVERRUN)
/3rdparty/arm-trusted-firmware/plat/rockchip/rk3399/drivers/pmu/pmu.c: 1296 in cru_register_restore()
1290 * CRU_GLB_CNT_TH and CRU_CLKSEL_CON97~CRU_CLKSEL_CON107
1291 * not need do high 16bit mask
1292 */
1293 else if ((i > 0x27c && i < 0x2b0) || (i == 0x508))
1294 mmio_write_32(CRU_BASE + i, store_cru[i / 4]);
1295 else
>>> CID 1385418: Memory - illegal accesses (OVERRUN)
>>> Overrunning array "store_cru" of 355 4-byte elements at element index 355 (byte offset 1420) using index "i / 4" (which evaluates to 355).
1296 mmio_write_32(CRU_BASE + i,
1297 REG_SOC_WMSK | store_cru[i / 4]);
1298 }
1299 }
1300
1301 void wdt_register_save(void)
** CID 1385417: (NO_EFFECT)
/3rdparty/arm-trusted-firmware/plat/common/plat_gicv2.c: 166 in plat_ic_is_sgi()
/3rdparty/arm-trusted-firmware/plat/common/plat_gicv3.c: 190 in plat_ic_is_sgi()
________________________________________________________________________________________________________
*** CID 1385417: (NO_EFFECT)
/3rdparty/arm-trusted-firmware/plat/common/plat_gicv2.c: 166 in plat_ic_is_sgi()
160 {
161 return (id >= MIN_PPI_ID) && (id < MIN_SPI_ID);
162 }
163
164 int plat_ic_is_sgi(unsigned int id)
165 {
>>> CID 1385417: (NO_EFFECT)
>>> This greater-than-or-equal-to-zero comparison of an unsigned value is always true. "id >= 0U".
166 return (id >= MIN_SGI_ID) && (id < MIN_PPI_ID);
167 }
168
169 unsigned int plat_ic_get_interrupt_active(unsigned int id)
170 {
171 return gicv2_get_interrupt_active(id);
/3rdparty/arm-trusted-firmware/plat/common/plat_gicv3.c: 190 in plat_ic_is_sgi()
184 {
185 return (id >= MIN_PPI_ID) && (id < MIN_SPI_ID);
186 }
187
188 int plat_ic_is_sgi(unsigned int id)
189 {
>>> CID 1385417: (NO_EFFECT)
>>> This greater-than-or-equal-to-zero comparison of an unsigned value is always true. "id >= 0U".
190 return (id >= MIN_SGI_ID) && (id < MIN_PPI_ID);
191 }
192
193 unsigned int plat_ic_get_interrupt_active(unsigned int id)
194 {
195 return gicv3_get_interrupt_active(id, plat_my_core_pos());
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://u2389337.ct.sendgrid.net/wf/click?upn=08onrYu34A-2BWcWUl-2F-2BfV0V05UPxvVjWch-2Bd2MGckcRbLuoVetFLSjdonCi1EjfHRqWGQvojmmkYaBE-2BPJiTQvQ-3D-3D_q4bX76XMySz3BXBlWr5fXXJ4cvAsgEXEqC7dBPM7O5aYGXzds5cLMhnEDKfV4jjd7s8G5JwffZ4Nalg8MSWmLLLqfRzB5dmXCnSMTvssg4tYOQquOmQZBGjRfLLIP2cERGwdmM2Hcz5NePQIaqLkHWneFGpyVrW-2FXSpL50w1RqqQUCQS5G1L1Hi1QzcEAghW1Jm-2Bgt0HNLgHmQovJCD-2BESsnAW-2BG9AobV975ZOuu328-3D
To manage Coverity Scan email notifications for "coreboot at coreboot.org", click https://u2389337.ct.sendgrid.net/wf/click?upn=08onrYu34A-2BWcWUl-2F-2BfV0V05UPxvVjWch-2Bd2MGckcRbVDbis712qZDP-2FA8y06Nq4e-2BpBzwOa5gzBZa9dWpDbzfofODnVj1enK2UkK0-2BgCCqfkfgGF5ECMwHI0-2FVznrU953Dvw3Ddjop950pccFQ-2Br0qaXkQSgAjbZsF6g7Yem3Y-3D_q4bX76XMySz3BXBlWr5fXXJ4cvAsgEXEqC7dBPM7O5aYGXzds5cLMhnEDKfV4jjdGSFteFDiF7nzvIQmwVdG8dK06eVg-2BsG1tBlCt6fs-2FZ0pbtX9FU64e-2F5t1EY2sfN2I06xAfOG7X0p66AqiQDhBFSm5DvYzsx683J557-2B1NBagpDOC3ll4kWKt9kTy6zqKtmKDEydr8-2BVU0K-2B-2BJyiNzMMaoz-2Bf3Ayxo8opMdRYTgI-3D
More information about the coreboot
mailing list