If STRICT_MM_TYPECHECKS is enabled the generic gup code fails to build
because we are using ACCESS_ONCE on non-scalar types.

Convert all uses to READ_ONCE.

Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Michael Ellerman <[email protected]>
---
 mm/gup.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/gup.c b/mm/gup.c
index a6e24e246f86..120c3adc843c 100644
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -901,7 +901,7 @@ static int gup_pte_range(pmd_t pmd, unsigned long addr, 
unsigned long end,
                 *
                 * for an example see gup_get_pte in arch/x86/mm/gup.c
                 */
-               pte_t pte = ACCESS_ONCE(*ptep);
+               pte_t pte = READ_ONCE(*ptep);
                struct page *page;
 
                /*
@@ -1191,7 +1191,7 @@ int __get_user_pages_fast(unsigned long start, int 
nr_pages, int write,
        local_irq_save(flags);
        pgdp = pgd_offset(mm, addr);
        do {
-               pgd_t pgd = ACCESS_ONCE(*pgdp);
+               pgd_t pgd = READ_ONCE(*pgdp);
 
                next = pgd_addr_end(addr, end);
                if (pgd_none(pgd))
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to