[PATCH v2 09/13] nds32: define syscall_get_arch()
by Dmitry V. Levin
syscall_get_arch() is required to be implemented on all architectures
in addition to already implemented syscall_get_nr(),
syscall_get_arguments(), syscall_get_error(), and
syscall_get_return_value() functions in order to extend the generic
ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Paul Moore <paul(a)paul-moore.com>
Acked-by: Vincent Chen <vincentc(a)andestech.com>
Acked-by: Greentime Hu <greentime(a)andestech.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: added Acked-by
arch/nds32/include/asm/syscall.h | 9 +++++++++
include/uapi/linux/audit.h | 2 ++
2 files changed, 11 insertions(+)
diff --git a/arch/nds32/include/asm/syscall.h b/arch/nds32/include/asm/syscall.h
index f7e5e86765fe..cc56a3962f8b 100644
--- a/arch/nds32/include/asm/syscall.h
+++ b/arch/nds32/include/asm/syscall.h
@@ -5,6 +5,7 @@
#ifndef _ASM_NDS32_SYSCALL_H
#define _ASM_NDS32_SYSCALL_H 1
+#include <uapi/linux/audit.h>
#include <linux/err.h>
struct task_struct;
struct pt_regs;
@@ -185,4 +186,12 @@ void syscall_set_arguments(struct task_struct *task, struct pt_regs *regs,
memcpy(®s->uregs[0] + i, args, n * sizeof(args[0]));
}
+
+static inline int
+syscall_get_arch(void)
+{
+ return IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)
+ ? AUDIT_ARCH_NDS32BE : AUDIT_ARCH_NDS32;
+}
+
#endif /* _ASM_NDS32_SYSCALL_H */
diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h
index fc94e74c8b77..fb0529da4d49 100644
--- a/include/uapi/linux/audit.h
+++ b/include/uapi/linux/audit.h
@@ -401,6 +401,8 @@ enum {
#define AUDIT_ARCH_MIPSEL64 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_MIPSEL64N32 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE|\
__AUDIT_ARCH_CONVENTION_MIPS64_N32)
+#define AUDIT_ARCH_NDS32 (EM_NDS32|__AUDIT_ARCH_LE)
+#define AUDIT_ARCH_NDS32BE (EM_NDS32)
#define AUDIT_ARCH_OPENRISC (EM_OPENRISC)
#define AUDIT_ARCH_PARISC (EM_PARISC)
#define AUDIT_ARCH_PARISC64 (EM_PARISC|__AUDIT_ARCH_64BIT)
--
ldv
5 years, 7 months
[PATCH v2 08/13] Move EM_NDS32 to uapi/linux/elf-em.h
by Dmitry V. Levin
This should never have been defined in the arch tree to begin with,
and now uapi/linux/audit.h header is going to use EM_NDS32
in order to define AUDIT_ARCH_NDS32 which is needed to implement
syscall_get_arch() which in turn is required to extend
the generic ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Paul Moore <paul(a)paul-moore.com>
Acked-by: Vincent Chen <vincentc(a)andestech.com>
Acked-by: Greentime Hu <greentime(a)andestech.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: added Acked-by
arch/nds32/include/asm/elf.h | 3 +--
include/uapi/linux/elf-em.h | 2 ++
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/nds32/include/asm/elf.h b/arch/nds32/include/asm/elf.h
index 95f3ea253e4c..02250626b9f0 100644
--- a/arch/nds32/include/asm/elf.h
+++ b/arch/nds32/include/asm/elf.h
@@ -10,14 +10,13 @@
#include <asm/ptrace.h>
#include <asm/fpu.h>
+#include <linux/elf-em.h>
typedef unsigned long elf_greg_t;
typedef unsigned long elf_freg_t[3];
extern unsigned int elf_hwcap;
-#define EM_NDS32 167
-
#define R_NDS32_NONE 0
#define R_NDS32_16_RELA 19
#define R_NDS32_32_RELA 20
diff --git a/include/uapi/linux/elf-em.h b/include/uapi/linux/elf-em.h
index bd02325028d8..4b8df722330e 100644
--- a/include/uapi/linux/elf-em.h
+++ b/include/uapi/linux/elf-em.h
@@ -40,6 +40,8 @@
#define EM_ALTERA_NIOS2 113 /* Altera Nios II soft-core processor */
#define EM_TI_C6000 140 /* TI C6X DSPs */
#define EM_HEXAGON 164 /* QUALCOMM Hexagon */
+#define EM_NDS32 167 /* Andes Technology compact code size
+ embedded RISC processor family */
#define EM_AARCH64 183 /* ARM 64 bit */
#define EM_TILEPRO 188 /* Tilera TILEPro */
#define EM_MICROBLAZE 189 /* Xilinx MicroBlaze */
--
ldv
5 years, 7 months
[PATCH v2 07/13] m68k: define syscall_get_arch()
by Dmitry V. Levin
syscall_get_arch() is required to be implemented on all architectures
in addition to already implemented syscall_get_nr(),
syscall_get_arguments(), syscall_get_error(), and
syscall_get_return_value() functions in order to extend the generic
ptrace API with PTRACE_GET_SYSCALL_INFO request.
Reviewed-by: Geert Uytterhoeven <geert(a)linux-m68k.org>
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-m68k(a)lists.linux-m68k.org
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/m68k/include/asm/syscall.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
create mode 100644 arch/m68k/include/asm/syscall.h
diff --git a/arch/m68k/include/asm/syscall.h b/arch/m68k/include/asm/syscall.h
new file mode 100644
index 000000000000..d4d7deda8d50
--- /dev/null
+++ b/arch/m68k/include/asm/syscall.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _ASM_M68K_SYSCALL_H
+#define _ASM_M68K_SYSCALL_H
+
+#include <uapi/linux/audit.h>
+
+static inline int syscall_get_arch(void)
+{
+ return AUDIT_ARCH_M68K;
+}
+
+#endif /* _ASM_M68K_SYSCALL_H */
--
ldv
5 years, 7 months
[PATCH v2 06/13] hexagon: define syscall_get_arch()
by Dmitry V. Levin
syscall_get_arch() is required to be implemented on all architectures
in addition to already implemented syscall_get_nr(),
syscall_get_arguments(), syscall_get_error(), and
syscall_get_return_value() functions in order to extend the generic
ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Richard Kuo <rkuo(a)codeaurora.org>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-hexagon(a)vger.kernel.org
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/hexagon/include/asm/syscall.h | 8 ++++++++
include/uapi/linux/audit.h | 1 +
2 files changed, 9 insertions(+)
diff --git a/arch/hexagon/include/asm/syscall.h b/arch/hexagon/include/asm/syscall.h
index 4af9c7b6f13a..de3917aad3fd 100644
--- a/arch/hexagon/include/asm/syscall.h
+++ b/arch/hexagon/include/asm/syscall.h
@@ -21,6 +21,8 @@
#ifndef _ASM_HEXAGON_SYSCALL_H
#define _ASM_HEXAGON_SYSCALL_H
+#include <uapi/linux/audit.h>
+
typedef long (*syscall_fn)(unsigned long, unsigned long,
unsigned long, unsigned long,
unsigned long, unsigned long);
@@ -43,4 +45,10 @@ static inline void syscall_get_arguments(struct task_struct *task,
BUG_ON(i + n > 6);
memcpy(args, &(®s->r00)[i], n * sizeof(args[0]));
}
+
+static inline int syscall_get_arch(void)
+{
+ return AUDIT_ARCH_HEXAGON;
+}
+
#endif
diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h
index 09994181b2d5..fc94e74c8b77 100644
--- a/include/uapi/linux/audit.h
+++ b/include/uapi/linux/audit.h
@@ -387,6 +387,7 @@ enum {
#define AUDIT_ARCH_CSKY (EM_CSKY|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_FRV (EM_FRV)
#define AUDIT_ARCH_H8300 (EM_H8_300)
+#define AUDIT_ARCH_HEXAGON (EM_HEXAGON)
#define AUDIT_ARCH_I386 (EM_386|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_IA64 (EM_IA_64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_M32R (EM_M32R)
--
ldv
5 years, 7 months
[PATCH v2 05/13] Move EM_HEXAGON to uapi/linux/elf-em.h
by Dmitry V. Levin
This should never have been defined in the arch tree to begin with,
and now uapi/linux/audit.h header is going to use EM_HEXAGON
in order to define AUDIT_ARCH_HEXAGON which is needed to implement
syscall_get_arch() which in turn is required to extend
the generic ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: Richard Kuo <rkuo(a)codeaurora.org>
Cc: linux-hexagon(a)vger.kernel.org
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/hexagon/include/asm/elf.h | 6 +-----
include/uapi/linux/elf-em.h | 1 +
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/arch/hexagon/include/asm/elf.h b/arch/hexagon/include/asm/elf.h
index 80311e7b8ca6..d10fbd54ae51 100644
--- a/arch/hexagon/include/asm/elf.h
+++ b/arch/hexagon/include/asm/elf.h
@@ -23,11 +23,7 @@
#include <asm/ptrace.h>
#include <asm/user.h>
-
-/*
- * This should really be in linux/elf-em.h.
- */
-#define EM_HEXAGON 164 /* QUALCOMM Hexagon */
+#include <linux/elf-em.h>
struct elf32_hdr;
diff --git a/include/uapi/linux/elf-em.h b/include/uapi/linux/elf-em.h
index 081675ed89cb..bd02325028d8 100644
--- a/include/uapi/linux/elf-em.h
+++ b/include/uapi/linux/elf-em.h
@@ -39,6 +39,7 @@
#define EM_BLACKFIN 106 /* ADI Blackfin Processor */
#define EM_ALTERA_NIOS2 113 /* Altera Nios II soft-core processor */
#define EM_TI_C6000 140 /* TI C6X DSPs */
+#define EM_HEXAGON 164 /* QUALCOMM Hexagon */
#define EM_AARCH64 183 /* ARM 64 bit */
#define EM_TILEPRO 188 /* Tilera TILEPro */
#define EM_MICROBLAZE 189 /* Xilinx MicroBlaze */
--
ldv
5 years, 7 months
[PATCH v2 04/13] h8300: define syscall_get_arch()
by Dmitry V. Levin
syscall_get_arch() is required to be implemented on all architectures
in addition to already implemented syscall_get_nr(),
syscall_get_arguments(), syscall_get_error(), and
syscall_get_return_value() functions in order to extend the generic
ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Yoshinori Sato <ysato(a)users.sourceforge.jp>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: uclinux-h8-devel(a)lists.sourceforge.jp
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/h8300/include/asm/syscall.h | 6 ++++++
include/uapi/linux/audit.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/arch/h8300/include/asm/syscall.h b/arch/h8300/include/asm/syscall.h
index 924990401237..5135910616e2 100644
--- a/arch/h8300/include/asm/syscall.h
+++ b/arch/h8300/include/asm/syscall.h
@@ -8,6 +8,7 @@
#include <linux/linkage.h>
#include <linux/types.h>
#include <linux/ptrace.h>
+#include <uapi/linux/audit.h>
static inline int
syscall_get_nr(struct task_struct *task, struct pt_regs *regs)
@@ -47,6 +48,11 @@ syscall_get_arguments(struct task_struct *task, struct pt_regs *regs,
}
}
+static inline int
+syscall_get_arch(void)
+{
+ return AUDIT_ARCH_H8300;
+}
/* Misc syscall related bits */
diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h
index 35ccf269ca3d..09994181b2d5 100644
--- a/include/uapi/linux/audit.h
+++ b/include/uapi/linux/audit.h
@@ -386,6 +386,7 @@ enum {
#define AUDIT_ARCH_CRIS (EM_CRIS|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_CSKY (EM_CSKY|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_FRV (EM_FRV)
+#define AUDIT_ARCH_H8300 (EM_H8_300)
#define AUDIT_ARCH_I386 (EM_386|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_IA64 (EM_IA_64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_M32R (EM_M32R)
--
ldv
5 years, 7 months
[PATCH v2 03/13] c6x: define syscall_get_arch()
by Dmitry V. Levin
syscall_get_arch() is required to be implemented on all architectures
in addition to already implemented syscall_get_nr(),
syscall_get_arguments(), syscall_get_error(), and
syscall_get_return_value() functions in order to extend the generic
ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Mark Salter <msalter(a)redhat.com>
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Aurelien Jacquiot <jacquiot.aurelien(a)gmail.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-c6x-dev(a)linux-c6x.org
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/c6x/include/asm/syscall.h | 7 +++++++
include/uapi/linux/audit.h | 2 ++
2 files changed, 9 insertions(+)
diff --git a/arch/c6x/include/asm/syscall.h b/arch/c6x/include/asm/syscall.h
index ae2be315ee9c..39dbd1ef994c 100644
--- a/arch/c6x/include/asm/syscall.h
+++ b/arch/c6x/include/asm/syscall.h
@@ -11,6 +11,7 @@
#ifndef __ASM_C6X_SYSCALL_H
#define __ASM_C6X_SYSCALL_H
+#include <uapi/linux/audit.h>
#include <linux/err.h>
#include <linux/sched.h>
@@ -120,4 +121,10 @@ static inline void syscall_set_arguments(struct task_struct *task,
}
}
+static inline int syscall_get_arch(void)
+{
+ return IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)
+ ? AUDIT_ARCH_C6XBE : AUDIT_ARCH_C6X;
+}
+
#endif /* __ASM_C6X_SYSCALLS_H */
diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h
index 1626727bb921..35ccf269ca3d 100644
--- a/include/uapi/linux/audit.h
+++ b/include/uapi/linux/audit.h
@@ -381,6 +381,8 @@ enum {
#define AUDIT_ARCH_ARCV2BE (EM_ARCV2)
#define AUDIT_ARCH_ARM (EM_ARM|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_ARMEB (EM_ARM)
+#define AUDIT_ARCH_C6X (EM_TI_C6000|__AUDIT_ARCH_LE)
+#define AUDIT_ARCH_C6XBE (EM_TI_C6000)
#define AUDIT_ARCH_CRIS (EM_CRIS|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_CSKY (EM_CSKY|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_FRV (EM_FRV)
--
ldv
5 years, 7 months
[PATCH v2 02/13] arc: define syscall_get_arch()
by Dmitry V. Levin
syscall_get_arch() is required to be implemented on all architectures
in addition to already implemented syscall_get_nr(),
syscall_get_arguments(), syscall_get_error(), and
syscall_get_return_value() functions in order to extend the generic
ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Vineet Gupta <vgupta(a)synopsys.com>
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Alexey Brodkin <alexey.brodkin(a)synopsys.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-snps-arc(a)lists.infradead.org
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/arc/include/asm/syscall.h | 11 +++++++++++
include/uapi/linux/audit.h | 4 ++++
2 files changed, 15 insertions(+)
diff --git a/arch/arc/include/asm/syscall.h b/arch/arc/include/asm/syscall.h
index 29de09804306..c7fc4c0c3bcb 100644
--- a/arch/arc/include/asm/syscall.h
+++ b/arch/arc/include/asm/syscall.h
@@ -9,6 +9,7 @@
#ifndef _ASM_ARC_SYSCALL_H
#define _ASM_ARC_SYSCALL_H 1
+#include <uapi/linux/audit.h>
#include <linux/err.h>
#include <linux/sched.h>
#include <asm/unistd.h>
@@ -68,4 +69,14 @@ syscall_get_arguments(struct task_struct *task, struct pt_regs *regs,
}
}
+static inline int
+syscall_get_arch(void)
+{
+ return IS_ENABLED(CONFIG_ISA_ARCOMPACT)
+ ? (IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)
+ ? AUDIT_ARCH_ARCOMPACTBE : AUDIT_ARCH_ARCOMPACT)
+ : (IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)
+ ? AUDIT_ARCH_ARCV2BE : AUDIT_ARCH_ARCV2);
+}
+
#endif
diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h
index f28acd952d03..1626727bb921 100644
--- a/include/uapi/linux/audit.h
+++ b/include/uapi/linux/audit.h
@@ -375,6 +375,10 @@ enum {
#define AUDIT_ARCH_AARCH64 (EM_AARCH64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_ALPHA (EM_ALPHA|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
+#define AUDIT_ARCH_ARCOMPACT (EM_ARCOMPACT|__AUDIT_ARCH_LE)
+#define AUDIT_ARCH_ARCOMPACTBE (EM_ARCOMPACT)
+#define AUDIT_ARCH_ARCV2 (EM_ARCV2|__AUDIT_ARCH_LE)
+#define AUDIT_ARCH_ARCV2BE (EM_ARCV2)
#define AUDIT_ARCH_ARM (EM_ARM|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_ARMEB (EM_ARM)
#define AUDIT_ARCH_CRIS (EM_CRIS|__AUDIT_ARCH_LE)
--
ldv
5 years, 7 months
[PATCH v2 01/13] Move EM_ARCOMPACT and EM_ARCV2 to uapi/linux/elf-em.h
by Dmitry V. Levin
These should never have been defined in the arch tree to begin with, and
now uapi/linux/audit.h header is going to use EM_ARCOMPACT and EM_ARCV2
in order to define AUDIT_ARCH_ARCOMPACT and AUDIT_ARCH_ARCV2 which are
needed to implement syscall_get_arch() which in turn is required to
extend the generic ptrace API with PTRACE_GET_SYSCALL_INFO request.
Acked-by: Vineet Gupta <vgupta(a)synopsys.com>
Acked-by: Paul Moore <paul(a)paul-moore.com>
Cc: Elvira Khabirova <lineprinter(a)altlinux.org>
Cc: Eugene Syromyatnikov <esyr(a)redhat.com>
Cc: Alexey Brodkin <alexey.brodkin(a)synopsys.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: linux-snps-arc(a)lists.infradead.org
Cc: linux-audit(a)redhat.com
Signed-off-by: Dmitry V. Levin <ldv(a)altlinux.org>
---
Notes:
v2: unchanged
arch/arc/include/asm/elf.h | 6 +-----
include/uapi/linux/elf-em.h | 2 ++
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/arch/arc/include/asm/elf.h b/arch/arc/include/asm/elf.h
index aa2d6da9d187..2b80c184c9c8 100644
--- a/arch/arc/include/asm/elf.h
+++ b/arch/arc/include/asm/elf.h
@@ -10,13 +10,9 @@
#define __ASM_ARC_ELF_H
#include <linux/types.h>
+#include <linux/elf-em.h>
#include <uapi/asm/elf.h>
-/* These ELF defines belong to uapi but libc elf.h already defines them */
-#define EM_ARCOMPACT 93
-
-#define EM_ARCV2 195 /* ARCv2 Cores */
-
#define EM_ARC_INUSE (IS_ENABLED(CONFIG_ISA_ARCOMPACT) ? \
EM_ARCOMPACT : EM_ARCV2)
diff --git a/include/uapi/linux/elf-em.h b/include/uapi/linux/elf-em.h
index 0c3000faedba..081675ed89cb 100644
--- a/include/uapi/linux/elf-em.h
+++ b/include/uapi/linux/elf-em.h
@@ -34,6 +34,7 @@
#define EM_M32R 88 /* Renesas M32R */
#define EM_MN10300 89 /* Panasonic/MEI MN10300, AM33 */
#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */
+#define EM_ARCOMPACT 93 /* ARCompact processor */
#define EM_XTENSA 94 /* Tensilica Xtensa Architecture */
#define EM_BLACKFIN 106 /* ADI Blackfin Processor */
#define EM_ALTERA_NIOS2 113 /* Altera Nios II soft-core processor */
@@ -42,6 +43,7 @@
#define EM_TILEPRO 188 /* Tilera TILEPro */
#define EM_MICROBLAZE 189 /* Xilinx MicroBlaze */
#define EM_TILEGX 191 /* Tilera TILE-Gx */
+#define EM_ARCV2 195 /* ARCv2 Cores */
#define EM_RISCV 243 /* RISC-V */
#define EM_BPF 247 /* Linux BPF - in-kernel virtual machine */
#define EM_CSKY 252 /* C-SKY */
--
ldv
5 years, 7 months
[PATCH -next] audit: Make audit_log_cap and audit_copy_inode static
by Yue Haibing
From: YueHaibing <yuehaibing(a)huawei.com>
Fix sparse warning:
kernel/auditsc.c:1150:6: warning: symbol 'audit_log_cap' was not declared. Should it be static?
kernel/auditsc.c:1908:6: warning: symbol 'audit_copy_inode' was not declared. Should it be static?
Signed-off-by: YueHaibing <yuehaibing(a)huawei.com>
---
kernel/auditsc.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/kernel/auditsc.c b/kernel/auditsc.c
index fa7b804..17b0007 100644
--- a/kernel/auditsc.c
+++ b/kernel/auditsc.c
@@ -1147,7 +1147,8 @@ static void audit_log_execve_info(struct audit_context *context,
kfree(buf_head);
}
-void audit_log_cap(struct audit_buffer *ab, char *prefix, kernel_cap_t *cap)
+static void audit_log_cap(struct audit_buffer *ab, char *prefix,
+ kernel_cap_t *cap)
{
int i;
@@ -1905,8 +1906,9 @@ static inline int audit_copy_fcaps(struct audit_names *name,
}
/* Copy inode data into an audit_names. */
-void audit_copy_inode(struct audit_names *name, const struct dentry *dentry,
- struct inode *inode, unsigned int flags)
+static void audit_copy_inode(struct audit_names *name,
+ const struct dentry *dentry,
+ struct inode *inode, unsigned int flags)
{
name->ino = inode->i_ino;
name->dev = inode->i_sb->s_dev;
--
2.7.0
5 years, 7 months