Hi Tom

I will fix coverity issue in the next patch.

Tom Rini 於 2026/5/9 上午 07:42 寫道:
Here's the latest report. I think test code matters because it sets bad
examples, or might not really end up testing things the way we want them
to, and so should be fixed. Thanks!

---------- Forwarded message ---------
From: <[email protected]>
Date: Fri, May 8, 2026 at 5:31 PM
Subject: New Defects reported by Coverity Scan for Das U-Boot
To: <[email protected]>


Hi,

Please find the latest report on new defect(s) introduced to *Das U-Boot*
found with Coverity Scan.

    - *New Defects Found:* 17
    - 3 defect(s), reported by Coverity Scan earlier, were marked fixed in
    the recent build analyzed by Coverity Scan.
    - *Defects Shown:* Showing 17 of 17 defect(s)

Defect Details

** CID 646011:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 164           in
dm_test_phy_common_props_rx_unsupported()


_____________________________________________________________________________________________
*** CID 646011:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 164             in
dm_test_phy_common_props_rx_unsupported()
158             unsigned int val;
159             int ret;
160
161             ut_assert(ofnode_valid(node));
162
163             ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646011:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
164             ut_asserteq(-EOPNOTSUPP, ret);
165
166             return 0;
167     }
168
169     DM_TEST(dm_test_phy_common_props_rx_unsupported, UTF_SCAN_FDT);

** CID 646010:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 236           in
dm_test_phy_common_props_tx_more_names()


_____________________________________________________________________________________________
*** CID 646010:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 236             in
dm_test_phy_common_props_tx_more_names()
230             unsigned int val;
231             int ret;
232
233             ut_assert(ofnode_valid(node));
234
235             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646010:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
236             ut_asserteq(-EINVAL, ret);
237
238             return 0;
239     }
240
241     DM_TEST(dm_test_phy_common_props_tx_more_names, UTF_SCAN_FDT);

** CID 646009:         (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 253           in
dm_test_phy_common_props_tx_find_by_name()
/test/dm/phy_common_props.c: 257           in
dm_test_phy_common_props_tx_find_by_name()
/test/dm/phy_common_props.c: 261           in
dm_test_phy_common_props_tx_find_by_name()


_____________________________________________________________________________________________
*** CID 646009:           (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 253             in
dm_test_phy_common_props_tx_find_by_name()
247             unsigned int val;
248             int ret;
249
250             ut_assert(ofnode_valid(node));
251
252             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646009:           (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
253             ut_asserteq(0, ret);
254             ut_asserteq(PHY_POL_NORMAL, val);
255
256             ret = phy_get_manual_tx_polarity(node, "2500base-x", &val);
257             ut_asserteq(0, ret);
258             ut_asserteq(PHY_POL_INVERT, val);
/test/dm/phy_common_props.c: 257             in
dm_test_phy_common_props_tx_find_by_name()
251
252             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
253             ut_asserteq(0, ret);
254             ut_asserteq(PHY_POL_NORMAL, val);
255
256             ret = phy_get_manual_tx_polarity(node, "2500base-x", &val);
     CID 646009:           (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
257             ut_asserteq(0, ret);
258             ut_asserteq(PHY_POL_INVERT, val);
259
260             ret = phy_get_manual_tx_polarity(node, "1000base-x", &val);
261             ut_asserteq(0, ret);
262             ut_asserteq(PHY_POL_NORMAL, val);
/test/dm/phy_common_props.c: 261             in
dm_test_phy_common_props_tx_find_by_name()
255
256             ret = phy_get_manual_tx_polarity(node, "2500base-x", &val);
257             ut_asserteq(0, ret);
258             ut_asserteq(PHY_POL_INVERT, val);
259
260             ret = phy_get_manual_tx_polarity(node, "1000base-x", &val);
     CID 646009:           (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
261             ut_asserteq(0, ret);
262             ut_asserteq(PHY_POL_NORMAL, val);
263
264             return 0;
265     }
266

** CID 646008:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 31           in
dm_test_phy_common_props_rx_missing()


_____________________________________________________________________________________________
*** CID 646008:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 31             in
dm_test_phy_common_props_rx_missing()
25      unsigned int val;
26      int ret;
27
28      ut_assert(ofnode_valid(node));
29
30      ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646008:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
31      ut_asserteq(0, ret);
32      ut_asserteq(PHY_POL_NORMAL, val);
33
34      return 0;
35     }
36

** CID 646007:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 296           in
dm_test_phy_common_props_tx_with_default()


_____________________________________________________________________________________________
*** CID 646007:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 296             in
dm_test_phy_common_props_tx_with_default()
290             unsigned int val;
291             int ret;
292
293             ut_assert(ofnode_valid(node));
294
295             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646007:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
296             ut_asserteq(0, ret);
297             ut_asserteq(PHY_POL_INVERT, val);
298
299             return 0;
300     }
301

** CID 646006:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 314           in
dm_test_phy_common_props_tx_unsupported()


_____________________________________________________________________________________________
*** CID 646006:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 314             in
dm_test_phy_common_props_tx_unsupported()
308             unsigned int val;
309             int ret;
310
311             ut_assert(ofnode_valid(node));
312
313             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646006:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
314             ut_asserteq(-EOPNOTSUPP, ret);
315
316             return 0;
317     }
318

** CID 646005:         (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 111           in
dm_test_phy_common_props_rx_find_by_name()
/test/dm/phy_common_props.c: 105           in
dm_test_phy_common_props_rx_find_by_name()
/test/dm/phy_common_props.c: 101           in
dm_test_phy_common_props_rx_find_by_name()


_____________________________________________________________________________________________
*** CID 646005:           (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 111             in
dm_test_phy_common_props_rx_find_by_name()
105             ut_asserteq(0, ret);
106             ut_asserteq(PHY_POL_INVERT, val);
107
108             /* "usb-ss" has PHY_POL_AUTO; auto is supported here */
109             ret = phy_get_rx_polarity(node, "usb-ss", BIT(PHY_POL_AUTO),
110                                       PHY_POL_AUTO, &val);
     CID 646005:           (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
111             ut_asserteq(0, ret);
112             ut_asserteq(PHY_POL_AUTO, val);
113
114             return 0;
115     }
116
/test/dm/phy_common_props.c: 105             in
dm_test_phy_common_props_rx_find_by_name()
99
100             ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
101             ut_asserteq(0, ret);
102             ut_asserteq(PHY_POL_NORMAL, val);
103
104             ret = phy_get_manual_rx_polarity(node, "2500base-x", &val);
     CID 646005:           (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
105             ut_asserteq(0, ret);
106             ut_asserteq(PHY_POL_INVERT, val);
107
108             /* "usb-ss" has PHY_POL_AUTO; auto is supported here */
109             ret = phy_get_rx_polarity(node, "usb-ss", BIT(PHY_POL_AUTO),
110                                       PHY_POL_AUTO, &val);
/test/dm/phy_common_props.c: 101             in
dm_test_phy_common_props_rx_find_by_name()
95      unsigned int val;
96      int ret;
97
98      ut_assert(ofnode_valid(node));
99
100             ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646005:           (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
101             ut_asserteq(0, ret);
102             ut_asserteq(PHY_POL_NORMAL, val);
103
104             ret = phy_get_manual_rx_polarity(node, "2500base-x", &val);
105             ut_asserteq(0, ret);
106             ut_asserteq(PHY_POL_INVERT, val);

** CID 646004:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 183           in
dm_test_phy_common_props_tx_missing()


_____________________________________________________________________________________________
*** CID 646004:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 183             in
dm_test_phy_common_props_tx_missing()
177             unsigned int val;
178             int ret;
179
180             ut_assert(ofnode_valid(node));
181
182             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646004:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
183             ut_asserteq(0, ret);
184             ut_asserteq(PHY_POL_NORMAL, val);
185
186             return 0;
187     }
188

** CID 646003:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 49           in
dm_test_phy_common_props_rx_more_values()


_____________________________________________________________________________________________
*** CID 646003:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 49             in
dm_test_phy_common_props_rx_more_values()
43      unsigned int val;
44      int ret;
45
46      ut_assert(ofnode_valid(node));
47
48      ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646003:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
49      ut_asserteq(-EINVAL, ret);
50
51      return 0;
52     }
53
54     DM_TEST(dm_test_phy_common_props_rx_more_values, UTF_SCAN_FDT);

** CID 646002:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 146           in
dm_test_phy_common_props_rx_with_default()


_____________________________________________________________________________________________
*** CID 646002:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 146             in
dm_test_phy_common_props_rx_with_default()
140             unsigned int val;
141             int ret;
142
143             ut_assert(ofnode_valid(node));
144
145             ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646002:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
146             ut_asserteq(0, ret);
147             ut_asserteq(PHY_POL_INVERT, val);
148
149             return 0;
150     }
151

** CID 646001:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 66           in
dm_test_phy_common_props_rx_single_value()


_____________________________________________________________________________________________
*** CID 646001:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 66             in
dm_test_phy_common_props_rx_single_value()
60      unsigned int val;
61      int ret;
62
63      ut_assert(ofnode_valid(node));
64
65      ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646001:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
66      ut_asserteq(0, ret);
67      ut_asserteq(PHY_POL_INVERT, val);
68
69      return 0;
70     }
71

** CID 646000:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 129           in
dm_test_phy_common_props_rx_no_default()


_____________________________________________________________________________________________
*** CID 646000:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 129             in
dm_test_phy_common_props_rx_no_default()
123             unsigned int val;
124             int ret;
125
126             ut_assert(ofnode_valid(node));
127
128             ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 646000:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
129             ut_asserteq(-EINVAL, ret);
130
131             return 0;
132     }
133
134     DM_TEST(dm_test_phy_common_props_rx_no_default, UTF_SCAN_FDT);

** CID 645999:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 84           in
dm_test_phy_common_props_rx_more_names()


_____________________________________________________________________________________________
*** CID 645999:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 84             in
dm_test_phy_common_props_rx_more_names()
78      unsigned int val;
79      int ret;
80
81      ut_assert(ofnode_valid(node));
82
83      ret = phy_get_manual_rx_polarity(node, "sgmii", &val);
     CID 645999:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
84      ut_asserteq(-EINVAL, ret);
85
86      return 0;
87     }
88
89     DM_TEST(dm_test_phy_common_props_rx_more_names, UTF_SCAN_FDT);

** CID 645998:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 218           in
dm_test_phy_common_props_tx_single_value()


_____________________________________________________________________________________________
*** CID 645998:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 218             in
dm_test_phy_common_props_tx_single_value()
212             unsigned int val;
213             int ret;
214
215             ut_assert(ofnode_valid(node));
216
217             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 645998:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
218             ut_asserteq(0, ret);
219             ut_asserteq(PHY_POL_INVERT, val);
220
221             return 0;
222     }
223

** CID 646014:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 201           in
dm_test_phy_common_props_tx_more_values()


_____________________________________________________________________________________________
*** CID 646014:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 201             in
dm_test_phy_common_props_tx_more_values()
195             unsigned int val;
196             int ret;
197
198             ut_assert(ofnode_valid(node));
199
200             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646014:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
201             ut_asserteq(-EINVAL, ret);
202
203             return 0;
204     }
205
206     DM_TEST(dm_test_phy_common_props_tx_more_values, UTF_SCAN_FDT);

** CID 646013:       Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 279           in
dm_test_phy_common_props_tx_no_default()


_____________________________________________________________________________________________
*** CID 646013:         Integer handling issues  (INTEGER_OVERFLOW)
/test/dm/phy_common_props.c: 279             in
dm_test_phy_common_props_tx_no_default()
273             unsigned int val;
274             int ret;
275
276             ut_assert(ofnode_valid(node));
277
278             ret = phy_get_manual_tx_polarity(node, "sgmii", &val);
     CID 646013:         Integer handling issues  (INTEGER_OVERFLOW)
     Expression "_val2", where "ret" is known to be equal to -95, overflows the type of 
"_val2", which is type "unsigned int".
279             ut_asserteq(-EINVAL, ret);
280
281             return 0;
282     }
283
284     DM_TEST(dm_test_phy_common_props_tx_no_default, UTF_SCAN_FDT);

** CID 646012:         (TAINTED_SCALAR)
/drivers/phy/phy-common-props.c: 156           in ofnode_get_u32_prop_for_name()


_____________________________________________________________________________________________
*** CID 646012:           (TAINTED_SCALAR)
/drivers/phy/phy-common-props.c: 156             in
ofnode_get_u32_prop_for_name()
150             props = calloc(n_props, sizeof(*props));
151             if (!props)
152                     return -ENOMEM;
153
154             err = ofnode_read_u32_array(node, props_title, props, n_props);
155             if (err >= 0) {
     CID 646012:           (TAINTED_SCALAR)
     Using tainted variable "idx" as an index to pointer "props".
156                     *val = props[idx];
157                     pr_debug("%s: resolved value %u at index %d for name 
'%s'
from '%s'\n",
158                              __func__, *val, idx, name, props_title);
159             } else {
160                     pr_debug("%s: failed to read u32 array '%s' (err=%d)\n",
161                              __func__, props_title, err);
/drivers/phy/phy-common-props.c: 164             in
ofnode_get_u32_prop_for_name()
158                              __func__, *val, idx, name, props_title);
159             } else {
160                     pr_debug("%s: failed to read u32 array '%s' (err=%d)\n",
161                              __func__, props_title, err);
162             }
163
     CID 646012:           (TAINTED_SCALAR)
     Passing tainted expression "*props" to "dlfree", which uses it as an 
offset.
164             free(props);
165
166             return err;
167     }
168
169     /**



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 -----

Reply via email to