RFR: 8276177: nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption failed with "assert(def_ik->is_being_redefined()) failed: should be being redefined to get here"
David Holmes
dholmes at openjdk.java.net
Thu Nov 18 06:03:45 UTC 2021
On Tue, 16 Nov 2021 13:29:08 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:
> The boolean AND was sharing a flag with another thread, so the value of _misc_is_being_redefined was being set and reset with the other thread. Moved the bit to AccessFlags which has space and an atomic set operation.
> Tested with tier1-6, 7-8 in progress.
src/hotspot/share/utilities/accessFlags.hpp line 165:
> 163: bool is_being_redefined() const { return (_flags & JVM_ACC_IS_BEING_REDEFINED) != 0; }
> 164: void set_is_being_redefined() { atomic_set_bits(JVM_ACC_IS_BEING_REDEFINED); }
> 165: void clear_is_being_redefined() { atomic_clear_bits(JVM_ACC_IS_BEING_REDEFINED); }
Shouldn't these have been under Klass flags, not Klass and Method flags ?
-------------
PR: https://git.openjdk.java.net/jdk/pull/6410
More information about the hotspot-dev
mailing list