RFR: 8256046: Shenandoah: Mix-in NULL_PTR in non-strong ShLRBNode's type [v2]

Roman Kennke rkennke at openjdk.java.net
Mon Nov 9 11:29:10 UTC 2020


> Testing found this problem (very rare/hard to reproduce):
> 
> # Internal Error (d:/a/jdk/jdk/jdk/src/hotspot/cpu/x86/macroAssembler_x86.cpp:880), pid=6160, tid=5828
> # fatal error: DEBUG MESSAGE: unexpected null in intrinsic
> 
> I believe this may be caused by non-strong LRB reporting a non-NULL type by passing-through its input's type, even though it may actually return NULL on non-NULL inputs. If this serves as input to an intrinsic, it may lead to elimination of surrounding null-check, and thus end up passing a NULL to the intrinsic even thought it should not. 
> 
> Testing:
>  - [ ] hotspot_gc_shenandoah
>  - [ ] tier1+Shenandoah
>  - [ ] tier2+Shenandoah

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Omit useless cast to oopptr

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/1120/files
  - new: https://git.openjdk.java.net/jdk/pull/1120/files/6fbeabb3..d98ea79b

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1120&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1120&range=00-01

  Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1120.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1120/head:pull/1120

PR: https://git.openjdk.java.net/jdk/pull/1120



More information about the hotspot-gc-dev mailing list