mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-18 01:54:47 +02:00
8304815: Use NMT for more precise hs_err location printing
Reviewed-by: jsjolen, rkennke
This commit is contained in:
parent
34e66ce1ef
commit
41a3db267d
13 changed files with 260 additions and 45 deletions
|
@ -96,11 +96,11 @@ class MallocHeader {
|
|||
const uint8_t _unused;
|
||||
uint16_t _canary;
|
||||
|
||||
static const uint16_t _header_canary_life_mark = 0xE99E;
|
||||
static const uint16_t _header_canary_live_mark = 0xE99E;
|
||||
static const uint16_t _header_canary_dead_mark = 0xD99D;
|
||||
static const uint16_t _footer_canary_life_mark = 0xE88E;
|
||||
static const uint16_t _footer_canary_live_mark = 0xE88E;
|
||||
static const uint16_t _footer_canary_dead_mark = 0xD88D;
|
||||
NOT_LP64(static const uint32_t _header_alt_canary_life_mark = 0xE99EE99E;)
|
||||
NOT_LP64(static const uint32_t _header_alt_canary_live_mark = 0xE99EE99E;)
|
||||
NOT_LP64(static const uint32_t _header_alt_canary_dead_mark = 0xD88DD88D;)
|
||||
|
||||
// We discount sizes larger than these
|
||||
|
@ -139,6 +139,13 @@ public:
|
|||
inline void mark_block_as_dead();
|
||||
inline void revive();
|
||||
|
||||
|
||||
bool is_dead() const { return _canary == _header_canary_dead_mark; }
|
||||
bool is_live() const { return _canary == _header_canary_live_mark; }
|
||||
|
||||
// Used for debugging purposes only. Check header if it could constitute a valid (live or dead) header.
|
||||
inline bool looks_valid() const;
|
||||
|
||||
// If block is broken, fill in a short descriptive text in out,
|
||||
// an option pointer to the corruption in p_corruption, and return false.
|
||||
// Return true if block is fine.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue