Messages in this thread | | | From | Rusty Russell <> | Subject | Re: [PATCH 1/1] cpumask: smp_call_function_many() | Date | Thu, 20 Nov 2008 21:38:04 +1030 |
| |
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.
| |