RFR: 8327218: Add an ability to specify modules which should have native access enabled
Maurizio Cimadamore
mcimadamore at openjdk.org
Mon Mar 4 14:14:43 UTC 2024
On Mon, 4 Mar 2024 13:52:13 GMT, Jan Lahoda <jlahoda at openjdk.org> wrote:
> Currently, JDK modules load by the bootstrap and platform ClassLoaders are automatically granted the native access. I am working on an upgrade of JLine inside the `jdk.internal.le` module, and I would like to replace the current native bindings with FFM-based bindings (which are now somewhat provided by JLine). But, for that, native access is needed for the `jdk.internal.le` module. We could possibly move the module to the platform ClassLoader, but it seems it might be better to have more control over which modules have the native access.
>
> This patch introduces an explicit list of modules that will automatically be granted the native access. Note this patch is not yet intended to change the end behavior - the list of modules granted native access is supposed to be the same as modules in the boot and platform ClassLoaders.
Looks good.
src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java line 273:
> 271:
> 272: /**
> 273: * Updates module named name in layer layer to allow access to restricted methods.
Suggestion:
* Updates module named {@code name} in layer {@code layer} to allow access to restricted methods.
src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java line 806:
> 804: /**
> 805: * Process the --enable-native-access option to grant access to restricted methods to selected modules.
> 806: * Also add Enable native access from JDK modules.
I don't think this extra comment is needed.
-------------
Marked as reviewed by mcimadamore (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/18106#pullrequestreview-1914419463
PR Review Comment: https://git.openjdk.org/jdk/pull/18106#discussion_r1511226929
PR Review Comment: https://git.openjdk.org/jdk/pull/18106#discussion_r1511223692
More information about the build-dev
mailing list