Re: 3c59x vortex_timer rt hack (was: rt20 patch question)

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

 



Steven Rostedt <[email protected]> wrote:
>
> 
> 
> On Fri, 12 May 2006, Ingo Molnar wrote:
> 
> > --- linux-rt.q.orig/drivers/net/3c59x.c
> > +++ linux-rt.q/drivers/net/3c59x.c
> > @@ -1897,7 +1897,8 @@ vortex_timer(unsigned long data)
> >
> >  	if (vp->medialock)
> >  		goto leave_media_alone;
> > -	disable_irq(dev->irq);
> > +	/* hack! */
> > +	disable_irq_nosync(dev->irq);
> >  	old_window = ioread16(ioaddr + EL3_CMD) >> 13;
> >  	EL3WINDOW(4);
> >  	media_status = ioread16(ioaddr + Wn4_Media);
> 
> BTW, I originally thought about having Mark do this, but I'm nervious
> about the side effects that this might have.  Basically, it's doing
> ioreads from the device while the interrupt could be doing iowrites.
> 
> I don't know the device well enough to know if this is a problem.
> I've added Andrew Morton to the CC list, since his name is all over the
> code.
> 
> Andrew,
> 
> Do you know off hand what the side-effects to the vortex card might be
> if we use disable_irq_nosync instead of disable_irq?
> 

ooh, ow, sorry, that's lost in the mists of time.  I don't know why we're
doing disable_irq() in there.

Whatever it does, I think you could take vp->lock instead - that'll stop
the interrupt handler from doing anything if it does get entered while this
CPU is running vortex_timer().

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux