RFR: JDK-8219245: Shenandoah: Resolve oops in SATB filter

Aleksey Shipilev shade at redhat.com
Mon Feb 18 17:17:34 UTC 2019

On 2/18/19 6:13 PM, Roman Kennke wrote:
> When updating reference is piggy-backed on marking phase, we need to
> resolve oops that we get in SATB buffers before checking if they are
> marked, because from-space oops never get marked. This generates
> unnecessary traffic in SATB.
> Fix is to add template to requires_marking() that optionally resolves
> the object, and use that when we may see forwarded objects.
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8219245
> Webrev:
> http://cr.openjdk.java.net/~rkennke/JDK-8219245/webrev.00/

Um. I think true/false are swapped here:

  68   if (_heap->has_forwarded_objects()) {
  69     apply_filter(ShenandoahSATBMarkQueueFilterFn<false>(_heap), queue);
  70   } else {
  71     apply_filter(ShenandoahSATBMarkQueueFilterFn<true>(_heap), queue);
  72   }

...if there are forwarded objects, you want to resolve.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20190218/52a72122/signature.asc>

More information about the hotspot-gc-dev mailing list