|
@@ -1,6 +1,7 @@
|
|
|
#include <linux/mm.h>
|
|
|
#include <linux/slab.h>
|
|
|
#include <linux/string.h>
|
|
|
+#include <linux/compiler.h>
|
|
|
#include <linux/export.h>
|
|
|
#include <linux/err.h>
|
|
|
#include <linux/sched.h>
|
|
@@ -307,7 +308,7 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
|
|
|
* If the architecture not support this function, simply return with no
|
|
|
* page pinned
|
|
|
*/
|
|
|
-int __attribute__((weak)) __get_user_pages_fast(unsigned long start,
|
|
|
+int __weak __get_user_pages_fast(unsigned long start,
|
|
|
int nr_pages, int write, struct page **pages)
|
|
|
{
|
|
|
return 0;
|
|
@@ -338,7 +339,7 @@ EXPORT_SYMBOL_GPL(__get_user_pages_fast);
|
|
|
* callers need to carefully consider what to use. On many architectures,
|
|
|
* get_user_pages_fast simply falls back to get_user_pages.
|
|
|
*/
|
|
|
-int __attribute__((weak)) get_user_pages_fast(unsigned long start,
|
|
|
+int __weak get_user_pages_fast(unsigned long start,
|
|
|
int nr_pages, int write, struct page **pages)
|
|
|
{
|
|
|
struct mm_struct *mm = current->mm;
|