From 040c0ad65f5997bdf91024f9be3622d5b66ef8d5 Mon Sep 17 00:00:00 2001 From: Jon Hunter Date: Fri, 22 Sep 2023 15:45:56 +0100 Subject: [PATCH] drivers: nv-p2p: Drop get_user_pages_locked The nv-p2p driver does not compile against pre-v5.15 kernels and the following error is seen ... drivers/nv-p2p/nvidia-p2p.c:153:24: error: passing argument 1 of 'mmap_read_lock' from incompatible pointer type [-Werror=incompatible-pointer-types] 153 | mmap_read_lock(¤t->mm); | ^~~~~~~~~~~~ | | | struct mm_struct ** The version of the function get_user_pages_unlocked() used in the nv-p2p driver has been support since v4.6 and so drop usage of get_user_pages_locked() completely. Bug 4142533 Signed-off-by: Jon Hunter Change-Id: I957197825ddee6b705626b345aaff4647de08533 Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2983961 Reviewed-by: Sumit Gupta GVS: Gerrit_Virtual_Submit --- drivers/nv-p2p/nvidia-p2p.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/drivers/nv-p2p/nvidia-p2p.c b/drivers/nv-p2p/nvidia-p2p.c index 4749cda3..3bf2ee8c 100644 --- a/drivers/nv-p2p/nvidia-p2p.c +++ b/drivers/nv-p2p/nvidia-p2p.c @@ -129,7 +129,6 @@ int nvidia_p2p_get_pages(u64 vaddr, u64 size, { int ret = 0; int user_pages = 0; - int locked = 0; int nr_pages = safe_cast_u64_to_s32(size >> PAGE_SHIFT); struct page **pages; @@ -148,17 +147,8 @@ int nvidia_p2p_get_pages(u64 vaddr, u64 size, goto free_page_table; } - locked = 1; -#if LINUX_VERSION_CODE <= KERNEL_VERSION(5, 15, 0) - mmap_read_lock(¤t->mm); - user_pages = safe_cast_s64_to_s32(get_user_pages_locked(vaddr & PAGE_MASK, nr_pages, - FOLL_WRITE | FOLL_FORCE, pages, &locked)); - if (locked) - mmap_read_unlock(¤t->mm); -#else user_pages = safe_cast_s64_to_s32(get_user_pages_unlocked(vaddr & PAGE_MASK, nr_pages, pages, FOLL_WRITE | FOLL_FORCE)); -#endif if (user_pages != nr_pages) { ret = user_pages < 0 ? user_pages : -ENOMEM; goto free_pages;