On Tue, 19 Aug 2025 13:18:49 GMT, Darragh Clarke <[email protected]> wrote:
>> This PR aims to Panamize the Java Kqueue implementation, This is based on >> the work that was previously shared in >> https://github.com/openjdk/jdk/pull/22307 , The main change since then is >> that this branch takes advantage of the changes made in >> https://github.com/openjdk/jdk/pull/25043 to allow for better performance >> during errno handling. >> >> These changes feature a lot of Jextract generated files, though alterations >> have been made in relation to Errno handling and performance improvements. >> >> I will update this description soon to include performance metrics on a few >> microbenchmarks, though currently it's roughly 2% to 3% slower with the >> changes, which is somewhat expected, though there are still a few ideas of >> possible performance improvements that could be tried. Any suggestions or >> comments in that area are more than welcome however. > > Darragh Clarke has updated the pull request incrementally with one additional > commit since the last revision: > > implementing feedback, adding missing errno checks, cleanup src/java.base/macosx/classes/sun/nio/ch/KQueuePoller.java line 50: > 48: "kqueue failed"); > 49: } > 50: this.kqfd = res; Maybe this duplicated check should probably be moved into a common method in `KQueue`, like the old `KQueue.create()` method, but implemented in **Java**: static int create() throws IOException { int res = kqueue_h.kqueue(); if (res < 0) { throw ErrnoUtils.IOExceptionWithErrnoString(-res, "kqueue failed"); } return res; } ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/25546#discussion_r2285879853
