Re: [PATCH 1/1] EDAC, mpc85xx: Fix error return code in two functions
From: Leizhen (ThunderTown)
Date: Mon May 31 2021 - 05:16:02 EST
On 2021/5/31 16:40, Borislav Petkov wrote:
> On Fri, May 28, 2021 at 11:26:37AM +0800, Zhen Lei wrote:
>> Fix to return -EFAULT from the error handling case instead of 0, as done
>> elsewhere in its function.
>>
>> Fixes: a9a753d53204 ("drivers-edac: add freescale mpc85xx driver")
>> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
>> Signed-off-by: Zhen Lei <thunder.leizhen@xxxxxxxxxx>
>> ---
>> drivers/edac/mpc85xx_edac.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/edac/mpc85xx_edac.c b/drivers/edac/mpc85xx_edac.c
>> index 67f7bc3fe5b3..b2eaa62c9412 100644
>> --- a/drivers/edac/mpc85xx_edac.c
>> +++ b/drivers/edac/mpc85xx_edac.c
>> @@ -248,6 +248,7 @@ static int mpc85xx_pci_err_probe(struct platform_device *op)
>>
>> if (edac_pci_add_device(pci, pdata->edac_idx) > 0) {
>> edac_dbg(3, "failed edac_pci_add_device()\n");
>> + res = -EFAULT;
>
>> goto err;
>> }
>>
>> @@ -552,6 +553,7 @@ static int mpc85xx_l2_err_probe(struct platform_device *op)
>>
>> if (edac_device_add_device(edac_dev) > 0) {
>> edac_dbg(3, "failed edac_device_add_device()\n");
>> + res = -EFAULT;
>> goto err;
>> }
>>
>> --
>
> EFAULT means
>
> #define EFAULT 14 /* Bad address */
>
> Does it make sense to you when the probe function returns a "bad
> address" upon failure to add a device?
>
> hint 1: you might wanna audit how the other drivers are calling this for
> better ideas.
So how about change to -ENODEV?
>
> hint 2: while doing hint 1, you might find some more broken cases which
> you could fix too.
OK, I will find and fix all of them. Thanks for your hint.
>
> Thx.
>