The function tracer self test would crash hard after applying this
patch. I found the bug:



On Tue, 2013-06-18 at 15:01 -0400, Seiji Aguchi wrote:
>  /*
>   * the load_current_idt() is called with interrupt disabled by
> local_irq_save()
>   * to avoid races. That way the IDT will always be set back to the
> expected
> @@ -442,6 +508,8 @@ static inline void load_current_idt(void)
>         local_irq_save(flags);
>         if (is_debug_idt_enabled())
>                 load_debug_idt();
> +       if (is_trace_idt_enabled())
> +               load_trace_idt();

This should be:

        else if (is_trace_idt_enabled())

Otherwise, you just totally negated the previous if.

-- Steve

>         else
>                 load_idt((const struct desc_ptr *)&idt_descr);
>         local_irq_restore(flags); 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
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