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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to