RFR: 8289002: Minimal x86_64 VM build fails with GCC 11: 'this' pointer is null [v2]

Aleksey Shipilev shade at openjdk.org
Wed Aug 3 18:39:19 UTC 2022


> These build failures are specific to Minimal VM, because it disables "management" feature, and paths like these start to return NULL:
> 
> 
>   static InstanceKlass* com_sun_management_internal_DiagnosticCommandImpl_klass(TRAPS)
>       NOT_MANAGEMENT_RETURN_(NULL);
> ``` 
> 
> I propose we handle the `NULL`-s properly and throwing early when those are detected. We return/throw what similar code in the affected methods do. I went back and forth with the patch, and settled on throwing from `MemoryManager::get_memory_manager_instance`, and handling the exception at its uses.
> 
> Additional testing:
>  - [x] Linux x86_64 fastdebug minimal build with GCC 11.3.0
>  - [x]  Linux x86_64 fastdebug server with GCC 9.3.0, `tier1`
>  - [x]  Linux x86_64 fastdebug server with GCC 9.3.0, `tier2`
>  - [x]  Linux x86_64 fastdebug server with GCC 9.3.0, `hotspot_serviceability`

Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:

  Cleaner fix

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/9718/files
  - new: https://git.openjdk.org/jdk/pull/9718/files/aceebea1..5e0ed005

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=9718&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=9718&range=00-01

  Stats: 7 lines in 3 files changed: 1 ins; 0 del; 6 mod
  Patch: https://git.openjdk.org/jdk/pull/9718.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9718/head:pull/9718

PR: https://git.openjdk.org/jdk/pull/9718


More information about the hotspot-dev mailing list