Re: [rfc][patch] x86-64 new smp_call_function design

From: Ingo Molnar
Date: Wed Feb 27 2008 - 08:27:34 EST



* Nick Piggin <npiggin@xxxxxxx> wrote:

> This isn't finished yet, however I'd just like to ask for comments.

looks really interesting!

only one fundamental observation:

> +struct call_data {
> + spinlock_t lock;
> + struct list_head list;
> void (*func) (void *info);
> void *info;
> + unsigned int flags;
> + unsigned int refs;
> + cpumask_t cpumask;
> + struct rcu_head rcu_head;
> };

> +struct call_single_data {
> + struct list_head list;
> + void (*func) (void *info);
> + void *info;
> + unsigned int flags;
> +};

the two structures are quite similar in size and role - why not have a
type field and handle them largely together? I think we should try to
preserve a single queue and a single vector - that would remove a number
of ugly special-cases from the patch.

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