Re: [PATCH 1/1] genirq/timings: Fix error return code in irq_timings_test_irqs()

From: Leizhen (ThunderTown)
Date: Wed Aug 11 2021 - 03:11:58 EST




On 2021/8/10 21:33, Thomas Gleixner wrote:
> On Sat, May 08 2021 at 14:20, Zhen Lei wrote:
>> Fix to return a negative error code from the error handling case instead
>> of 0, as done elsewhere in this function.
>
> Returning an error code is fine, but
>
>>
>> __irq_timings_store(irq, irqs, ti->intervals[i]);
>> if (irqs->circ_timings[i & IRQ_TIMINGS_MASK] != index) {
>> + ret = -EFAULT;
>
> EFAULT is really not appropriate here. EFAULT is used for mapping
> faults. ENOSPC or EBADSLT perhaps?

EBADSLT will be better, the cyclic buffer can not be "no space".

>
>> pr_err("Failed to store in the circular buffer\n");
>> goto out;
>> }
>> }
>>
>> if (irqs->count != ti->count) {
>> + ret = -EFAULT;
>
> ERANGE?

Looks better than EFAULT.

Thank you for your suggestion, I will send v2.

>
> Thanks,
>
> tglx
> .
>