Thread (5 messages) 5 messages, 4 authors, 2021-01-11

Re: [PATCH] i2c: tegra: Wait for config load atomically while in ISR

From: Mikko Perttunen <hidden>
Date: 2021-01-11 14:39:07
Also in: linux-i2c, lkml, stable

Agreed that this is possibly not optimal, but this patch simply returns 
the behavior to what it was before "i2c: tegra: Support atomic 
transfers", fixing the overt issue.

Design fixes can be considered later, in a non-stable patch.

Mikko

On 1/11/21 4:31 PM, David Laight wrote:
From: Mikko Perttunen
quoted
Sent: 11 January 2021 13:56

Upon a communication error, the interrupt handler can call
tegra_i2c_disable_packet_mode. This causes a sleeping poll to happen
unless the current transaction was marked atomic. Since
tegra_i2c_disable_packet_mode is only called from the interrupt path,
make it use atomic waiting always.
Spin-waiting in an ISR for anything that it makes sense to do
a sleep-wait for at other times is badly broken design.

	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help