futex: fix handling of read-only-mapped hugepages
[firefly-linux-kernel-4.4.55.git] / kernel / futex.c
index 49dacfb4574563b61551a436a21a2fc33053e47f..a283b3041072dfc2478b322a100ac4d034b681b3 100644 (file)
@@ -287,7 +287,7 @@ again:
                put_page(page);
                /* serialize against __split_huge_page_splitting() */
                local_irq_disable();
-               if (likely(__get_user_pages_fast(address, 1, 1, &page) == 1)) {
+               if (likely(__get_user_pages_fast(address, 1, !ro, &page) == 1)) {
                        page_head = compound_head(page);
                        /*
                         * page_head is valid pointer but we must pin