Re: [rfc 00/45] [RFC] CPU ops and a rework of per cpu data handlingon x86_64

From: Christoph Lameter
Date: Mon Nov 19 2007 - 22:33:34 EST


n Tue, 20 Nov 2007, Andi Kleen wrote:

>
> > Although we have a per-cpu area base in a fixed global register
> > for addressing, the above isn't beneficial on sparc64 because
> > the atomic is much slower than doing a:
> >
> > local_irq_disable();
> > nonatomic_percpu_memory_op();
> > local_irq_enable();
>
> Again might be pointing out the obvious, but you
> need of course save_flags()/restore_flags(), not disable/enable().
>
> If it was just disable/enable x86 could do it much faster too
> and Christoph probably would never felt the need to approach
> this project for his SLUB fast path.

I already have no need for that anymore with the material now in Andrews
tree. However, this cuts out another 6 cycles from the fastpath and I
found that the same principles reduce overhead all over the kernel.


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