RFR: 8280289: Enhance debug pp() command with NMT info [v5]
Zhengyu Gu
zgu at openjdk.java.net
Mon Jan 24 16:35:44 UTC 2022
> JDK-8275320 enhanced NMT malloc header, provided ability to identify if a pointer points to a malloc'd memory. Further, JDK-8277822 enabled NMT for debug builds.
>
> This is a good opportunity to integrate NMT to debug pp() command to provide useful information collected by NMT.
>
> For example:
>
> NMT=summary
>
> (gdb) call pp(0x7f2d9803db70)
> "Executing pp"
> 0x00007f2d9803db70 malloc'd 1576 bytes by Internal
>
> (gdb) call pp(0x00007f4300a20000)
> "Executing pp"
> 0x00007f4300a20000 in mmap'd memory region [0x00007f4300a20000 - 0x00007f4310000000] by GC
>
>
> NMT=detail
>
>
> (gdb) call pp(0x7f2d9803db70)
> "Executing pp"
> 0x00007f2d9803db70 malloc'd 1576 bytes by Internal
> [0x00007f2d9f1b784b] G1Arguments::create_heap()+0x1b
> [0x00007f2d9f98a855] universe_init()+0x85
> [0x00007f2d9f2e0a97] init_globals()+0x37
> [0x00007f2d9f960acb] Threads::create_vm(JavaVMInitArgs*, bool*)+0x3db
>
> (gdb) call pp(0x00007f4300a20000)
> "Executing pp"
> 0x00007f4300a20000 in mmap'd memory region [0x00007f4300a20000 - 0x00007f4310000000] by GC
> [0x00007f433dc49c7f] reserve_memory(char*, unsigned long, unsigned long, int, bool)+0x17f
> [0x00007f433dc4cf0b] ReservedSpace::reserve(unsigned long, unsigned long, unsigned long, char*, bool)+0x14b
> [0x00007f433dc4d527] ReservedSpace::initialize(unsigned long, unsigned long, unsigned long, char*, bool)+0x1c7
> [0x00007f433d949d40] ShenandoahHeap::initialize()+0x340
Zhengyu Gu has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 13 additional commits since the last revision:
- Merge branch 'master' into JDK-8280289-nmt-pp
- Snapshot mmap'd region to avoid race
- Thomas' comment
- Missing include file
- Thomas' comments
- More comment fixing
- Fix comment
- Fix minimal build
- Merge branch 'master' into JDK-8280289-nmt-pp
- Fix
- ... and 3 more: https://git.openjdk.java.net/jdk/compare/e546f502...92364529
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/7160/files
- new: https://git.openjdk.java.net/jdk/pull/7160/files/d6b53d42..92364529
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=7160&range=04
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=7160&range=03-04
Stats: 4593 lines in 219 files changed: 2849 ins; 1098 del; 646 mod
Patch: https://git.openjdk.java.net/jdk/pull/7160.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/7160/head:pull/7160
PR: https://git.openjdk.java.net/jdk/pull/7160
More information about the hotspot-dev
mailing list