#include // // The following kernel commit changed the get_user_pages_remote() // function signature: // // commit 5b56d49fc31dbb0487e14ead790fc81ca9fb2c99 // Author: Lorenzo Stoakes // Date: Wed Dec 14 15:06:52 2016 -0800 // // mm: add locked parameter to get_user_pages_remote() // // This changed the function signature from: // // long get_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm, // unsigned long start, unsigned long nr_pages, // unsigned int gup_flags, struct page **pages, // struct vm_area_struct **vmas); // // long get_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm, // unsigned long start, unsigned long nr_pages, // unsigned int gup_flags, struct page **pages, // struct vm_area_struct **vmas, int *locked); // long gupr_wrapper2(struct task_struct *tsk, struct mm_struct *mm, unsigned long start, unsigned long nr_pages, unsigned int gup_flags, struct page **pages, struct vm_area_struct **vmas, int *locked) { return get_user_pages_remote(tsk, mm, start, nr_pages, gup_flags, pages, vmas, locked); }