[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] xen: Send spinlock IPI to all waiters



>>> On 15.02.13 at 16:14, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote:
> On Fri, Feb 15, 2013 at 11:31:23AM +0000, Ian Campbell wrote:
>> On Fri, 2013-02-15 at 11:26 +0000, Jan Beulich wrote:
>> > >>> On 15.02.13 at 12:10, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
>> > > On Fri, 2013-02-15 at 10:52 +0000, Stefan Bader wrote:
>> > >> diff --git a/arch/x86/xen/spinlock.c b/arch/x86/xen/spinlock.c
>> > >> index 83e866d..f7a080e 100644
>> > >> --- a/arch/x86/xen/spinlock.c
>> > >> +++ b/arch/x86/xen/spinlock.c
>> > >> @@ -328,7 +328,6 @@ static noinline void xen_spin_unlock_slow(struct 
>> > > xen_spinlock *xl)
>> > >>                 if (per_cpu(lock_spinners, cpu) == xl) {
>> > >>                         ADD_STATS(released_slow_kicked, 1);
>> > >>                         xen_send_IPI_one(cpu, XEN_SPIN_UNLOCK_VECTOR);
>> > >> -                       break;
>> > > 
>> > > It would be more efficient to build a mask and use xen_send_IPI_mask().
>> > 
>> > In order for __xen_send_IPI_mask() to then take the list apart
>> > again and call xen_send_IPI_one()? There's no batching
>> > implemented currently...
>> 
>> Oh, I simply assumed it must obviously do that!
> 
> Perhaps if it was done via a multicall? We could batch then things up. But I 
> recall you saying that for homogeneous calls it is silly to use multicalls.

Aren't you mixing this up with it being pointless to use multicalls
for things that already allow for batching, like grant table ops?

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.