Messages in this thread Patch in this message | | | From | "Art Haas" <> | Date | Mon, 4 Dec 2006 12:03:11 -0600 | Subject | [PATCH] Remove 'volatile' from spinlocks |
| |
Hi.
Months ago two patches were posted by Ingo Molnar that removed the 'volatile' keyword from the 'raw_spinlock_t' and 'raw_rwlock_t' structures in the i386 and x86-64 ports. The link below takes you to the initial (?) posting of the patches:
http://marc.theaimsgroup.com/?l=linux-kernel&m=115217423929806&w=2
I've been build and running SMP kernels on a dual PIII machine with the i386 version of the patch since then and the kernels have worked well. Perhaps the patch(es) can make it into the 2.6.20 kernel?
The i386 version of the patch is below, the x86-64 patch is identical.
Art Haas
diff --git a/include/asm-i386/spinlock_types.h b/include/asm-i386/spinlock_types.h index 59efe84..4da9345 100644 --- a/include/asm-i386/spinlock_types.h +++ b/include/asm-i386/spinlock_types.h @@ -6,13 +6,13 @@ # error "please don't include this file #endif typedef struct { - volatile unsigned int slock; + unsigned int slock; } raw_spinlock_t; #define __RAW_SPIN_LOCK_UNLOCKED { 1 } typedef struct { - volatile unsigned int lock; + unsigned int lock; } raw_rwlock_t; #define __RAW_RW_LOCK_UNLOCKED { RW_LOCK_BIAS } -- Man once surrendering his reason, has no remaining guard against absurdities the most monstrous, and like a ship without rudder, is the sport of every wind.
-Thomas Jefferson to James Smith, 1822 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |