提交 16afea02 编写于 作者: A Art Haas 提交者: Linus Torvalds

[PATCH] Remove 'volatile' from spinlock_types

This is a resubmission of patches originally created by Ingo Molnar.
The link below is the initial (?) posting of the patch.

  http://marc.theaimsgroup.com/?l=linux-kernel&m=115217423929806&w=2

Remove 'volatile' from spinlock_types as it causes GCC to generate bad
code (see link) and locking should be used on kernel data.
Signed-off-by: NArt Haas <ahaas@airmail.net>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 3e577a80
......@@ -6,13 +6,13 @@
#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 }
......
......@@ -6,13 +6,13 @@
#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 }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册