Re:Re: [PATCH] ACPI: LPSS: Fix missing check in register_device_clock

From: huhai
Date: Thu Jun 23 2022 - 22:36:01 EST



At 2022-06-23 21:25:55, "Rafael J. Wysocki" <rafael@xxxxxxxxxx> wrote:
>On Thu, Jun 23, 2022 at 3:21 PM huhai <15815827059@xxxxxxx> wrote:
>>
>> From: huhai <huhai@xxxxxxxxxx>
>>
>> register_device_clock() misses a check for platform_device_register_simple().
>> Add a check to fix it.
>>
>> Signed-off-by: huhai <huhai@xxxxxxxxxx>
>> ---
>> drivers/acpi/acpi_lpss.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/drivers/acpi/acpi_lpss.c b/drivers/acpi/acpi_lpss.c
>> index fbe0756259c5..c4d4d21391d7 100644
>> --- a/drivers/acpi/acpi_lpss.c
>> +++ b/drivers/acpi/acpi_lpss.c
>> @@ -422,6 +422,9 @@ static int register_device_clock(struct acpi_device *adev,
>> if (!lpss_clk_dev)
>> lpt_register_clock_device();
>>
>> + if (IS_ERR(lpss_clk_dev))
>> + return PTR_ERR(lpss_clk_dev);
>> +
>
>Why not use IS_ERR_OR_NULL() instead?

platform_device_register_simple() never returns NULL as it declared bellowing,
so use IS_ERR() to validate the return value should be enough.

/**
* platform_device_register_simple - add a platform-level device and its resources
* ...
* Returns &struct platform_device pointer on success, or ERR_PTR() on error.
*/

Thanks.

>
>> clk_data = platform_get_drvdata(lpss_clk_dev);
>> if (!clk_data)
>> return -ENODEV;
>> --
>> 2.27.0
>>
>>
>> No virus found
>> Checked by Hillstone Network AntiVirus
>>