From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760484AbcINH0B (ORCPT ); Wed, 14 Sep 2016 03:26:01 -0400 Received: from smtp-sh2.infomaniak.ch ([128.65.195.6]:57667 "EHLO smtp-sh2.infomaniak.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759039AbcINHZr (ORCPT ); Wed, 14 Sep 2016 03:25:47 -0400 From: =?UTF-8?q?Micka=C3=ABl=20Sala=C3=BCn?= To: linux-kernel@vger.kernel.org Cc: =?UTF-8?q?Micka=C3=ABl=20Sala=C3=BCn?= , Alexei Starovoitov , Andy Lutomirski , Arnd Bergmann , Casey Schaufler , Daniel Borkmann , Daniel Mack , David Drysdale , "David S . Miller" , Elena Reshetova , "Eric W . Biederman" , James Morris , Kees Cook , Paul Moore , Sargun Dhillon , "Serge E . Hallyn" , Tejun Heo , Will Drewry , kernel-hardening@lists.openwall.com, linux-api@vger.kernel.org, linux-security-module@vger.kernel.org, netdev@vger.kernel.org, cgroups@vger.kernel.org Subject: [RFC v3 02/22] bpf: Move u64_to_ptr() to BPF headers and inline it Date: Wed, 14 Sep 2016 09:23:55 +0200 Message-Id: <20160914072415.26021-3-mic@digikod.net> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20160914072415.26021-1-mic@digikod.net> References: <20160914072415.26021-1-mic@digikod.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Antivirus: Dr.Web (R) for Unix mail servers drweb plugin ver.6.0.2.8 X-Antivirus-Code: 0x100000 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This helper will be useful for arraymap (next commit). Signed-off-by: Mickaël Salaün Cc: Alexei Starovoitov Cc: David S. Miller Cc: Daniel Borkmann --- include/linux/bpf.h | 6 ++++++ kernel/bpf/syscall.c | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/linux/bpf.h b/include/linux/bpf.h index 9a904f63f8c1..fa9a988400d9 100644 --- a/include/linux/bpf.h +++ b/include/linux/bpf.h @@ -274,6 +274,12 @@ static inline void bpf_long_memcpy(void *dst, const void *src, u32 size) /* verify correctness of eBPF program */ int bpf_check(struct bpf_prog **fp, union bpf_attr *attr); + +/* helper to convert user pointers passed inside __aligned_u64 fields */ +static inline void __user *u64_to_ptr(__u64 val) +{ + return (void __user *) (unsigned long) val; +} #else static inline void bpf_register_prog_type(struct bpf_prog_type_list *tl) { diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c index 1a8592a082ce..776c752604b0 100644 --- a/kernel/bpf/syscall.c +++ b/kernel/bpf/syscall.c @@ -252,12 +252,6 @@ struct bpf_map *bpf_map_get_with_uref(u32 ufd) return map; } -/* helper to convert user pointers passed inside __aligned_u64 fields */ -static void __user *u64_to_ptr(__u64 val) -{ - return (void __user *) (unsigned long) val; -} - int __weak bpf_stackmap_copy(struct bpf_map *map, void *key, void *value) { return -ENOTSUPP; -- 2.9.3 From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Micka=C3=ABl=20Sala=C3=BCn?= Subject: [RFC v3 02/22] bpf: Move u64_to_ptr() to BPF headers and inline it Date: Wed, 14 Sep 2016 09:23:55 +0200 Message-ID: <20160914072415.26021-3-mic@digikod.net> References: <20160914072415.26021-1-mic@digikod.net> Reply-To: kernel-hardening@lists.openwall.com Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: =?UTF-8?q?Micka=C3=ABl=20Sala=C3=BCn?= , Alexei Starovoitov , Andy Lutomirski , Arnd Bergmann , Casey Schaufler , Daniel Borkmann , Daniel Mack , David Drysdale , "David S . Miller" , Elena Reshetova , "Eric W . Biederman" , James Morris , Kees Cook , Paul Moore , Sargun Dhillon , "Serge E . Hallyn" , Tejun Heo , Will Drewry , kernel-hardening@lists.openwall.com, linux-api@vger.kernel.org, linux-security-module@vger. To: linux-kernel@vger.kernel.org Return-path: List-Post: List-Help: List-Unsubscribe: List-Subscribe: In-Reply-To: <20160914072415.26021-1-mic@digikod.net> List-Id: netdev.vger.kernel.org This helper will be useful for arraymap (next commit). Signed-off-by: Mickaël Salaün Cc: Alexei Starovoitov Cc: David S. Miller Cc: Daniel Borkmann --- include/linux/bpf.h | 6 ++++++ kernel/bpf/syscall.c | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/linux/bpf.h b/include/linux/bpf.h index 9a904f63f8c1..fa9a988400d9 100644 --- a/include/linux/bpf.h +++ b/include/linux/bpf.h @@ -274,6 +274,12 @@ static inline void bpf_long_memcpy(void *dst, const void *src, u32 size) /* verify correctness of eBPF program */ int bpf_check(struct bpf_prog **fp, union bpf_attr *attr); + +/* helper to convert user pointers passed inside __aligned_u64 fields */ +static inline void __user *u64_to_ptr(__u64 val) +{ + return (void __user *) (unsigned long) val; +} #else static inline void bpf_register_prog_type(struct bpf_prog_type_list *tl) { diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c index 1a8592a082ce..776c752604b0 100644 --- a/kernel/bpf/syscall.c +++ b/kernel/bpf/syscall.c @@ -252,12 +252,6 @@ struct bpf_map *bpf_map_get_with_uref(u32 ufd) return map; } -/* helper to convert user pointers passed inside __aligned_u64 fields */ -static void __user *u64_to_ptr(__u64 val) -{ - return (void __user *) (unsigned long) val; -} - int __weak bpf_stackmap_copy(struct bpf_map *map, void *key, void *value) { return -ENOTSUPP; -- 2.9.3 From mboxrd@z Thu Jan 1 00:00:00 1970 Reply-To: kernel-hardening@lists.openwall.com From: =?UTF-8?q?Micka=C3=ABl=20Sala=C3=BCn?= Date: Wed, 14 Sep 2016 09:23:55 +0200 Message-Id: <20160914072415.26021-3-mic@digikod.net> In-Reply-To: <20160914072415.26021-1-mic@digikod.net> References: <20160914072415.26021-1-mic@digikod.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [kernel-hardening] [RFC v3 02/22] bpf: Move u64_to_ptr() to BPF headers and inline it To: linux-kernel@vger.kernel.org Cc: =?UTF-8?q?Micka=C3=ABl=20Sala=C3=BCn?= , Alexei Starovoitov , Andy Lutomirski , Arnd Bergmann , Casey Schaufler , Daniel Borkmann , Daniel Mack , David Drysdale , "David S . Miller" , Elena Reshetova , "Eric W . Biederman" , James Morris , Kees Cook , Paul Moore , Sargun Dhillon , "Serge E . Hallyn" , Tejun Heo , Will Drewry , kernel-hardening@lists.openwall.com, linux-api@vger.kernel.org, linux-security-module@vger.kernel.org, netdev@vger.kernel.org, cgroups@vger.kernel.org List-ID: This helper will be useful for arraymap (next commit). Signed-off-by: Mickaël Salaün Cc: Alexei Starovoitov Cc: David S. Miller Cc: Daniel Borkmann --- include/linux/bpf.h | 6 ++++++ kernel/bpf/syscall.c | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/linux/bpf.h b/include/linux/bpf.h index 9a904f63f8c1..fa9a988400d9 100644 --- a/include/linux/bpf.h +++ b/include/linux/bpf.h @@ -274,6 +274,12 @@ static inline void bpf_long_memcpy(void *dst, const void *src, u32 size) /* verify correctness of eBPF program */ int bpf_check(struct bpf_prog **fp, union bpf_attr *attr); + +/* helper to convert user pointers passed inside __aligned_u64 fields */ +static inline void __user *u64_to_ptr(__u64 val) +{ + return (void __user *) (unsigned long) val; +} #else static inline void bpf_register_prog_type(struct bpf_prog_type_list *tl) { diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c index 1a8592a082ce..776c752604b0 100644 --- a/kernel/bpf/syscall.c +++ b/kernel/bpf/syscall.c @@ -252,12 +252,6 @@ struct bpf_map *bpf_map_get_with_uref(u32 ufd) return map; } -/* helper to convert user pointers passed inside __aligned_u64 fields */ -static void __user *u64_to_ptr(__u64 val) -{ - return (void __user *) (unsigned long) val; -} - int __weak bpf_stackmap_copy(struct bpf_map *map, void *key, void *value) { return -ENOTSUPP; -- 2.9.3