[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110225173850.486326452@linux.com>
Date: Fri, 25 Feb 2011 11:38:50 -0600
From: Christoph Lameter <cl@...ux.com>
To: Tejun Heo <tj@...nel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
Subject: [cpuops cmpxchg double V3 0/5] this_cpu_cmpxchg_double support
This patch series introduces this_cpu_cmpxchg_double().
x86 cpus support cmpxchg16b and cmpxchg8b instuction which are capable of
switching two words instead of one during a cmpxchg.
Two words allow to swap more state in an atomic instruction.
this_cpu_cmpxchg_double() is used in the slub allocator to avoid
interrupt disable/enable in both alloc and free fastpath.
Using the new operation significantly speeds up the fastpaths.
V1->V2
- Change parameter convention for this_cpu_cmpxchg_double. Specify both
percpu variables in same way as the two old and new values.
- Do not require a per cpu pointer but a variable to conform to the
convention used in other this_cpu_ops.
V2->V3:
- Do not use CONFIG_DEBUG_VM to enable cmpxchg diagnostics. Use
custom SLUB define instead.
- Add patch to move min_partial into a different cacheline.
- Rediff
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists