Integrated: 8317600: VtableStubs::stub_containing() table load not ordered wrt to stores
Thomas Schatzl
tschatzl at openjdk.org
Tue Oct 17 19:03:59 UTC 2023
On Thu, 5 Oct 2023 14:20:41 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:
> Hi all,
>
> please review this change that makes sure that `Vtablestubs::stub_containing()` (and `::vtable_stub_do()` I noticed while implementing this) use proper memory fences to correctly observe the next pointers in the hash table buckets.
>
> I assume that this memory ordering issue never occurs in the wild, there is probably always some additional memory fencing between the addition of the element to the given bucket to the iteration. However it is still the more correct code (I believe) to explicitly enforce memory ordering.
>
> Testing: gha, class unloading stress test
>
> Thanks,
> Thomas
This pull request has now been integrated.
Changeset: c566dfcc
Author: Thomas Schatzl <tschatzl at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/c566dfccf8aa0d5cd53a6e4de61a1bca9f1367b5
Stats: 27 lines in 2 files changed: 5 ins; 9 del; 13 mod
8317600: VtableStubs::stub_containing() table load not ordered wrt to stores
Reviewed-by: dlong, kvn
-------------
PR: https://git.openjdk.org/jdk/pull/16056
More information about the hotspot-compiler-dev
mailing list