FOR DISCUSSION: ios: Suppress missing log for two intermeidate dump keys. [crashpad/crashpad : main]

1 view
Skip to first unread message

Justin Cohen (Gerrit)

unread,
Feb 22, 2023, 2:44:16 PM2/22/23
to Mark Mentovai, Ben Hamilton, crashp...@chromium.org

Attention is currently required from: Ben Hamilton, Mark Mentovai.

View Change

1 comment:

  • Patchset:

    • Patch Set #3:

      These 2 keys seem to be missing a lot. I guess it's valid to not have a LC_SOURCE_VERSION. I'm not sure why kThreadName is failing ( about 10x more than threadId -- which we somewhat expect since Crashpad iOS doesn't pause threads).

To view, visit change 4283479. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: crashpad/crashpad
Gerrit-Branch: main
Gerrit-Change-Id: Ibf707fc9d7d4e15f1384e1ba7b84bc1ace3710e1
Gerrit-Change-Number: 4283479
Gerrit-PatchSet: 3
Gerrit-Owner: Justin Cohen <justi...@chromium.org>
Gerrit-Reviewer: Ben Hamilton <benha...@google.com>
Gerrit-Reviewer: Mark Mentovai <ma...@chromium.org>
Gerrit-Attention: Ben Hamilton <benha...@google.com>
Gerrit-Attention: Mark Mentovai <ma...@chromium.org>
Gerrit-Comment-Date: Wed, 22 Feb 2023 19:44:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment

Ben Hamilton (Gerrit)

unread,
Feb 22, 2023, 3:38:01 PM2/22/23
to Justin Cohen, Mark Mentovai, crashp...@chromium.org

Attention is currently required from: Justin Cohen, Mark Mentovai.

View Change

1 comment:

  • File snapshot/ios/thread_snapshot_ios_intermediate_dump.cc:

    • Patch Set #3, Line 99:

        GetDataValueFromMap(thread_data, Key::kSuspendCount, &suspend_count_);
      GetDataValueFromMap(thread_data, Key::kPriority, &priority_);
      GetDataValueFromMap(thread_data, Key::kThreadID, &thread_id_);
      GetDataValueFromMap(
      thread_data, Key::kThreadDataAddress, &thread_specific_data_address_);

      // This key is often missing.
      GetDataStringFromMap(thread_data,
      Key::kThreadName,
      &thread_name_,
      LogMissingDataValueFromMap::kDontLogIfMissing);

      I suspect we'll always have some level of failure to get both basic and extended thread metadata, since the thread can always exit before we fetch the metadata.

      One option is to not log at all for any of the thread-related keys here.

      If the thread name in particular is often missing, that suggests either:

      1) The call to `thread_info(thread, THREAD_EXTENDED_INFO, ...)` is failing at a high rate (which would be surprising to me), or

      2) We have a huge backlog of intermediate dumps that predate the thread name feature which are repeatedly failing to convert to minidumps (also very surprising)

      Do you have any other ideas of why this might be happening?

To view, visit change 4283479. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: crashpad/crashpad
Gerrit-Branch: main
Gerrit-Change-Id: Ibf707fc9d7d4e15f1384e1ba7b84bc1ace3710e1
Gerrit-Change-Number: 4283479
Gerrit-PatchSet: 3
Gerrit-Owner: Justin Cohen <justi...@chromium.org>
Gerrit-Reviewer: Ben Hamilton <benha...@google.com>
Gerrit-Reviewer: Mark Mentovai <ma...@chromium.org>
Gerrit-Attention: Justin Cohen <justi...@chromium.org>
Gerrit-Attention: Mark Mentovai <ma...@chromium.org>
Gerrit-Comment-Date: Wed, 22 Feb 2023 20:37:57 +0000

Justin Cohen (Gerrit)

unread,
Feb 22, 2023, 4:03:47 PM2/22/23
to Mark Mentovai, Ben Hamilton, crashp...@chromium.org

Attention is currently required from: Ben Hamilton, Mark Mentovai.

View Change

1 comment:

  • File snapshot/ios/thread_snapshot_ios_intermediate_dump.cc:

    • Patch Set #3, Line 99:

        GetDataValueFromMap(thread_data, Key::kSuspendCount, &suspend_count_);
      GetDataValueFromMap(thread_data, Key::kPriority, &priority_);
      GetDataValueFromMap(thread_data, Key::kThreadID, &thread_id_);
      GetDataValueFromMap(
      thread_data, Key::kThreadDataAddress, &thread_specific_data_address_);

      // This key is often missing.
      GetDataStringFromMap(thread_data,
      Key::kThreadName,
      &thread_name_,
      LogMissingDataValueFromMap::kDontLogIfMissing);

To view, visit change 4283479. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: crashpad/crashpad
Gerrit-Branch: main
Gerrit-Change-Id: Ibf707fc9d7d4e15f1384e1ba7b84bc1ace3710e1
Gerrit-Change-Number: 4283479
Gerrit-PatchSet: 3
Gerrit-Owner: Justin Cohen <justi...@chromium.org>
Gerrit-Reviewer: Ben Hamilton <benha...@google.com>
Gerrit-Reviewer: Mark Mentovai <ma...@chromium.org>
Gerrit-Attention: Ben Hamilton <benha...@google.com>
Gerrit-Attention: Mark Mentovai <ma...@chromium.org>
Gerrit-Comment-Date: Wed, 22 Feb 2023 21:03:43 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Ben Hamilton <benha...@google.com>
Gerrit-MessageType: comment
Reply all
Reply to author
Forward
0 new messages