2006-10-11 19:09:13

by Alexey Dobriyan

[permalink] [raw]
Subject: misused local_irq_disable() in analog.c?

Dmitry, take a look at analog_cooked_read():

do-while loop there contains local_irq_disable()/local_irq_restore(flags);
which aren't complement.

Should it be

local_irq_save(flags);
this = gameport_read(gameport) & port->mask;
GET_TIME(now);
local_irq_restore(flags);

?


2006-10-11 20:17:35

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: misused local_irq_disable() in analog.c?

On 10/11/06, Alexey Dobriyan <[email protected]> wrote:
> Dmitry, take a look at analog_cooked_read():
>
> do-while loop there contains local_irq_disable()/local_irq_restore(flags);
> which aren't complement.
>
> Should it be
>
> local_irq_save(flags);
> this = gameport_read(gameport) & port->mask;
> GET_TIME(now);
> local_irq_restore(flags);
>
> ?

Yep, I think so. Patch?

--
Dmitry

2006-10-11 20:32:12

by Randy Dunlap

[permalink] [raw]
Subject: Re: misused local_irq_disable() in analog.c?

On Wed, 11 Oct 2006 16:17:33 -0400 Dmitry Torokhov wrote:

> On 10/11/06, Alexey Dobriyan <[email protected]> wrote:
> > Dmitry, take a look at analog_cooked_read():
> >
> > do-while loop there contains local_irq_disable()/local_irq_restore(flags);
> > which aren't complement.
> >
> > Should it be
> >
> > local_irq_save(flags);
> > this = gameport_read(gameport) & port->mask;
> > GET_TIME(now);
> > local_irq_restore(flags);
> >
> > ?
>
> Yep, I think so. Patch?

Alexey replied on another thread (Re: [PATCH] misuse of strstr):

"sorry for absence of patch, I'm on wonders of BY dial-up _and_ Gmail
web interface right now."


---
~Randy