Re: [PATCH] local_irq_disable removal

Ingo Molnar
2005-06-13T07:59:53Z

* Sven-Thorsten Dietrich <sdietrich@mvista.com> 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