Re: 2.6.18-rt1

Ingo Molnar
2006-09-27T08:44:23Z

* Daniel Walker <dwalker@mvista.com> wrote:

> On closer inspection I still think this is wrong. (Although it looks
> really nice..) find below speaking only in term of !PREEMPT_RT ,

> > - } else if (oops_in_progress) {
> > - locked = spin_trylock(&up->port.lock);
> > - } else
> > - spin_lock(&up->port.lock);
> > + if (up->port.sysrq || oops_in_progress)
> > + locked = spin_trylock_irqsave(&up->port.lock, flags);
>
> Now in the new version interrupts are only off if you _get the lock_.
> Presumably the lock is taken in the calling function, but interrupts
> aren't disabled.
>
> I'm assuming the code is disabling interrupts for a good reason, I
> don't know enough about the code to say it isn't.

yeah, agreed - behavior now changed due to my patch. This is really
twisted code...

Ingo