Re: [PATCH 1/1] cpumask: smp_call_function_many()

From: Rusty Russell
Date: Thu Nov 20 2008 - 06:08:29 EST


On Thursday 20 November 2008 17:27:07 Nick Piggin wrote:
> On Thursday 20 November 2008 15:44, Rusty Russell wrote:
> > I can prepare a separate patch which just changes this over, rather than
> > doing it as part of the smp_call_function_many() conversion, but I
> > couldn't stomach touching that quiescing code :(
>
> What's wrong with it? It's well commented and I would have thought pretty
> simple. A bit ugly, but straightforward. I still don't really see why it
> needs changing.

Ah, sorry if I was unclear. The point of this 150+ patch series is to get
cpumasks off the stack.

Here's the problem:

struct call_function_data {
struct call_single_data csd;
spinlock_t lock;
unsigned int refs;
cpumask_t cpumask;
struct rcu_head rcu_head;
};
...

static void smp_call_function_mask_quiesce_stack(cpumask_t mask)
{
struct call_single_data data;
...

So, it's far simpler just to fix the code to do the "dumb" thing.

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