From: "Raphaël Gallais-Pou" <rgallaispou@gmail.com>
To: Tom Rini <trini@konsulko.com>,
u-boot@lists.denx.de, Simon Glass <sjg@chromium.org>,
Patrick Delaunay <patrick.delaunay@foss.st.com>,
Patrice Chotard <patrice.chotard@foss.st.com>
Cc: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Subject: Re: Fwd: New Defects reported by Coverity Scan for Das U-Boot
Date: Mon, 9 Mar 2026 23:05:27 +0100 [thread overview]
Message-ID: <22806ad3-cdc4-4f5b-94e7-21e541abf9cb@gmail.com> (raw)
In-Reply-To: <20260309212331.GF1388590@bill-the-cat>
Hi Tom,
Regarding both stm32_dsi errors:
It seems those errors are not linked to the patch you merged recently,
because it does not change the lines mentioned by Coverity.
Calls to device_chld_{remove, unbind} are introduced by commit
a6d047c0a86b ("video: stm32: remove all child of DSI bridge when its
probe failed").
My guess is that since my patch changed the file, it triggered the
Coverity Scan for the whole file.
Regardless, ret is overwritten right after the calls, so I don't think
checking the return value matters here except if there is a log information.
Tell me if you want me to provide a fix, but in this case I'm not sure
to see the point.
Best regards,
Raphaël
On 3/9/26 22:23, Tom Rini wrote:
> Hey all,
>
> Unfortunately for such a small set of changes (rc3 to rc4) a lot of new
> Coverity scan issues have popped up. Please let me know if these appear
> to be real issues or something that we can mark as intentional / false
> positive. Thanks!
>
> ---------- Forwarded message ---------
> From: <scan-admin@coverity.com>
> Date: Mon, Mar 9, 2026, 2:11 PM
> Subject: New Defects reported by Coverity Scan for Das U-Boot
> To: <tom.rini@gmail.com>
>
>
> Hi,
>
> Please find the latest report on new defect(s) introduced to *Das U-Boot*
> found with Coverity Scan.
>
> - *New Defects Found:* 4
> - *Defects Shown:* Showing 4 of 4 defect(s)
>
> Defect Details
>
>
> ** CID 644836: Error handling issues (CHECKED_RETURN)
> /drivers/video/stm32/stm32_dsi.c: 497 in stm32_dsi_probe()
>
>
> _____________________________________________________________________________________________
> *** CID 644836: Error handling issues (CHECKED_RETURN)
> /drivers/video/stm32/stm32_dsi.c: 497 in stm32_dsi_probe()
> 491 priv->hw_version = dsi_read(plat->base, DSI_VERSION) & VERSION;
> 492 if (priv->hw_version != HWVER_130 &&
> 493 priv->hw_version != HWVER_131) {
> 494 dev_err(dev, "DSI version 0x%x not supported\n", priv->hw_version);
> 495 dev_dbg(dev, "remove and unbind all DSI child\n");
> 496 device_chld_remove(dev, NULL, DM_REMOVE_NORMAL);
>>>> CID 644836: Error handling issues (CHECKED_RETURN)
>>>> Calling "device_chld_unbind" without checking return value (as is done elsewhere 6 out of 7 times).
> 497 device_chld_unbind(dev, NULL);
> 498 ret = -ENODEV;
> 499 goto err_clk;
> 500 }
> 501
> 502 return 0;
>
> ** CID 644835: (TAINTED_SCALAR)
> /common/menu.c: 589 in bootmenu_loop()
> /common/menu.c: 589 in bootmenu_loop()
>
>
> _____________________________________________________________________________________________
> *** CID 644835: (TAINTED_SCALAR)
> /common/menu.c: 589 in bootmenu_loop()
> 583 c = cli_ch_process(cch, c);
> 584 }
> 585 }
> 586
> 587 key = bootmenu_conv_key(c);
> 588
>>>> CID 644835: (TAINTED_SCALAR)
>>>> Using tainted variable "(int)(unsigned char)c" as an index into an array "_ctype".
> 589 if (key == BKEY_NONE && isalnum(c)) {
> 590 key = BKEY_SHORTCUT;
> 591 cch->shortcut_key = bootmenu_conv_shortcut_key(menu, c);
> 592 }
> 593
> 594 return key;
> /common/menu.c: 589 in bootmenu_loop()
> 583 c = cli_ch_process(cch, c);
> 584 }
> 585 }
> 586
> 587 key = bootmenu_conv_key(c);
> 588
>>>> CID 644835: (TAINTED_SCALAR)
>>>> Using tainted variable "(int)(unsigned char)c" as an index into an array "_ctype".
> 589 if (key == BKEY_NONE && isalnum(c)) {
> 590 key = BKEY_SHORTCUT;
> 591 cch->shortcut_key = bootmenu_conv_shortcut_key(menu, c);
> 592 }
> 593
> 594 return key;
>
> ** CID 644834: Error handling issues (CHECKED_RETURN)
> /drivers/video/stm32/stm32_dsi.c: 496 in stm32_dsi_probe()
>
>
> _____________________________________________________________________________________________
> *** CID 644834: Error handling issues (CHECKED_RETURN)
> /drivers/video/stm32/stm32_dsi.c: 496 in stm32_dsi_probe()
> 490 /* check hardware version */
> 491 priv->hw_version = dsi_read(plat->base, DSI_VERSION) & VERSION;
> 492 if (priv->hw_version != HWVER_130 &&
> 493 priv->hw_version != HWVER_131) {
> 494 dev_err(dev, "DSI version 0x%x not supported\n", priv->hw_version);
> 495 dev_dbg(dev, "remove and unbind all DSI child\n");
>>>> CID 644834: Error handling issues (CHECKED_RETURN)
>>>> Calling "device_chld_remove" without checking return value (as is done elsewhere 4 out of 5 times).
> 496 device_chld_remove(dev, NULL, DM_REMOVE_NORMAL);
> 497 device_chld_unbind(dev, NULL);
> 498 ret = -ENODEV;
> 499 goto err_clk;
> 500 }
> 501
>
> ** CID 644833: Memory - illegal accesses (NEGATIVE_RETURNS)
> /common/menu.c: 589 in bootmenu_loop()
>
>
> _____________________________________________________________________________________________
> *** CID 644833: Memory - illegal accesses (NEGATIVE_RETURNS)
> /common/menu.c: 589 in bootmenu_loop()
> 583 c = cli_ch_process(cch, c);
> 584 }
> 585 }
> 586
> 587 key = bootmenu_conv_key(c);
> 588
>>>> CID 644833: Memory - illegal accesses (NEGATIVE_RETURNS)
>>>> Using variable "c" as an index to array "_ctype".
> 589 if (key == BKEY_NONE && isalnum(c)) {
> 590 key = BKEY_SHORTCUT;
> 591 cch->shortcut_key = bootmenu_conv_shortcut_key(menu, c);
> 592 }
> 593
> 594 return key;
>
>
>
> View Defects in Coverity Scan
> <https://scan.coverity.com/projects/das-u-boot?tab=overview>
>
> Best regards,
>
> The Coverity Scan Admin Team
>
> ----- End forwarded message -----
>
next prev parent reply other threads:[~2026-03-09 22:14 UTC|newest]
Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-09 21:23 Fwd: New Defects reported by Coverity Scan for Das U-Boot Tom Rini
2026-03-09 22:05 ` Raphaël Gallais-Pou [this message]
2026-03-09 22:13 ` Tom Rini
-- strict thread matches above, loose matches on Subject: below --
2026-05-11 22:35 Tom Rini
2026-05-08 23:42 Tom Rini
2026-05-14 15:39 ` Lucien.Jheng
2026-04-28 14:04 Tom Rini
2026-04-29 6:31 ` Michal Simek
2026-05-01 22:51 ` Raymond Mao
2026-05-12 8:44 ` Christian Pötzsch
2026-05-12 18:38 ` Tom Rini
2026-04-06 19:12 Tom Rini
2026-02-23 19:51 Tom Rini
2026-02-13 22:09 Tom Rini
2026-02-18 23:02 ` Chris Morgan
2026-02-20 16:11 ` Tom Rini
2026-02-20 16:23 ` Chris Morgan
2026-01-16 19:43 Tom Rini
2026-02-09 11:05 ` Guillaume La Roque
2026-02-20 16:11 ` Tom Rini
2026-01-06 20:36 Tom Rini
2026-01-05 23:58 Tom Rini
2026-01-06 9:37 ` Mattijs Korpershoek
2026-01-06 17:15 ` Tom Rini
2026-01-06 10:03 ` Heiko Schocher
2025-12-08 19:38 Tom Rini
2025-11-23 19:03 Tom Rini
2025-11-10 18:55 Tom Rini
2025-10-11 18:06 Tom Rini
2025-10-12 14:22 ` Mikhail Kshevetskiy
2025-10-12 19:07 ` Tom Rini
2025-11-01 6:32 ` Mikhail Kshevetskiy
2025-11-03 15:17 ` Tom Rini
2025-11-03 15:24 ` Michael Nazzareno Trimarchi
2025-08-06 18:35 Tom Rini
2025-08-07 9:17 ` Heiko Schocher
2025-08-08 3:37 ` Maniyam, Dinesh
2025-08-08 4:01 ` Heiko Schocher
2025-07-29 16:32 Tom Rini
2025-07-25 13:26 Tom Rini
2025-07-25 13:34 ` Michal Simek
2025-08-04 9:11 ` Alexander Dahl
2025-07-14 23:29 Tom Rini
2025-07-15 13:45 ` Rasmus Villemoes
2025-07-08 14:10 Tom Rini
2025-04-28 21:59 Tom Rini
2025-04-29 12:07 ` Jerome Forissier
2025-04-30 16:50 ` Marek Vasut
2025-04-30 17:01 ` Tom Rini
2025-04-30 18:23 ` Heinrich Schuchardt
2025-04-30 19:14 ` Tom Rini
2025-03-11 1:49 Tom Rini
2025-02-25 2:39 Tom Rini
2025-02-25 6:06 ` Heiko Schocher
2025-02-25 10:48 ` Quentin Schulz
2025-02-25 10:54 ` Heiko Schocher
2025-02-10 22:26 Tom Rini
2025-02-11 6:14 ` Heiko Schocher
2025-02-11 22:30 ` Tom Rini
2024-12-31 13:55 Tom Rini
2024-12-24 17:14 Tom Rini
2024-11-15 13:27 Tom Rini
2024-11-12 2:11 Tom Rini
2024-10-28 3:11 Tom Rini
2024-10-19 16:16 Tom Rini
2024-10-16 3:47 Tom Rini
2024-10-16 5:56 ` Tudor Ambarus
2024-10-07 17:15 Tom Rini
2024-07-23 14:18 Tom Rini
2024-07-24 9:21 ` Mattijs Korpershoek
2024-07-24 9:45 ` Heinrich Schuchardt
2024-07-24 9:56 ` Mattijs Korpershoek
2024-07-24 10:06 ` Heinrich Schuchardt
2024-07-24 22:40 ` Tom Rini
2024-07-25 8:04 ` Mattijs Korpershoek
2024-07-25 17:16 ` Tom Rini
2024-07-24 9:53 ` Mattijs Korpershoek
2024-04-22 21:48 Tom Rini
2024-01-29 23:55 Tom Rini
2024-01-30 8:14 ` Heinrich Schuchardt
[not found] <20240127154018.GC785631@bill-the-cat>
2024-01-27 20:56 ` Heinrich Schuchardt
2024-01-28 8:51 ` Heinrich Schuchardt
2024-01-22 23:52 Tom Rini
2024-01-22 23:30 Tom Rini
2024-01-23 8:15 ` Hugo Cornelis
[not found] <65a933ab652b3_da12cbd3e77f998728e5@prd-scan-dashboard-0.mail>
2024-01-19 8:47 ` Heinrich Schuchardt
2024-01-18 14:35 Tom Rini
2024-01-08 17:45 Tom Rini
2024-01-09 5:26 ` Sean Anderson
2024-01-09 22:18 ` Tom Rini
2023-08-21 21:09 Tom Rini
2023-08-24 9:27 ` Abdellatif El Khlifi
2023-08-28 16:09 ` Alvaro Fernando García
2023-08-28 16:11 ` Tom Rini
2023-10-20 11:57 ` Abdellatif El Khlifi
2023-10-25 14:57 ` Tom Rini
2023-10-25 15:12 ` Abdellatif El Khlifi
2023-10-25 15:15 ` Tom Rini
2023-10-31 14:21 ` Abdellatif El Khlifi
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=22806ad3-cdc4-4f5b-94e7-21e541abf9cb@gmail.com \
--to=rgallaispou@gmail.com \
--cc=patrice.chotard@foss.st.com \
--cc=patrick.delaunay@foss.st.com \
--cc=raphael.gallais-pou@foss.st.com \
--cc=sjg@chromium.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
/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.