On Tue, Mar 03, 2026 at 02:29:08PM +0100, Christian Marangi wrote:
> When dev_get_priv errors out, the ubifs is not unbounted (if used)

I don't understand why or where UBIFS is being used here.
Did you mean to say "UBI is not attached"?
UBI != UBIFS.

> 
> Correctly handle this handle condition and while at it also return -EINVAL
> instead of -ENOMEM as a better error since no memory is allocated but is
> actually an invalid scenario for fw_get_filesystem_firmware().
> 
> Signed-off-by: Christian Marangi <[email protected]>
> ---
>  drivers/misc/fs_loader.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/misc/fs_loader.c b/drivers/misc/fs_loader.c
> index 2928cf75f89e..7e432a7ebd62 100644
> --- a/drivers/misc/fs_loader.c
> +++ b/drivers/misc/fs_loader.c
> @@ -178,8 +178,10 @@ static int fw_get_filesystem_firmware(struct udevice 
> *dev)
>  
>       struct firmware *firmwarep = dev_get_priv(dev);
>  
> -     if (!firmwarep)
> -             return -ENOMEM;
> +     if (!firmwarep) {
> +             ret = -EINVAL;
> +             goto out;
> +     }
>  
>       ret = fs_read(firmwarep->name, (ulong)map_to_sysmem(firmwarep->data),
>                       firmwarep->offset, firmwarep->size, &actread);
> -- 
> 2.51.0
> 

Reply via email to