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

Commit f9566853 authored by Florian Mayer's avatar Florian Mayer Committed by Gerrit Code Review
Browse files

Merge "Use scudo_stack_depot_size from process_info" into main

parents 6635431d e8fcfee4
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -317,6 +317,7 @@ static void ReadCrashInfo(unique_fd& fd, siginfo_t* siginfo,
      process_info->gwp_asan_state = crash_info->data.d.gwp_asan_state;
      process_info->gwp_asan_metadata = crash_info->data.d.gwp_asan_metadata;
      process_info->scudo_stack_depot = crash_info->data.d.scudo_stack_depot;
      process_info->scudo_stack_depot_size = crash_info->data.d.scudo_stack_depot_size;
      process_info->scudo_region_info = crash_info->data.d.scudo_region_info;
      process_info->scudo_ring_buffer = crash_info->data.d.scudo_ring_buffer;
      process_info->scudo_ring_buffer_size = crash_info->data.d.scudo_ring_buffer_size;
+1 −0
Original line number Diff line number Diff line
@@ -395,6 +395,7 @@ static int debuggerd_dispatch_pseudothread(void* arg) {
    ASSERT_SAME_OFFSET(scudo_region_info, scudo_region_info);
    ASSERT_SAME_OFFSET(scudo_ring_buffer, scudo_ring_buffer);
    ASSERT_SAME_OFFSET(scudo_ring_buffer_size, scudo_ring_buffer_size);
    ASSERT_SAME_OFFSET(scudo_stack_depot_size, scudo_stack_depot_size);
    ASSERT_SAME_OFFSET(recoverable_gwp_asan_crash, recoverable_gwp_asan_crash);
#undef ASSERT_SAME_OFFSET

+1 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ struct __attribute__((packed)) debugger_process_info {
  const char* scudo_region_info;
  const char* scudo_ring_buffer;
  size_t scudo_ring_buffer_size;
  size_t scudo_stack_depot_size;
  bool recoverable_gwp_asan_crash;
};

+1 −0
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ struct ProcessInfo {
  uintptr_t scudo_region_info = 0;
  uintptr_t scudo_ring_buffer = 0;
  size_t scudo_ring_buffer_size = 0;
  size_t scudo_stack_depot_size = 0;

  bool has_fault_address = false;
  uintptr_t untagged_fault_address = 0;
+1 −1
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ ScudoCrashData::ScudoCrashData(unwindstack::Memory* process_memory,
  }

  auto stack_depot = AllocAndReadFully(process_memory, process_info.scudo_stack_depot,
                                       __scudo_get_stack_depot_size());
                                       process_info.scudo_stack_depot_size);
  auto region_info = AllocAndReadFully(process_memory, process_info.scudo_region_info,
                                       __scudo_get_region_info_size());
  std::unique_ptr<char[]> ring_buffer;
Loading