Re: [PATCH] drivers/acpi/ec.c fix a small memory leak

From: Alexey Starikovskiy
Date: Tue Feb 02 2010 - 10:35:57 EST


NAK

saved_ec is allocated if flag EC_FLAGS_VALIDATE_ECDT is true.
EC_FLAGS_SKIP_DSDT_SCAN have no sense in such case, thus this new code path
is never executed.
On the other hand, unconditionally freeing pointer, which is might be NULL, is not
right either.
So, this patch introduced more problems as it tries to solve...

Regards,
Alex.

Darren Jenkins ÐÐÑÐÑ:
> Plug a very small leak in acpi_ec_ecdt_probe()
>
> Coverity CID: 13319
>
> Signed-off-by: Darren Jenkins <darrenrjenkins@xxxxxxxxx>
>
> diff --git drivers/acpi/ec.c drivers/acpi/ec.c
> index d6471bb..13061dc 100644
> --- drivers/acpi/ec.c
> +++ drivers/acpi/ec.c
> @@ -1009,8 +1009,10 @@ int __init acpi_ec_ecdt_probe(void)
> /* fall through */
> }
>
> - if (EC_FLAGS_SKIP_DSDT_SCAN)
> + if (EC_FLAGS_SKIP_DSDT_SCAN) {
> + kfree(saved_ec);
> return -ENODEV;
> + }
>
> /* This workaround is needed only on some broken machines,
> * which require early EC, but fail to provide ECDT */
>
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/