[PATCH v2] serial: sifive: lock port in startup()/shutdown() callbacks
Ryo Takakura
ryotkkr98 at gmail.com
Thu Apr 10 07:23:03 PDT 2025
On Thu, 10 Apr 2025 13:29:43 +0200, Petr Mladek wrote:
>On Sat 2025-04-05 23:53:54, Ryo Takakura wrote:
>> startup()/shutdown() callbacks access SIFIVE_SERIAL_IE_OFFS.
>> The register is also accessed from write() callback.
>>
>> If console were printing and startup()/shutdown() callback
>> gets called, its access to the register could be overwritten.
>>
>> Add port->lock to startup()/shutdown() callbacks to make sure
>> their access to SIFIVE_SERIAL_IE_OFFS is synchronized against
>> write() callback.
>>
>> Fixes: 45c054d0815b ("tty: serial: add driver for the SiFive UART")
>> Signed-off-by: Ryo Takakura <ryotkkr98 at gmail.com>
>> Cc: stable at vger.kernel.org
>
>I do not have the hardware around so I could not test it.
>But the change make sense. It fixes a real race.
>And the code looks reasonable:
>
>Reviewed-by: Petr Mladek <pmladek at suse.com>
Thanks for reviewing this one as well!
I'll send v3 with your Reviewed-by.
Sincerely,
Ryo Takakura
>Best Regards,
>Petr
More information about the linux-riscv
mailing list