diff options
author | Daniel Schultz <d.schultz@phytec.de> | 2017-01-26 14:44:56 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-01-31 14:43:02 +0000 |
commit | d053ce30718ab17e6eef843f7acef249f4f0f6a5 (patch) | |
tree | ae1e6b813b96968c15a8c7fd6a4ca4465d3d0efc | |
parent | 710a6e6bdc1655fab3a6756a46dcba86f5164418 (diff) | |
download | poky-d053ce30718ab17e6eef843f7acef249f4f0f6a5.tar.gz |
cryptodev: Fix changed mm interface in Kernel 4.9
The memory management interface has changed in Kernel 4.9.
This patch adds a patch which fixes the paramter of the function call.
Backport from https://github.com/cryptodev-linux/cryptodev-linux
Based on commit f126e4837e6334d0464540995df7426fedf6b175
(From OE-Core rev: 29e3e2999ae0fd92fd41c2180359e110301a488c)
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-kernel/cryptodev/cryptodev.inc | 3 | ||||
-rw-r--r-- | meta/recipes-kernel/cryptodev/files/0001-Adjust-to-another-change-in-the-user-page-API.patch | 40 |
2 files changed, 42 insertions, 1 deletions
diff --git a/meta/recipes-kernel/cryptodev/cryptodev.inc b/meta/recipes-kernel/cryptodev/cryptodev.inc index 160ab30840..62412383fb 100644 --- a/meta/recipes-kernel/cryptodev/cryptodev.inc +++ b/meta/recipes-kernel/cryptodev/cryptodev.inc | |||
@@ -5,7 +5,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | |||
5 | 5 | ||
6 | SRC_URI = "http://download.gna.org/cryptodev-linux/cryptodev-linux-${PV}.tar.gz \ | 6 | SRC_URI = "http://download.gna.org/cryptodev-linux/cryptodev-linux-${PV}.tar.gz \ |
7 | file://06d6b560c6e45dc317dae47c74706fa43f4a31d8.patch \ | 7 | file://06d6b560c6e45dc317dae47c74706fa43f4a31d8.patch \ |
8 | file://cb186f682679383e8b5806240927903730ce85d9.patch" | 8 | file://cb186f682679383e8b5806240927903730ce85d9.patch \ |
9 | file://0001-Adjust-to-another-change-in-the-user-page-API.patch" | ||
9 | 10 | ||
10 | SRC_URI[md5sum] = "02644cc4cd02301e0b503a332eb2f0b5" | 11 | SRC_URI[md5sum] = "02644cc4cd02301e0b503a332eb2f0b5" |
11 | SRC_URI[sha256sum] = "67fabde9fb67b286a96c4f45b594b0eccd0f761b495705c18f2ae9461b831376" | 12 | SRC_URI[sha256sum] = "67fabde9fb67b286a96c4f45b594b0eccd0f761b495705c18f2ae9461b831376" |
diff --git a/meta/recipes-kernel/cryptodev/files/0001-Adjust-to-another-change-in-the-user-page-API.patch b/meta/recipes-kernel/cryptodev/files/0001-Adjust-to-another-change-in-the-user-page-API.patch new file mode 100644 index 0000000000..fb75278b5e --- /dev/null +++ b/meta/recipes-kernel/cryptodev/files/0001-Adjust-to-another-change-in-the-user-page-API.patch | |||
@@ -0,0 +1,40 @@ | |||
1 | From f126e4837e6334d0464540995df7426fedf6b175 Mon Sep 17 00:00:00 2001 | ||
2 | From: Michael Weiser <michael.weiser@gmx.de> | ||
3 | Date: Fri, 11 Nov 2016 18:09:32 +0100 | ||
4 | Subject: [PATCH] Adjust to another change in the user page API | ||
5 | |||
6 | 4.9.0 will replace the write and force flags of get_user_pages_remote() | ||
7 | with a gup_flags parameter[1]. Distinguish the two APIs based on kernel | ||
8 | version we're compiling for. | ||
9 | |||
10 | [1] https://github.com/torvalds/linux/commit/9beae1ea89305a9667ceaab6d0bf46a045ad71e7 | ||
11 | |||
12 | Upstream-Status: Backport | ||
13 | |||
14 | Signed-off-by: Daniel Schultz <d.schultz@phytec.de> | ||
15 | --- | ||
16 | zc.c | 8 +++++++- | ||
17 | 1 file changed, 7 insertions(+), 1 deletion(-) | ||
18 | |||
19 | diff --git a/zc.c b/zc.c | ||
20 | index a97b49f..e766ee3 100644 | ||
21 | --- a/zc.c | ||
22 | +++ b/zc.c | ||
23 | @@ -65,7 +65,13 @@ int __get_userbuf(uint8_t __user *addr, uint32_t len, int write, | ||
24 | ret = get_user_pages( | ||
25 | #endif | ||
26 | task, mm, | ||
27 | - (unsigned long)addr, pgcount, write, 0, pg, NULL); | ||
28 | + (unsigned long)addr, pgcount, | ||
29 | +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)) | ||
30 | + write ? FOLL_WRITE : 0, | ||
31 | +#else | ||
32 | + write, 0, | ||
33 | +#endif | ||
34 | + pg, NULL); | ||
35 | up_read(&mm->mmap_sem); | ||
36 | if (ret != pgcount) | ||
37 | return -EINVAL; | ||
38 | -- | ||
39 | 1.9.1 | ||
40 | |||