Re: Buggy IPI and MTRR code on low memory

From: Steven Rostedt
Date: Wed Jan 28 2009 - 16:23:51 EST



On Wed, 28 Jan 2009, Andrew Morton wrote:

> On Wed, 28 Jan 2009 13:12:02 -0800
> Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
>
> > Thought: do we need to do the kmalloc at all? Perhaps we can instead
> > use a statically allocated per-cpu call_single_data local to
> > kernel/smp.c? It would need a spinlock or something to protect it...
>
> (not a spinlock - get_cpu_var/put_cpu_var will suffice)

Is that enough?

The calling IPIs may process the data after smp_call_function is made.
What happens if two smp_call_functions are executed one after the other?
The second one may corrupt the data if the IPI function has not executed
yet.

We may still need that "RELEASE" flag for that case.

-- Steve

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