From e0839dd11394e1308251db8219cc8abdecf13757 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 3 Mar 2017 16:06:32 +0000 Subject: cryptodev: update to handle 4.10 kernel API Signed-off-by: Richard Purdie --- .../cryptodev/files/kernel-4-10-changes.patch | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 meta/recipes-kernel/cryptodev/files/kernel-4-10-changes.patch (limited to 'meta/recipes-kernel/cryptodev/files/kernel-4-10-changes.patch') diff --git a/meta/recipes-kernel/cryptodev/files/kernel-4-10-changes.patch b/meta/recipes-kernel/cryptodev/files/kernel-4-10-changes.patch new file mode 100644 index 0000000000..93d608b81d --- /dev/null +++ b/meta/recipes-kernel/cryptodev/files/kernel-4-10-changes.patch @@ -0,0 +1,57 @@ +Upstream-Status: Backport +Signed-off-by: Ross Burton + +From 2b29be8ac41414ed19cb4f5d5626d9bd0d7b11a8 Mon Sep 17 00:00:00 2001 +From: Cristian Stoica +Date: Wed, 8 Feb 2017 12:11:04 +0200 +Subject: [PATCH] adjust to API changes in kernel >=4.10 + +There are many changes related to get_user_pages and the code is rewritten +for clarity. + +Signed-off-by: Cristian Stoica +--- + zc.c | 28 +++++++++++++++++----------- + 1 file changed, 17 insertions(+), 11 deletions(-) + +diff --git a/zc.c b/zc.c +index e766ee3..2f4ea99 100644 +--- a/zc.c ++++ b/zc.c +@@ -59,19 +59,25 @@ int __get_userbuf(uint8_t __user *addr, uint32_t len, int write, + } + + down_read(&mm->mmap_sem); +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)) +- ret = get_user_pages_remote( ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0)) ++ ret = get_user_pages(task, mm, ++ (unsigned long)addr, pgcount, write, 0, pg, NULL); + #else +- ret = get_user_pages( +-#endif +- task, mm, +- (unsigned long)addr, pgcount, +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)) +- write ? FOLL_WRITE : 0, +-#else +- write, 0, +-#endif ++# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)) ++ ret = get_user_pages_remote(task, mm, ++ (unsigned long)addr, pgcount, write, 0, pg, NULL); ++# else ++# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)) ++ ret = get_user_pages_remote(task, mm, ++ (unsigned long)addr, pgcount, write ? FOLL_WRITE : 0, + pg, NULL); ++# else ++ ret = get_user_pages_remote(task, mm, ++ (unsigned long)addr, pgcount, write ? FOLL_WRITE : 0, ++ pg, NULL, NULL); ++# endif ++# endif ++#endif + up_read(&mm->mmap_sem); + if (ret != pgcount) + return -EINVAL; -- cgit v1.2.3-54-g00ecf