Re: [PATCH v2] i2c: i801: fix potential race in i801_block_transaction_byte_by_byte

Heiner Kallweit
2023-09-05T16:20:30Z

On 05.09.2023 11:11, Andi Shyti wrote:
> Hi Jean,
>
> On Tue, Sep 05, 2023 at 10:12:43AM +0200, Jean Delvare wrote:
>> On Sat, 02 Sep 2023 22:10:52 +0200, Heiner Kallweit wrote:
>>> Currently we set SMBHSTCNT_LAST_BYTE only after the host has started
>>> receiving the last byte. If we get e.g. preempted before setting
>>> SMBHSTCNT_LAST_BYTE, the host may be finished with receiving the byte
>>> before SMBHSTCNT_LAST_BYTE is set.
>>> Therefore change the code to set SMBHSTCNT_LAST_BYTE before writing
>>> SMBHSTSTS_BYTE_DONE for the byte before the last byte. Now the code
>>> is also consistent with what we do in i801_isr_byte_done().
>>>
>>> Reported-by: Jean Delvare <jdelvare@suse.com>
>>
>> Note for Wolfram: checkpatch says we should insert here:
>>
>> Closes: https://lore.kernel.org/linux-i2c/20230828152747.09444625@endymion.delvare/
>
> does this also need a Fixes: tag? I tried to check it, but there
> was an intricate jungle of commits in these lines.
>
Quoting Jean from previous communication about this patch:
As far as I see, the race condition already existed when the kernel
switched to git, so there's no point in having a Fixes statement.

> Anyway, you can add:
>
> Acked-by: Andi Shyti <andi.shyti@kernel.org>
>
> Thanks,
> Andi