diff options
Diffstat (limited to 'include/linux/seqlock.h')
| -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;  }  |