Re: question on spinlocks

Robert Love (rml@tech9.net)
01 Sep 2002 18:11:12 -0400


On Sun, 2002-09-01 at 18:02, Oliver Neukum wrote:
>
> > > No; spin_lock_irqsave/spin_unlock_irqrestore and spin_lock/spin_unlock
> > > have to be used in matching pairs.
> >
> > If it was his least problem! He'll run straight into a "schedule w/IRQs
> > disabled" bug.
>
> OK, how do I drop an irqsave spinlock if I don't have flags?

See my previous message.

Do not do what you are trying to do. Dropping a lock and calling
schedule is fine. Ditto with the interrupt part.

But note:

- interrupts will be reenabled when you reschedule and still
enabled when your task is finally running again.

- Since interrupts are going to magically restore, if you are
worried about the state of interrupts previous to your
function... you have a problem.

OK?

Robert Love

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