Re: [PATCH] Fix tosakbd suspend

From: Dmitry
Date: Tue Apr 01 2008 - 09:27:53 EST


Hi, Dmitry,

2008/4/1, Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>:
> Hi Dmitry,
>
>
> On Tue, Apr 01, 2008 at 01:38:01AM +0400, Dmitry Baryshkov wrote:
> > Signed-off-by: Dmitry Baryshkov <dbaryshkov@xxxxxxxxx>
> > ---
> > drivers/input/keyboard/tosakbd.c | 3 +++
> > 1 files changed, 3 insertions(+), 0 deletions(-)
> >
> > diff --git a/drivers/input/keyboard/tosakbd.c b/drivers/input/keyboard/tosakbd.c
> > index 3884d1e..306cbe8 100644
> > --- a/drivers/input/keyboard/tosakbd.c
> > +++ b/drivers/input/keyboard/tosakbd.c
> > @@ -210,6 +210,9 @@ static int tosakbd_suspend(struct platform_device *dev, pm_message_t state)
> >
> > del_timer_sync(&tosakbd->timer);
> >
>
>
> What if interrupt comes here? The whole suspend path seems racy with
> interrup handler/timer.

What is the best way to fix it? Moving from suspend to suspend_late
seems to be a hack.
Should I call a bunch of disable_irq or just introduce an atomic flag?

>
>
> > + PGSR1 = (PGSR1 & ~TOSA_GPIO_LOW_STROBE_BIT);
> > + PGSR2 = (PGSR2 & ~TOSA_GPIO_HIGH_STROBE_BIT);
> > +
> > return 0;
> > }
> >
>
> --
>
> Dmitry
>


--
With best wishes
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/