Hexagon: fix build errors
authorSid Manning <sidneym@codeaurora.org>
Fri, 23 Apr 2021 20:06:58 +0000 (15:06 -0500)
committerBrian Cain <bcain@codeaurora.org>
Mon, 3 May 2021 16:04:18 +0000 (11:04 -0500)
Fix type-o in ptrace.c.
Add missing include: asm/hexagon_vm.h
Remove superfluous cast.
Replace 'p3_0' with 'preds'.

Signed-off-by: Sid Manning <sidneym@codeaurora.org>
Add -mlong-calls to build flags.
Signed-off-by: Brian Cain <bcain@codeaurora.org>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
arch/hexagon/Makefile
arch/hexagon/include/asm/timex.h
arch/hexagon/kernel/ptrace.c

index c168c69..3826483 100644 (file)
@@ -10,6 +10,9 @@ LDFLAGS_vmlinux += -G0
 # Do not use single-byte enums; these will overflow.
 KBUILD_CFLAGS += -fno-short-enums
 
+# We must use long-calls:
+KBUILD_CFLAGS += -mlong-calls
+
 # Modules must use either long-calls, or use pic/plt.
 # Use long-calls for now, it's easier.  And faster.
 # KBUILD_CFLAGS_MODULE += -fPIC
index 78338d8..8d4ec76 100644 (file)
@@ -8,6 +8,7 @@
 
 #include <asm-generic/timex.h>
 #include <asm/timer-regs.h>
+#include <asm/hexagon_vm.h>
 
 /* Using TCX0 as our clock.  CLOCK_TICK_RATE scheduled to be removed. */
 #define CLOCK_TICK_RATE              TCX0_CLK_RATE
@@ -16,7 +17,7 @@
 
 static inline int read_current_timer(unsigned long *timer_val)
 {
-       *timer_val = (unsigned long) __vmgettime();
+       *timer_val = __vmgettime();
        return 0;
 }
 
index a5a89e9..8975f9b 100644 (file)
@@ -35,7 +35,7 @@ void user_disable_single_step(struct task_struct *child)
 
 static int genregs_get(struct task_struct *target,
                   const struct user_regset *regset,
-                  srtuct membuf to)
+                  struct membuf to)
 {
        struct pt_regs *regs = task_pt_regs(target);
 
@@ -54,7 +54,7 @@ static int genregs_get(struct task_struct *target,
        membuf_store(&to, regs->m0);
        membuf_store(&to, regs->m1);
        membuf_store(&to, regs->usr);
-       membuf_store(&to, regs->p3_0);
+       membuf_store(&to, regs->preds);
        membuf_store(&to, regs->gp);
        membuf_store(&to, regs->ugp);
        membuf_store(&to, pt_elr(regs)); // pc