diff for duplicates of <20160514124950.GA27841@yury-N73SV> diff --git a/a/1.txt b/N1/1.txt index 5642c63..49f85e4 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -30,80 +30,3 @@ Bamvor version. Jan's patch (rebased) is attached for reference. Yury. - - -From 02ad258662c40d457ac041634e67e1cbdbb800f3 Mon Sep 17 00:00:00 2001 -From: Jan Dakinevich <jan.dakinevich@gmail.com> -Date: Tue, 3 Nov 2015 02:30:41 +0300 -Subject: ilp32: common 32-bit wrappers - -Signed-off-by: Jan Dakinevich <jan.dakinevich@gmail.com> -Signed-off-by: Yury Norov <ynorov@caviumnetworks.com> - -diff --git a/arch/arm64/kernel/Makefile b/arch/arm64/kernel/Makefile -index 9dfdf86..2319042 100644 ---- a/arch/arm64/kernel/Makefile -+++ b/arch/arm64/kernel/Makefile -@@ -30,6 +30,7 @@ arm64-obj-$(CONFIG_AARCH32_EL0) += sys32.o kuser32.o signal32.o \ - ../../arm/kernel/opcodes.o binfmt_elf32.o - arm64-obj-$(CONFIG_ARM64_ILP32) += binfmt_ilp32.o - arm64-obj-$(CONFIG_FUNCTION_TRACER) += ftrace.o entry-ftrace.o -+arm64-obj-$(CONFIG_COMPAT) += entry32-common.o - arm64-obj-$(CONFIG_MODULES) += arm64ksyms.o module.o - arm64-obj-$(CONFIG_ARM64_MODULE_PLTS) += module-plts.o - arm64-obj-$(CONFIG_PERF_EVENTS) += perf_regs.o perf_callchain.o -diff --git a/arch/arm64/kernel/entry32-common.S b/arch/arm64/kernel/entry32-common.S -new file mode 100644 -index 0000000..1a0abe3 ---- /dev/null -+++ b/arch/arm64/kernel/entry32-common.S -@@ -0,0 +1,23 @@ -+#include <linux/linkage.h> -+#include <linux/const.h> -+ -+#include <asm/assembler.h> -+#include <asm/asm-offsets.h> -+#include <asm/errno.h> -+#include <asm/page.h> -+ -+/* -+ * Note: off_4k (w5) is always in units of 4K. If we can't do the -+ * requested offset because it is not page-aligned, we return -EINVAL. -+ */ -+ENTRY(compat_sys_mmap2_wrapper) -+#if PAGE_SHIFT > 12 -+ tst w5, #~PAGE_MASK >> 12 -+ b.ne 1f -+ lsr w5, w5, #PAGE_SHIFT - 12 -+#endif -+ b sys_mmap_pgoff -+1: mov x0, #-EINVAL -+ ret -+ENDPROC(compat_sys_mmap2_wrapper) -+ -diff --git a/arch/arm64/kernel/entry32.S b/arch/arm64/kernel/entry32.S -index f332d5d..58cb5b0 100644 ---- a/arch/arm64/kernel/entry32.S -+++ b/arch/arm64/kernel/entry32.S -@@ -55,21 +55,6 @@ ENTRY(compat_sys_fstatfs64_wrapper) - ENDPROC(compat_sys_fstatfs64_wrapper) - - /* -- * Note: off_4k (w5) is always in units of 4K. If we can't do the -- * requested offset because it is not page-aligned, we return -EINVAL. -- */ --ENTRY(compat_sys_mmap2_wrapper) --#if PAGE_SHIFT > 12 -- tst w5, #~PAGE_MASK >> 12 -- b.ne 1f -- lsr w5, w5, #PAGE_SHIFT - 12 --#endif -- b sys_mmap_pgoff --1: mov x0, #-EINVAL -- ret --ENDPROC(compat_sys_mmap2_wrapper) -- --/* - * Wrappers for AArch32 syscalls that either take 64-bit parameters - * in registers or that take 32-bit parameters which require sign - * extension. diff --git a/a/content_digest b/N1/content_digest index 464746d..edbb2d7 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -63,83 +63,6 @@ "\n" "Jan's patch (rebased) is attached for reference.\n" "\n" - "Yury.\n" - "\n" - "\n" - "From 02ad258662c40d457ac041634e67e1cbdbb800f3 Mon Sep 17 00:00:00 2001\n" - "From: Jan Dakinevich <jan.dakinevich@gmail.com>\n" - "Date: Tue, 3 Nov 2015 02:30:41 +0300\n" - "Subject: ilp32: common 32-bit wrappers\n" - "\n" - "Signed-off-by: Jan Dakinevich <jan.dakinevich@gmail.com>\n" - "Signed-off-by: Yury Norov <ynorov@caviumnetworks.com>\n" - "\n" - "diff --git a/arch/arm64/kernel/Makefile b/arch/arm64/kernel/Makefile\n" - "index 9dfdf86..2319042 100644\n" - "--- a/arch/arm64/kernel/Makefile\n" - "+++ b/arch/arm64/kernel/Makefile\n" - "@@ -30,6 +30,7 @@ arm64-obj-$(CONFIG_AARCH32_EL0)\t\t+= sys32.o kuser32.o signal32.o \t\\\n" - " \t\t\t\t\t ../../arm/kernel/opcodes.o binfmt_elf32.o\n" - " arm64-obj-$(CONFIG_ARM64_ILP32)\t\t+= binfmt_ilp32.o\n" - " arm64-obj-$(CONFIG_FUNCTION_TRACER)\t+= ftrace.o entry-ftrace.o\n" - "+arm64-obj-$(CONFIG_COMPAT)\t\t+= entry32-common.o\n" - " arm64-obj-$(CONFIG_MODULES)\t\t+= arm64ksyms.o module.o\n" - " arm64-obj-$(CONFIG_ARM64_MODULE_PLTS)\t+= module-plts.o\n" - " arm64-obj-$(CONFIG_PERF_EVENTS)\t\t+= perf_regs.o perf_callchain.o\n" - "diff --git a/arch/arm64/kernel/entry32-common.S b/arch/arm64/kernel/entry32-common.S\n" - "new file mode 100644\n" - "index 0000000..1a0abe3\n" - "--- /dev/null\n" - "+++ b/arch/arm64/kernel/entry32-common.S\n" - "@@ -0,0 +1,23 @@\n" - "+#include <linux/linkage.h>\n" - "+#include <linux/const.h>\n" - "+\n" - "+#include <asm/assembler.h>\n" - "+#include <asm/asm-offsets.h>\n" - "+#include <asm/errno.h>\n" - "+#include <asm/page.h>\n" - "+\n" - "+/*\n" - "+ * Note: off_4k (w5) is always in units of 4K. If we can't do the\n" - "+ * requested offset because it is not page-aligned, we return -EINVAL.\n" - "+ */\n" - "+ENTRY(compat_sys_mmap2_wrapper)\n" - "+#if PAGE_SHIFT > 12\n" - "+\ttst\tw5, #~PAGE_MASK >> 12\n" - "+\tb.ne\t1f\n" - "+\tlsr\tw5, w5, #PAGE_SHIFT - 12\n" - "+#endif\n" - "+\tb\tsys_mmap_pgoff\n" - "+1:\tmov\tx0, #-EINVAL\n" - "+\tret\n" - "+ENDPROC(compat_sys_mmap2_wrapper)\n" - "+\n" - "diff --git a/arch/arm64/kernel/entry32.S b/arch/arm64/kernel/entry32.S\n" - "index f332d5d..58cb5b0 100644\n" - "--- a/arch/arm64/kernel/entry32.S\n" - "+++ b/arch/arm64/kernel/entry32.S\n" - "@@ -55,21 +55,6 @@ ENTRY(compat_sys_fstatfs64_wrapper)\n" - " ENDPROC(compat_sys_fstatfs64_wrapper)\n" - " \n" - " /*\n" - "- * Note: off_4k (w5) is always in units of 4K. If we can't do the\n" - "- * requested offset because it is not page-aligned, we return -EINVAL.\n" - "- */\n" - "-ENTRY(compat_sys_mmap2_wrapper)\n" - "-#if PAGE_SHIFT > 12\n" - "-\ttst\tw5, #~PAGE_MASK >> 12\n" - "-\tb.ne\t1f\n" - "-\tlsr\tw5, w5, #PAGE_SHIFT - 12\n" - "-#endif\n" - "-\tb\tsys_mmap_pgoff\n" - "-1:\tmov\tx0, #-EINVAL\n" - "-\tret\n" - "-ENDPROC(compat_sys_mmap2_wrapper)\n" - "-\n" - "-/*\n" - " * Wrappers for AArch32 syscalls that either take 64-bit parameters\n" - " * in registers or that take 32-bit parameters which require sign\n" - * extension. + Yury. -2ee2178af817231da5b6d649601c295516f5c856adb92d1b0da5f70102b66ae8 +c10e07d6966353b6ed994882df274f94f4205706e6800848974e04c79a41cba0
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox