Integrated: 8329629: GC interfaces should work directly against nmethod instead of CodeBlob

Stefan Karlsson stefank at openjdk.org
Tue Apr 9 12:31:21 UTC 2024


On Fri, 5 Apr 2024 12:32:30 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:

> The GCs scan and handles nmethods and ignores CodeBlobs of other kinds. The I propose that we stop sending in CodeBlobs to the GCs and make sure to only give them nmethods.
> 
> I removed `void CodeCache::blobs_do(CodeBlobClosure* f)` since there's no more usage of that function. Is this OK?
> 
> I also opted to skipped calling the GC verification code from the iterator code:
> 
> Universe::heap()->verify_nmethod((nmethod*)cb);
> 
> IMHO, I think it is up to the GCs to decide if they want to perform extra nmethod verification. If someone wants to keep this verification in their favorite GC I can add calls to this function where we used to call CodeCache::blobs_do.
> 
> I've only done limited testing and will run extensive testing concurrent with the review.

This pull request has now been integrated.

Changeset: 87131fb2
Author:    Stefan Karlsson <stefank at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/87131fb2f77188a483fd0852da5f9228aafd5336
Stats:     850 lines in 74 files changed: 238 ins; 318 del; 294 mod

8329629: GC interfaces should work directly against nmethod instead of CodeBlob

Reviewed-by: ayang, eosterlund

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

PR: https://git.openjdk.org/jdk/pull/18653


More information about the serviceability-dev mailing list