--- common/lib/modules/fglrx/build_mod/firegl_public.c.orig 2016-05-23 18:31:53.997404477 +0200 +++ common/lib/modules/fglrx/build_mod/firegl_public.c 2016-05-23 18:32:52.976508373 +0200 @@ -3245,7 +3245,11 @@ int ret; down_read(¤t->mm->mmap_sem); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,6,0) + ret = get_user_pages(vaddr, page_cnt, 1, 0, (struct page **)page_list, NULL); +#else ret = get_user_pages(current, current->mm, vaddr, page_cnt, 1, 0, (struct page **)page_list, NULL); +#endif up_read(¤t->mm->mmap_sem); return ret; @@ -3263,7 +3267,11 @@ int ret; down_read(¤t->mm->mmap_sem); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,6,0) + ret = get_user_pages(vaddr, page_cnt, 0, 0, (struct page **)page_list, NULL); +#else ret = get_user_pages(current, current->mm, vaddr, page_cnt, 0, 0, (struct page **)page_list, NULL); +#endif up_read(¤t->mm->mmap_sem); return ret; @@ -3274,7 +3282,11 @@ unsigned int i; for (i=0; i= KERNEL_VERSION(4,6,0) + put_page((struct page*)page_list[i]); +#else page_cache_release((struct page*)page_list[i]); +#endif } }