loader: port to ARM64 27/111127/5
authorVyacheslav Cherkashin <v.cherkashin@samsung.com>
Wed, 18 Jan 2017 15:32:29 +0000 (18:32 +0300)
committerVyacheslav Cherkashin <v.cherkashin@samsung.com>
Tue, 31 Jan 2017 07:21:27 +0000 (10:21 +0300)
Change-Id: Idf1934fc60d18d7be150b51ae51f5943c8b2a61b
Signed-off-by: Vyacheslav Cherkashin <v.cherkashin@samsung.com>
loader/loader_module.c

index e91b3cf..3bf56e0 100644 (file)
@@ -177,7 +177,20 @@ static inline void print_regs(const char *prefix, struct pt_regs *regs,
               regs->EREG(ip), swap_get_uarg(regs, 0), swap_get_uarg(regs, 1),
               swap_get_uret_addr(regs));
 #elif defined(CONFIG_ARM64)
-       WARN(1, "not implemented"); /* FIXME: to implement */
+       printk(LOADER_PREFIX "%s[%d/%d] %s (%d) %s addr(%016lx), "
+              "x0(%016lx), x1(%016lx), x2(%016lx), x3(%016lx), "
+              "x4(%016lx), x5(%016lx), x6(%016lx), x7(%016lx), "
+              "sp(%016lx), lr(%016lx), pc(%016lx)\n",
+              current->comm, current->tgid, current->pid,
+              dentry != NULL ? (char *)(dentry->d_name.name) :
+                               (char *)("NULL"),
+              (int)lpd_get_state(hd),
+              prefix, (unsigned long)ri->rp->up.addr,
+              (long)regs->regs[0], (long)regs->regs[1],
+              (long)regs->regs[2], (long)regs->regs[3],
+              (long)regs->regs[4], (long)regs->regs[5],
+              (long)regs->regs[6], (long)regs->regs[7],
+              (long)regs->sp, swap_get_uret_addr(regs), (long)regs->pc);
        (void)dentry;
 #else /* CONFIG_arch */
 # error "this architecture is not supported"