[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 02/25] hw/core/loader-fit: fix freeing errp in fit_load_fd
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
Re: [PATCH v3 02/25] hw/core/loader-fit: fix freeing errp in fit_load_fdt |
Date: |
Wed, 25 Sep 2019 07:24:00 +0000 |
24.09.2019 23:38, Eric Blake wrote:
> On 9/24/19 3:08 PM, Vladimir Sementsov-Ogievskiy wrote:
>> fit_load_fdt forget to zero errp. Fix it.
>>
>> Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
>> Reviewed-by: Eric Blake <address@hidden>
>> ---
>> hw/core/loader-fit.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/hw/core/loader-fit.c b/hw/core/loader-fit.c
>> index 953b16bc82..11e4fad595 100644
>> --- a/hw/core/loader-fit.c
>> +++ b/hw/core/loader-fit.c
>> @@ -201,6 +201,7 @@ static int fit_load_fdt(const struct fit_loader *ldr,
>> const void *itb,
>> if (err == -ENOENT) {
>> load_addr = ROUND_UP(kernel_end, 64 * KiB) + (10 * MiB);
>> error_free(*errp);
>> + *errp = NULL;
>
> Actually, let's drop my R-b - I think we have a bigger bug here. We are
> blindly dereferencing *errp even if the caller passed in NULL. The
> correct way to write this function requires either the use of local_err
> or the addition of auto-propagation.
>
> (In v2, you still had this bug - your addition of error_free_errp(errp)
> would still blindly dereference *errp, unless you tweak the
> implementation of error_free_errp to tolerate a NULL pointer input)
>
Oops, you are right! Still, I think in this case we can
if (errp) {
error_free(*errp);
*errp = NULL;
}
--
Best regards,
Vladimir
- [PATCH v3 00/25] error: auto propagated local_err, Vladimir Sementsov-Ogievskiy, 2019/09/24
- [PATCH v3 03/25] net/net: fix local variable shadowing in net_client_init, Vladimir Sementsov-Ogievskiy, 2019/09/24
- [PATCH v3 05/25] scripts: add coccinelle script to fix error_append_hint usage, Vladimir Sementsov-Ogievskiy, 2019/09/24
- [PATCH v3 07/25] s390: Fix error_append_hint usage, Vladimir Sementsov-Ogievskiy, 2019/09/24
- [PATCH v3 08/25] ARM TCG CPUs: Fix error_append_hint usage, Vladimir Sementsov-Ogievskiy, 2019/09/24
- [PATCH v3 06/25] python: add commit-per-subsystem.py, Vladimir Sementsov-Ogievskiy, 2019/09/24