[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen: Send spinlock IPI to all waiters
On Fri, 2013-02-15 at 15:46 +0000, Jan Beulich wrote: > >>> 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? Right, it is only silly to use multicalls for homogeneous calls which already natively support batching. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |