Thread (118 messages) 118 messages, 7 authors, 2014-05-12

[PATCH v2 4/6] arm64: audit: Add 32-bit (compat) syscall support

From: Will Deacon <hidden>
Date: 2014-01-17 16:47:09
Also in: lkml

Hi Akashi,

On Fri, Jan 17, 2014 at 08:13:17AM +0000, AKASHI Takahiro wrote:
Generic audit code also support compat system calls now.
This patch adds a small piece of architecture dependent code.
[...]
quoted hunk ↗ jump to hunk
 static inline int syscall_get_nr(struct task_struct *task,
@@ -109,6 +110,15 @@ static inline void syscall_set_arguments(struct task_struct *task,
 static inline int syscall_get_arch(struct task_struct *task,
 				   struct pt_regs *regs)
 {
+#ifdef CONFIG_COMPAT
+	if (is_compat_thread(task_thread_info(task)))
You can call is_compat_thread even when !CONFIG_COMPAT, so you don't need
that #ifdef.
+#ifdef __AARCH64EB__
+		return AUDIT_ARCH_ARMEB; /* only BE on BE */
Well, actually, we only support userspace to be the same endianness as the
kernel, so you that comment is slightly misleading. You could probably avoid
these repeated ifdefs by defining things like ARM64_AUDIT_ARCH and
ARM64_COMPAT_AUDIT_ARCH once depending on endianness.

Will
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help