
Hi Heinrich,
On Mon, 13 Jan 2025 at 00:49, Heinrich Schuchardt xypron.glpk@gmx.de wrote:
On 1/12/25 04:42, Sam Protsenko wrote:
There is no such thing as struct bootmeth, it's probably a typo. This issue doesn't affect the execution as it's a pointer, and pointer sizes are the same for all data types. But it can be confusing, so make it struct udevice, as it should be.
Fixes: a950d31abe98 ("bootstd: Add the bootmeth uclass and helpers") Signed-off-by: Sam Protsenko semen.protsenko@linaro.org
boot/bootmeth-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boot/bootmeth-uclass.c b/boot/bootmeth-uclass.c index 049389403191..2496e8c1d8a8 100644 --- a/boot/bootmeth-uclass.c +++ b/boot/bootmeth-uclass.c @@ -139,7 +139,7 @@ int bootmeth_setup_iter_order(struct bootflow_iter *iter, bool include_global) goto err_order; } memcpy(order, std->bootmeth_order,
count * sizeof(struct bootmeth *));
count * sizeof(struct udevice *));
I found this description of the field: @bootmeth_order: List of bootmeth devices to use, in order, NULL-terminated
As the list is NULL terminated, shouldn't we copy the NULL value, i.e.
(count + 1) * sizeof(struct udevice *)
so that we can still identify the end of the list?
Unfortunately that comment is out of date. The bootmeth_count member holds the count now.
And probably it would be better as an alist now that we have that.
[..]
Regards, Simom