Re: [PATCH] local_irq_disable removal

From: Ingo Molnar
Date: Mon Jun 13 2005 - 03:01:44 EST



* Sven-Thorsten Dietrich <sdietrich@xxxxxxxxxx> wrote:

> > > Is there any such SMP concept as a local_preempt_disable() ?
> > >
> > You must think of preempt_disable() ? Except for the interface is a little
> > bit different using flags in local_irq_save(), preempt_disable() works
> > exactly the same way, blocking for everything but interrupts - on the
> > _local_ CPU. (Under PREEMPT_RT it ofcourse also blocks for threaded IRQ
> > handlers.)
>
> Doesn't preempt_disable() also block rescheduling on other CPUs?
>
> We only need to prevent rescheduling on THIS CPU.

it doesnt. It's 2-4 instructions similar to the assembly i posted
before, changing current_thread_info->preempt_count, nothing else.

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