[PATCH -next] staging: xillybus: fix error return code in xilly_probe()

Eli Billauer eli.billauer at gmail.com
Mon Dec 16 12:47:44 UTC 2013


Thanks for reporting this bug. The same bug exists in the driver for OF 
(xillybus_of.c).

As for the choice of -EIO, I've surveyed several drivers calling 
of_iomap() and pci_iomap(), and it turns out that some fail on -ENOMEM, 
some on -EIO and some on -EBUSY.

Personally, I'm inclined towards -ENOMEM, since the problem is a memory 
mapping failure.

I'll submit a patch fixing both files soon.

Thanks again,
    Eli

On 16/12/13 12:06, Jingoo Han wrote:
> On Monday, December 16, 2013 2:51 PM, Wei Yongjun wrote:
>    
>> From: Wei Yongjun<yongjun_wei at trendmicro.com.cn>
>>
>> Fix to return negative error code -EIO from the error handling
>> case instead of 0.
>>
>> Signed-off-by: Wei Yongjun<yongjun_wei at trendmicro.com.cn>
>> ---
>>   drivers/staging/xillybus/xillybus_pcie.c | 2 +-
>>      
> It looks good.
> Reviewed-by: Jingoo Han<jg1.han at samsung.com>
>
> Best regards,
> Jingoo Han
>
>    
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/staging/xillybus/xillybus_pcie.c b/drivers/staging/xillybus/xillybus_pcie.c
>> index 0564f97..51426d8 100644
>> --- a/drivers/staging/xillybus/xillybus_pcie.c
>> +++ b/drivers/staging/xillybus/xillybus_pcie.c
>> @@ -168,9 +168,9 @@ static int xilly_probe(struct pci_dev *pdev,
>>   	}
>>
>>   	endpoint->registers = pci_iomap(pdev, 0, 128);
>> -
>>   	if (!endpoint->registers) {
>>   		dev_err(endpoint->dev, "Failed to map BAR 0. Aborting.\n");
>> +		rc = -EIO;
>>   		goto failed_iomap0;
>>   	}
>>
>>      
>    




More information about the devel mailing list