Re: [patch 4/8] x86_64:Fix cluster mode send_IPI_allbutself to use get_cpu()/put_cpu()

Ashok Raj
2005-08-04T16:38:40Z

On Thu, Aug 04, 2005 at 12:43:02PM +0200, Andi Kleen wrote:
> On Mon, Aug 01, 2005 at 01:20:21PM -0700, Ashok Raj wrote:
> > Need to ensure we dont get prempted when we clear ourself from mask when using
> > clustered mode genapic code.
>
> It's not needed I think. If the caller wants to execute code
> on the current CPU then it has to have disabled preemption
> itself already to avoid races. And if not it doesn't care.
>
> One could argue that this function should be always called
> with preemption disabled though. Perhaps better a WARN_ON().
>

This is only required for smp_call_function(), since we do allbutself
by exclusing self, its the internal function that needs to do this.

allbutself shortcut takes care of it, since it doesnt matter which cpu
we write the shortcut, in the mask version and for cluster i think its required
to ensure in the low level function. Otherwise we would need each
implementation of smp_call_function() and send_IPI_allbutself() callers would
need to do this, which would be lots of changes.
> -Andi

--
Cheers,
Ashok Raj
- Open Source Technology Center