If ObjectSynchronizer::chk_in_use_entry is called while monitor deflation is safepoint polled/blocked, we can have deflated monitors on the in-use list and we can get a huge number of lines stating:
[10.570s][debug][monitorinflation] WARNING: monitor=0x00007fa1004f8480: in-use monitor is deflated.
This comes from the following code:
void ObjectSynchronizer::chk_in_use_entry(ObjectMonitor* n, outputStream* out,
int* error_cnt_p) {
if (n->owner_is_DEFLATER_MARKER()) {
// This should not happen, but if it does, it is not fatal.
out->print_cr("WARNING: monitor=" INTPTR_FORMAT ": in-use monitor is "
"deflated.", p2i(n));
return;
}
There are tentative plans to rewrite the monitor deflation to unlink deflated monitors from the in-use list *before* the safepoint polls, but I'd like to suggest that we make an interim patch that deletes this warning.