These primitives avoid lock starvation and increase performance on NUMA systems with high lock contention. As always, reducing lock contention is the right thing to do, but NUMA-aware locks can stop the bleeding while you are reworking your locking design.

NOTE: The current patch supercedes the first. They have been tested with the 2.4.6 kernel, but are implemented in a way to be fairly version independent. The patch is currently for both ia32 and ia64 architectures.

  1. This is the first version of Numa Aware Locks released 7/16/01.

  2. This is the current version of Numa Aware Locks released 8/01/01.
    The new release removes the unspin/respin routines from do_IRQ(), and also incorporates suggestions from the community.