Skip to content

Commit 14cf3d9

Browse files
committed
x86/gup: Replace ACCESS_ONCE with READ_ONCE
ACCESS_ONCE does not work reliably on non-scalar types. For example gcc 4.6 and 4.7 might remove the volatile tag for such accesses during the SRA (scalar replacement of aggregates) step (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58145) Change the gup code to replace ACCESS_ONCE with READ_ONCE. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
1 parent 4f9d138 commit 14cf3d9

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

arch/x86/mm/gup.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
static inline pte_t gup_get_pte(pte_t *ptep)
1616
{
1717
#ifndef CONFIG_X86_PAE
18-
return ACCESS_ONCE(*ptep);
18+
return READ_ONCE(*ptep);
1919
#else
2020
/*
2121
* With get_user_pages_fast, we walk down the pagetables without taking

0 commit comments

Comments
 (0)