Build failing when disabling the serialgc
David Holmes
david.holmes at oracle.com
Mon Jun 24 04:47:56 UTC 2024
On 20/06/2024 6:48 pm, Julian Waters wrote:
> Hi Sanne,
>
> The reason the build fails when disabling SerialGC is due to the build
> process explicitly calling the newly compiled Java with
> -XX:+UseSerialGC to do small workloads. This is not a bug in the JVM,
> but rather an unfortunate consequence of the way the build system is
> structured. I believe you would need to patch out certain uses of
> -XX:+UseSerialGC in the build process with -XX:+UseG1GC instead for
> this to work, see for instance the following line that shows up during
> configure:
>
> checking flags for boot jdk java command for small workloads...
> -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
>
> I'm not sure whether it is a must to use SerialGC when compiling jmods
> or doing other small workloads during the build process, but I'm
> leaning towards it just being there to make the build more efficient
As Erik noted the issue is not the boot JDK (as the flag logic checks if
the small flags are valid on that), but elsewhere that uses the "small
flags" variable with the built JDK, without checking validity.
One possible simple workaround would be to add
-XX:+IgnoreUnrecognizedVMOptions to the small flags so that
-XX:+UseSerialGC does not cause an error and the default GC would be
used instead.
Though as I put in the bug report I found a different error building the
tests when I tried to build without SerialGC.
David
-----
> best regards,
> Julian
More information about the build-dev
mailing list