[8u] RFR: Shenandoah: Zero build fails after recent Atomic cleanup in Pacer
Roman Kennke
rkennke at redhat.com
Wed Jul 29 07:12:37 UTC 2020
Aww. Ok!
Roman
On Wed, 2020-07-29 at 08:54 +0200, Aleksey Shipilev wrote:
> Error verifying signature: Cannot verify message signature:
> Incorrect message format
> sh/jdk8 build pipelines still fail, now in Zero builds:
>
> In file included from
> build/hotspot/src/share/vm/memory/specialized_oop_closures.hpp:28:0,
> from build/hotspot/src/share/vm/oops/oop.hpp:30,
> from build/hotspot/src/share/vm/oops/markOop.hpp:28,
> from
> build/hotspot/src/share/vm/gc_implementation/shared/ageTable.hpp:28,
> from
> build/hotspot/src/share/vm/oops/oop.inline.hpp:28,
> from
> build/hotspot/src/share/vm/gc_implementation/shared/markBitMap.hpp:29
> ,
> from
> build/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHea
> p.hpp:27,
> from
> build/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahFre
> eSet.hpp:28,
> from
> build/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahPac
> er.cpp:26:
> build/hotspot/src/share/vm/runtime/atomic.hpp:52:22: error: inline
> function ‘static void
> Atomic::store_ptr(intptr_t, volatile intptr_t*)’ used but never
> defined [-Werror]
> inline static void store_ptr(intptr_t store_value, volatile
> intptr_t* dest);
> ^~~~~~~~~
>
> This happens because Zero has CV-unqualified method only, so we need
> the other one:
>
> diff -r 144156910d02
> src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp
> --- a/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp Tue
> Jul 28 09:28:15 2020 +0200
> +++ b/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp Wed
> Jul 29 08:42:17 2020 +0200
> @@ -168,8 +168,12 @@
> inline void Atomic::store_ptr(intptr_t store_value, intptr_t* dest)
> {
> *dest = store_value;
> }
>
> +inline void Atomic::store_ptr(intptr_t store_value, volatile
> intptr_t* dest) {
> + *dest = store_value;
> +}
> +
> inline jint Atomic::add(jint add_value, volatile jint* dest) {
> #ifdef ARM
> return arm_add_and_fetch(dest, add_value);
> #else
> diff -r 144156910d02
> src/share/vm/gc_implementation/shenandoah/shenandoahPacer.cpp
> ---
> a/src/share/vm/gc_implementation/shenandoah/shenandoahPacer.cpp T
> ue Jul 28 09:28:15 2020 +0200
> +++
> b/src/share/vm/gc_implementation/shenandoah/shenandoahPacer.cpp W
> ed Jul 29 08:42:17 2020 +0200
> @@ -27,8 +27,9 @@
> #include "gc_implementation/shenandoah/shenandoahHeap.inline.hpp"
> #include "gc_implementation/shenandoah/shenandoahPacer.hpp"
> #include "gc_implementation/shenandoah/shenandoahPhaseTimings.hpp"
> #include "runtime/mutexLocker.hpp"
> +#include "runtime/atomic.inline.hpp"
>
> /*
> * In normal concurrent cycle, we have to pace the application to
> let GC finish.
> *
>
>
> Testing: hotspot_gc_shenandoah; Linux x86_64 zero builds
>
More information about the shenandoah-dev
mailing list