RFR: 8313796: AsyncGetCallTrace crash on unreadable interpreter method pointer
Andrew Haley
aph at openjdk.org
Mon Aug 7 20:45:33 UTC 2023
On Mon, 7 Aug 2023 13:37:33 GMT, Richard Startin <duke at openjdk.org> wrote:
> We have observed invalid pointers to the interpreted method at Datadog. The fix is based on a discussion with and a code snippet from @parttimenerd.
src/hotspot/cpu/aarch64/frame_aarch64.cpp line 514:
> 512: return false;
> 513: }
> 514: Method* m = *m_addr;
Suggestion:
Method* m_addr = interpreter_frame_method_addr();
if (m_addr == nullptr) {
return false;
}
Method* m = SafeFetchN(m_addr, nullptr);
if (m == nullptr) {
return false;
}
Reason: more robust against changes in memory map, faster.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15178#discussion_r1286366886
More information about the hotspot-dev
mailing list