On Mon, 14 Jul 2014 19:09:48 -0500
Corey Minyard <[email protected]> wrote:

> Can we get:
> 
> tracing-use-migrate_disable-to-prevent-beeing-pushed.patch

Sure except that patch is buggy:

-               preempt_disable();
+               migrate_disable();
                /* The update must run on the CPU that is being updated. */
                if (cpu_id == smp_processor_id() || !cpu_online(cpu_id))
                        rb_update_pages(cpu_buffer);
                else {
-                       /*
-                        * Can not disable preemption for schedule_work_on()
-                        * on PREEMPT_RT.
-                        */
-                       preempt_enable();
                        schedule_work_on(cpu_id,
                                         &cpu_buffer->update_pages_work);
                        wait_for_completion(&cpu_buffer->update_done);
-                       preempt_disable();
                }
-               preempt_enable();
+               migrate_enable();

migrate_disable() on non-PREEMPT_RT is preempt_disable(). You can't
call wait_or_completion with preemption disabled.

When that gets fixed in mainline -rt, I'll add it to the stable
branches too.

-- Steve



> 
> into 3.10, also?
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to