Re: x86: use this_cpu for debug_stack_usage

From: Christoph Lameter
Date: Tue Aug 06 2013 - 15:00:21 EST


On Tue, 6 Aug 2013, Steven Rostedt wrote:

> I don't remember why I didn't use this in the first place. Perhaps I was
> still in the "get_cpu" mind set.
>
> Also, what's the difference between "__this_cpu_inc()" and
> "this_cpu_inc()"?

The fallback logic for arches not supporting segment prefixes is differnt.
this_cpu_inc() disables interrupts.

__this_cpu_inc() is used when you know that the scheduler cannot move the
process.

The code generated by both is the same on x86.

> > int is_debug_stack(unsigned long addr);
> > void debug_stack_set_zero(void);
>
> Might as well change is_debug_stack() to use __this_cpu_read() instead
> of __get_cpu_var().

True and that will also shave off some instructions.

--
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/