RFR: 8347408: Create an internal method handle adapter for system calls with errno [v3]

Per Minborg pminborg at openjdk.org
Mon May 5 17:13:02 UTC 2025


> As we advance, converting older JDK code to use the relatively new FFM API requires system calls that can provide `errno` and the likes to explicitly allocate a MemorySegment to capture potential error states. This can lead to negative performance implications if not designed carefully and also introduces unnecessary code complexity.
> 
> Hence, this PR proposes adding a JDK internal method handle adapter that can be used to handle system calls with `errno`, `GetLastError`, and `WSAGetLastError`.
> 
> It relies on an efficient carrier-thread-local cache of memory regions to allide allocations.

Per Minborg has updated the pull request incrementally with three additional commits since the last revision:

 - Fix empty line at the end of a third file
 - Fix empty line at the end of another file
 - Fix empty line at the end of a file

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/25043/files
  - new: https://git.openjdk.org/jdk/pull/25043/files/29441123..07a39db9

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=25043&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=25043&range=01-02

  Stats: 3 lines in 3 files changed: 0 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/25043.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25043/head:pull/25043

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


More information about the core-libs-dev mailing list