Changeset dc9f65cf9aea ("media: staging: atomisp: avoid a warning if 32
bits build") was meant to solve an impossible condition when building
with 32 bits. It turns that this impossible condition also happens wit
64 bits:
gmin_get_config_var() warn: impossible condition '(*out_len > (~0)) => 
(0-u64max > u64max)'

After a further analysis, this condition will always be false as, on
all architectures, size_t doesn't have more bits than unsigned long.

Also, the only two archs that really matter are x86 and x86_64, as this
driver doesn't build on other archs (as it depends on X86-specific UEFI

So, just drop the useless code.

Fixes: dc9f65cf9aea ("media: staging: atomisp: avoid a warning if 32 bits 
Signed-off-by: Mauro Carvalho Chehab <>
 .../media/atomisp/platform/intel-mid/atomisp_gmin_platform.c        | 6 ------
 1 file changed, 6 deletions(-)

diff --git 
index 3283c1b05d6a..70c34de98707 100644
--- a/drivers/staging/media/atomisp/platform/intel-mid/atomisp_gmin_platform.c
+++ b/drivers/staging/media/atomisp/platform/intel-mid/atomisp_gmin_platform.c
@@ -693,12 +693,6 @@ static int gmin_get_config_var(struct device *dev, const 
char *var,
        for (i = 0; i < sizeof(var8) && var8[i]; i++)
                var16[i] = var8[i];
-#ifdef CONFIG_64BIT
-       /* To avoid owerflows when calling the efivar API */
-       if (*out_len > ULONG_MAX)
-               return -EINVAL;
        /* Not sure this API usage is kosher; efivar_entry_get()'s
         * implementation simply uses VariableName and VendorGuid from
         * the struct and ignores the rest, but it seems like there

Reply via email to