Re: [PATCH] tty: serial: sc16is7xx: implemented our own oneshot-like handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 14 Mar 2016, Sean Nyekjær wrote:
> On 2016-03-13 11:25, Thomas Gleixner wrote:
> > On Fri, 11 Mar 2016, Sean Nyekjaer wrote:
> > 
> > >   static irqreturn_t sc16is7xx_irq(int irq, void *dev_id)
> > >   {
> > >   	struct sc16is7xx_port *s = (struct sc16is7xx_port *)dev_id;
> > > +	int i;
> > > +
> > > +	for (i = 0; i < s->devtype->nr_uart; ++i)
> > > +		disable_irq_nosync(s->p[i].port.irq);
> > Aside of the lack of a changelog. This is completely bogus. You disable the
> > same interrupt a gazillion of times.
> I can't see why the interrupt is disabled a gazillion times.
> When the irq is disabled the function will not be called before it's enabled
> again... Or have i missed something?

> > > +	for (i = 0; i < s->devtype->nr_uart; ++i)
> > > +		disable_irq_nosync(s->p[i].port.irq);

port.irq is the same for all ports at least according to the init function. It
is actually @irq, the handler function argument.

Thanks,

	tglx

[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux