Re: [PATCH] PNPACPI: check return value of pnpacpi_parse_allocated_resource() and pnpacpi_parse_resource_option_data()

Rafael J. Wysocki
2014-07-22T21:53:39Z

On Wednesday, July 23, 2014 12:43:39 AM Arjun Sreedharan wrote:
> Handle error condition since pnpacpi_parse_allocated_resource() and pnpacpi_parse_resource_option_data() could return -EPERM.
>
> Signed-off-by: Arjun Sreedharan <arjun024@gmail.com>

I wonder if this fixes any functional issue you've seen or someone has
reported to you or it's just an "Oh, we probably should handle the return
values here" kind of thing?

> ---
> drivers/pnp/pnpacpi/core.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/pnp/pnpacpi/core.c b/drivers/pnp/pnpacpi/core.c
> index b81448b..c3214e9 100644
> --- a/drivers/pnp/pnpacpi/core.c
> +++ b/drivers/pnp/pnpacpi/core.c
> @@ -272,10 +272,14 @@ static int __init pnpacpi_add_device(struct acpi_device *device)
> strncpy(dev->name, acpi_device_bid(device), sizeof(dev->name));
>
> if (dev->active)
> - pnpacpi_parse_allocated_resource(dev);
> + error = pnpacpi_parse_allocated_resource(dev);
> + if (error)
> + return error;
>
> if (dev->capabilities & PNP_CONFIGURABLE)
> - pnpacpi_parse_resource_option_data(dev);
> + error = pnpacpi_parse_resource_option_data(dev);
> + if (error)
> + return error;
>
> list_for_each_entry(id, &device->pnp.ids, list) {
> if (!strcmp(id->id, pnpid))
>

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.