RFR: 8289002: Minimal x86_64 VM build fails with GCC 11: 'this' pointer is null
David Holmes
dholmes at openjdk.org
Wed Aug 3 05:02:26 UTC 2022
On Tue, 2 Aug 2022 18:11:33 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
> 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
> - [ ] Linux x86_64 fastdebug server with GCC 9.3.0, `tier1`
> - [ ] Linux x86_64 fastdebug server with GCC 9.3.0, `tier2`
> - [x] Linux x86_64 fastdebug server with GCC 9.3.0, `hotspot_serviceability`
Though it is also possible code changes have crept in that have not taken INCLUDE_MANAGEMENT into account.
-------------
PR: https://git.openjdk.org/jdk/pull/9718
More information about the hotspot-dev
mailing list