Re: [linux-next][regression] [PATCH] percpu: add preemption checks to __this_cpu ops

From: Andrew Morton
Date: Tue Mar 18 2014 - 17:38:12 EST


On Tue, 18 Mar 2014 10:54:06 -0500 (CDT) Christoph Lameter <cl@xxxxxxxxx> wrote:

> On Tue, 18 Mar 2014, Grygorii Strashko wrote:
>
> > Any way, I can boot and console works fine with your change :)
> > Thanks.
>
> Ok here is the properly formatted patch:
>
>
> Subject: preemption_checks: Avoid snprintf before checking error conditions
>
> snprintf can cause hangs.

This is weird. How the heck can snprintf() fail if called too early?
All it does is shuffle chars around in memory. The only external
dependency I'm seeing is a WARN_ON() which presumably didn't trigger
anyway.

I'm suspecting a misdiagnosis here. Otherwise, we seriously need to
fix snprintf(), not work around it!

Also, what does "before checking error conditions" refer to? Does this
mean you know why snprintf() failed??

> Move the string processing into the function
> so that the string operations only occur when necessary after the
> conditions have been checked.
>
> Tested-by: Grygorii Strashko <grygorii.strashko@xxxxxx>

Grygorii, thanks for testing linux-next on unusual machines - it's most
helpful.

> Signed-off-by: Christoph Lameter <cl@xxxxxxxxx>

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