diff --git a/coregrind/m_syswrap/syswrap-main.c b/coregrind/m_syswrap/syswrap-main.c
index 292723c..d63504e 100644
--- a/coregrind/m_syswrap/syswrap-main.c
+++ b/coregrind/m_syswrap/syswrap-main.c
@@ -2046,8 +2046,25 @@
    }
 
 #elif defined(VGP_arm64_linux)
-   // probably simplest to copy the ppc version
-   I_die_here;
+   arch->vex.guest_PC -= 4;             // sizeof(arm64 instr)
+
+   /* Make sure our caller is actually sane, and we're really backing
+      back over a syscall.
+
+      svc #0 == d4 00 00 01
+   */
+   {
+      UChar *p = (UChar *)arch->vex.guest_PC;
+
+      if (p[0] != 0x01 || p[1] != 0x00 || p[2] != 0x00 || p[3] != 0xD4)
+         VG_(message)(
+            Vg_DebugMsg,
+            "?! restarting over syscall at %#llx %02x %02x %02x %02x\n",
+            arch->vex.guest_PC + 0ULL, p[0], p[1], p[2], p[3]
+          );
+
+      vg_assert(p[0] == 0x01 && p[1] == 0x00 && p[2] == 0x00 && p[3] == 0xD4);
+   }
 
 #elif defined(VGP_x86_darwin)
    arch->vex.guest_EIP = arch->vex.guest_IP_AT_SYSCALL; 
diff --git a/include/vki/vki-arm64-linux.h b/include/vki/vki-arm64-linux.h
index 277e632..9eb0c20 100644
--- a/include/vki/vki-arm64-linux.h
+++ b/include/vki/vki-arm64-linux.h
@@ -515,15 +515,18 @@
 typedef struct vki_user_fpsimd_state vki_elf_fpregset_t;
 
 //----------------------------------------------------------------------
-// From linux-3.10.5/include/uapi/asm-generic/ucontext.h
+// From linux-3.10.5/arch/arm64/include/asm/ucontext.h
 //----------------------------------------------------------------------
 
 struct vki_ucontext {
-	unsigned long		uc_flags;
-	struct vki_ucontext    *uc_link;
-	vki_stack_t		uc_stack;
-	struct vki_sigcontext	uc_mcontext;
-	vki_sigset_t		uc_sigmask;
+        unsigned long           uc_flags;
+        struct vki_ucontext    *uc_link;
+        vki_stack_t             uc_stack;
+        vki_sigset_t            uc_sigmask;
+        /* glibc uses a 1024-bit sigset_t */
+        __vki_u8                __unused[1024 / 8 - sizeof(vki_sigset_t)];
+        /* last for future expansion */
+        struct vki_sigcontext   uc_mcontext;
 };
 
 //ZZ //----------------------------------------------------------------------
