On Friday 09 November 2007 01:19, Jeremy Fitzhardinge wrote:
> Andi Kleen wrote:
> > The only problem is that there might be some code who relies on
> > restore_flags() restoring other flags that IF, but at least for
> > interrupts and local_irq_save/restore it should be fine to change.
>
> I
On Friday 09 November 2007 01:19, Jeremy Fitzhardinge wrote:
Andi Kleen wrote:
The only problem is that there might be some code who relies on
restore_flags() restoring other flags that IF, but at least for
interrupts and local_irq_save/restore it should be fine to change.
I don't think
From: Christoph Lameter <[EMAIL PROTECTED]>
Date: Thu, 8 Nov 2007 11:58:58 -0800 (PST)
> The problem with cmpxchg_local here is that the differential has to
> be read before we execute the cmpxchg_local. So the cacheline is
> acquired first in read mode and then made exclusive on executing the
>
Andi Kleen wrote:
> The only problem is that there might be some code who relies on
> restore_flags() restoring other flags that IF, but at least for interrupts
> and local_irq_save/restore it should be fine to change.
>
I don't think so. We don't bother to save/restore the other flags in
On Fri, 9 Nov 2007, Andi Kleen wrote:
>
> > There is an interrupt enable overhead of 48 cycles that would be good to
> > be able to eliminate (Kernel code usually moves counter increments into
> > a neighboring interrupt disable section so that __ function can be used).
>
> Replace the push
> There is an interrupt enable overhead of 48 cycles that would be good to
> be able to eliminate (Kernel code usually moves counter increments into
> a neighboring interrupt disable section so that __ function can be used).
Replace the push flags ; popf with test $IFMASK,flags ; jz 1f; sti ;
I looked into getting rid of the interrupt enable/disable when updating vm
statistics in vmstat.c. The SLUB removal of the interrupt enable/disable
doubled the performance of the fast path so maybe we can do the same to
vm statistics.
Measurements were done on an 8p SMP system (dual quad core
On Fri, 9 Nov 2007, Andi Kleen wrote:
There is an interrupt enable overhead of 48 cycles that would be good to
be able to eliminate (Kernel code usually moves counter increments into
a neighboring interrupt disable section so that __ function can be used).
Replace the push flags ; popf
I looked into getting rid of the interrupt enable/disable when updating vm
statistics in vmstat.c. The SLUB removal of the interrupt enable/disable
doubled the performance of the fast path so maybe we can do the same to
vm statistics.
Measurements were done on an 8p SMP system (dual quad core
Andi Kleen wrote:
The only problem is that there might be some code who relies on
restore_flags() restoring other flags that IF, but at least for interrupts
and local_irq_save/restore it should be fine to change.
I don't think so. We don't bother to save/restore the other flags in
Xen
From: Christoph Lameter [EMAIL PROTECTED]
Date: Thu, 8 Nov 2007 11:58:58 -0800 (PST)
The problem with cmpxchg_local here is that the differential has to
be read before we execute the cmpxchg_local. So the cacheline is
acquired first in read mode and then made exclusive on executing the
There is an interrupt enable overhead of 48 cycles that would be good to
be able to eliminate (Kernel code usually moves counter increments into
a neighboring interrupt disable section so that __ function can be used).
Replace the push flags ; popf with test $IFMASK,flags ; jz 1f; sti ; 1:
12 matches
Mail list logo