Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b49ffd6f authored by Christopher Ferris's avatar Christopher Ferris Committed by Automerger Merge Worker
Browse files

Merge "Fix x86_64 check for signal handler." am: 36991d8e am: 0a8f898e am: fb5b39c2

Original change: https://android-review.googlesource.com/c/platform/system/core/+/1430216

Change-Id: I24d48759a04f2c86790f6b512462a98436bc9e33
parents 365ccf94 fb5b39c2
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -141,15 +141,14 @@ bool RegsX86_64::StepIfSignalHandler(uint64_t elf_offset, Elf* elf, Memory* proc
    return false;
  }

  uint16_t data2;
  if (!elf_memory->ReadFully(elf_offset + 8, &data2, sizeof(data2)) || data2 != 0x0f05) {
  uint8_t data2;
  if (!elf_memory->ReadFully(elf_offset + 8, &data2, sizeof(data2)) || data2 != 0x05) {
    return false;
  }

  // __restore_rt:
  // 0x48 0xc7 0xc0 0x0f 0x00 0x00 0x00   mov $0xf,%rax
  // 0x0f 0x05                            syscall
  // 0x0f                                 nopl 0x0($rax)

  // Read the mcontext data from the stack.
  // sp points to the ucontext data structure, read only the mcontext part.