Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-05-10 Thread Maurizio Cimadamore
On Fri, 30 Apr 2021 17:20:21 GMT, Mandy Chung wrote: >>> I think the implementation does not support that. I will also need to look >>> into how this impacts JDK-8266010. As I suggest earlier, I'm fine to do >>> this as a follow up after integration. >> >> I've added `@CS` in the interface met

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-30 Thread Mandy Chung
On Fri, 30 Apr 2021 12:24:38 GMT, Maurizio Cimadamore wrote: > I've added `@CS` in the interface methods too. I've also added a stronger > test which creates method handles in one module (which doesn't have native > access) and then calls them from another module (which does NOT have native >

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-30 Thread Maurizio Cimadamore
On Thu, 29 Apr 2021 18:18:00 GMT, Mandy Chung wrote: > I think the implementation does not support that. I will also need to look > into how this impacts JDK-8266010. As I suggest earlier, I'm fine to do this > as a follow up after integration. I've added `@CS` in the interface methods too. I'

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-29 Thread Mandy Chung
On Thu, 29 Apr 2021 10:31:29 GMT, Maurizio Cimadamore wrote: > I think I expect that, with caller sensitive, it is possible from a client in > an "enabled" module to obtain a MethodHandle, and then pass it to an > unprivileged module, which then calls it, and works ok. This matches my > expec

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-29 Thread Maurizio Cimadamore
On Wed, 28 Apr 2021 18:33:36 GMT, Maurizio Cimadamore wrote: >> This PR contains the API and implementation changes for JEP-412 [1]. A more >> detailed description of such changes, to avoid repetitions during the review >> process, is included as a separate comment. >> >> [1] - https://openjd

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-29 Thread Maurizio Cimadamore
On Wed, 28 Apr 2021 23:22:38 GMT, Mandy Chung wrote: > My statement was overly simplified, sorry. If `handle` is invoked in another > module B and invoked by a class in module B, which module (the `lookup`'s > module or ) do you expect be the caller to check against for native access > check?

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-28 Thread Mandy Chung
On Wed, 28 Apr 2021 21:10:33 GMT, Maurizio Cimadamore wrote: > I just did a test: > > ``` > public class TestLookup { > public static void main(String[] args) throws Throwable { > MethodHandle handle = > MethodHandles.lookup().findVirtual(CLinker.class, "downcallHandle", > MethodT

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-28 Thread Maurizio Cimadamore
On Wed, 28 Apr 2021 20:40:49 GMT, Mandy Chung wrote: > > To be clear - by aliasing you mean when the @CallerSensitive implementation > > is called with invokeinterface - so, e.g. doing > > `MethodHandles.lookup().findVirtual(CLinker.class, ...)` right? > > Yes. The caller would be java.base if

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-28 Thread Mandy Chung
On Wed, 28 Apr 2021 20:38:47 GMT, Maurizio Cimadamore wrote: > To be clear - by aliasing you mean when the @CallerSensitive implementation > is called with invokeinterface - so, e.g. doing > `MethodHandles.lookup().findVirtual(CLinker.class, ...)` right? Yes. The caller would be java.base i

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-28 Thread Maurizio Cimadamore
On Wed, 28 Apr 2021 18:33:36 GMT, Maurizio Cimadamore wrote: >> This PR contains the API and implementation changes for JEP-412 [1]. A more >> detailed description of such changes, to avoid repetitions during the review >> process, is included as a separate comment. >> >> [1] - https://openjd

Re: RFR: 8264774: Implementation of Foreign Function and Memory API (Incubator) [v3]

2021-04-28 Thread Maurizio Cimadamore
> This PR contains the API and implementation changes for JEP-412 [1]. A more > detailed description of such changes, to avoid repetitions during the review > process, is included as a separate comment. > > [1] - https://openjdk.java.net/jeps/412 Maurizio Cimadamore has updated the pull request