Re: [PATCH v5 1/7] Input: matrix_keypad - use fsleep for variable delay duration

From: Dmitry Torokhov
Date: Tue Feb 25 2025 - 01:55:48 EST


On Mon, Feb 24, 2025 at 10:40:55PM -0800, Dmitry Torokhov wrote:
> On Wed, Feb 19, 2025 at 05:34:49PM +0100, Manuel Traut wrote:
> > On Fri, Jan 10, 2025 at 06:49:00AM +0100, Markus Burri wrote:
> > > The delay is retrieved from a device-tree property, so the duration is
> > > variable. fsleep guesses the best delay function based on duration.
> > >
> > > see Documentation/timers/delay_sleep_functions.rst
> > >
> > > Signed-off-by: Markus Burri <markus.burri@xxxxxx>
> >
> > Reviewed-by: Manuel Traut <manuel.traut@xxxxxx>
>
> As I mentioned in other review activate_col() may be called in atomic
> context where we can not sleep:
>
> "activate_col() may be called in atomic context, and if fsleep() turns
> into usleep_range() or msleep() we are going to have a bad time.
>
> We should either stop using request_any_context_irq() or figure out if
> interrupt handler can sleep or not and adjust behavior properly."
>
> Unfortunately this was completely ignored.

My apologies, it looks like it only is called from work handler, so my
comment was wrong.

Thanks.

--
Dmitry