Am Montag, 13. Oktober 2008 schrieb Benjamin Herrenschmidt:
> 
> >     if (--hp->count == 0) {
> > -           if (hp->ops->notifier_del)
> > -                   hp->ops->notifier_del(hp, hp->data);
> > -
> >             /* We are done with the tty pointer now. */
> >             hp->tty = NULL;
> >             spin_unlock_irqrestore(&hp->lock, flags);
> >  
> > +           if (hp->ops->notifier_del)
> > +                   hp->ops->notifier_del(hp, hp->data);
> > +
> 
> I will try. Of course the risk here is that the interrupt happens
> after we set hp->tty to NULL, so we probably need to check within the
> interrupt handler for a NULL tty. I haven't checked if that's the case
> (I'm not in front of the code right now).

Even the old code (without my patch) was setting hp->tty to NULL before doing 
the irq_free, so that should be ok.

Christian
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to