diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-19 17:29:29 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-19 17:29:29 -0700 |
commit | 6595b4a940c4c447b619ab5268378ed03e632694 (patch) | |
tree | e604f97bf8e947fca3dca4c5101d6ffdc432466d /include | |
parent | cbdad8dc18b8ddd6c8b48c4ef26d46f00b5af923 (diff) | |
parent | 5db1256a5131d3b133946fa02ac9770a784e6eb2 (diff) |
Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
seqlock: Don't smp_rmb in seqlock reader spin loop
watchdog, hung_task_timeout: Add Kconfig configurable default
lockdep: Remove cmpxchg to update nr_chain_hlocks
lockdep: Print a nicer description for simple irq lock inversions
lockdep: Replace "Bad BFS generated tree" message with something less cryptic
lockdep: Print a nicer description for irq inversion bugs
lockdep: Print a nicer description for simple deadlocks
lockdep: Print a nicer description for normal deadlocks
lockdep: Print a nicer description for irq lock inversions
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/seqlock.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h index e98cd2e5719..06d69648fc8 100644 --- a/include/linux/seqlock.h +++ b/include/linux/seqlock.h @@ -88,12 +88,12 @@ static __always_inline unsigned read_seqbegin(const seqlock_t *sl) unsigned ret; repeat: - ret = sl->sequence; - smp_rmb(); + ret = ACCESS_ONCE(sl->sequence); if (unlikely(ret & 1)) { cpu_relax(); goto repeat; } + smp_rmb(); return ret; } |