[11u] RFR: 8173658: JvmtiExport::post_class_unload() is broken for non-JavaThread initiators

Lindenmaier, Goetz goetz.lindenmaier at sap.com
Thu Nov 19 10:16:08 UTC 2020


Hi Matthias,

Thanks for reviewing.

1)
You mean I should move the function body to the .inline.hpp file?
I would like to leave the function in the header to avoid having to
fix includes in platforms other than ppc and s390.

2)
I will make sure it jchecks fine before pushing.

Best regards,
  Goetz.

From: Baesken, Matthias <matthias.baesken at sap.com>
Sent: Wednesday, November 18, 2020 1:10 PM
To: jdk-updates-dev at openjdk.java.net
Cc: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>; Doerr, Martin <martin.doerr at sap.com>
Subject: Re : [11u] RFR: 8173658: JvmtiExport::post_class_unload() is broken for non-JavaThread initiators

Hi Götz , thanks for the backport.




>Please check

>http://cr.openjdk.java.net/~goetz/wr20/8173658-post_class_unload-jdk11/02/

>
> I had lost changes to the test file because of the C/C++ mismatch.

Looks good to me .

2 smaller remarks  (do not need another webrev) :

1)
I would like to prefer to have  set_thread_state  in 11  at one place too ,   we have this  in jdk/jdk ( src/hotspot/share/runtime/thread.inline.hpp  ) :

127inline void JavaThread::set_thread_state(JavaThreadState s) {
128  assert(current_or_null() == NULL || current_or_null() == this,
129         "state change should only be called by the current thread");
130#if defined(PPC64) || defined (AARCH64)
131  // Use membars when accessing volatile _thread_state. See
132  // Threads::create_vm() for size checks.
133  Atomic::release_store((volatile jint*)&_thread_state, (jint)s);
134#else
135  _thread_state = s;
136#endif
137}

But it's up to you if you want to include it in this patch or not.

2)
When importing your patch I was running into "Extraneous text in comment
src/hotspot/share/runtime/thread.hpp:1223: Trailing whitespace"
You might want to check this.

Best regards, Matthias




More information about the jdk-updates-dev mailing list