[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-hotspot-runtime-dev
Subject: Re: RFR: 8301106 allow cds interned strings to be moved by gc [v4]
From: David Holmes <dholmes () openjdk ! org>
Date: 2023-02-27 0:37:04
Message-ID: R9581yrZjOtbbfn_HxcTvzfBUJdF91W4y4aCeReTSn0=.3677e073-a90f-413a-be01-787cc523d2c7 () github ! com
[Download RAW message or body]
On Sat, 25 Feb 2023 13:06:13 GMT, Ioi Lam <iklam@openjdk.org> wrote:
> > src/hotspot/share/classfile/stringTable.cpp line 800:
> >
> > > 798: // but bail out for safety.
> > > 799: log_error(cds)("Too many strings to be archived: " SIZE_FORMAT, \
> > > _items_count);
> > > 800: os::_exit(1);
> >
> > Hmm I hadn't really noticed that the CDS code has introduced its own direct exit \
> > path using `os::_exit` in a number of places. Why does it do this instead of \
> > using the existing VM exit paths?
>
> The reason is explained in metaspaceShared.cpp, but perhaps we should consolidate \
> all these direct exit calls (in a separate PR) to an utility function so it's easy \
> to track (and explain) all the calls.
>
> // There may be pending VM operations. We have changed some global states
> // (such as vmClasses::_klasses) that may cause these VM operations
> // to fail. For safety, forget these operations and exit the VM directly.
> os::_exit(0);
`vm_direct_exit` would seem to be okay in that case.
-------------
PR: https://git.openjdk.org/jdk/pull/12607
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic