Messages in this thread | | | Date | Mon, 13 Jun 2005 09:56:35 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH] local_irq_disable removal |
| |
* 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 - 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/
| |