RFR: 8338858: Replace undocumented APIs with documented APIs in the OpenJDK
Dhamoder Nalla
dhanalla at openjdk.org
Thu Aug 22 18:28:12 UTC 2024
The `wepoll` code has been ported from opensource repo [`wepoll`](https://github.com/piscisaureus/wepoll) to OpenJDK in PR [pull/3816](https://github.com/openjdk/jdk/pull/3816), which incorporated undocumented Windows APIs (NtCreateKeyedEvent, NtReleaseKeyedEvent, NtWaitForKeyedEvent).
This PR aims to replace these undocumented APIs with documented synchronization APIs.
Test Performed:
1. All 12 tests in wepoll repo passed
test-auto-drop-on-close PASS
test-connect-fail-events PASS
test-connect-success-events PASS
test-ctl-fuzz PASS
test-error PASS
test-leak-1 PASS
test-mixed-socket-types PASS
test-multi-poll PASS
test-oneshot-and-hangup PASS
test-reflock PASS
test-tree PASS
test-udp-pings PASS
DONE - 12 PASSED, 0 FAILED
2. No new failure in JTreg test
3. Micro bench results: similar performance score before and after the changes
without change in this PR:
![image](https://github.com/user-attachments/assets/c784d00e-3f0a-483d-b60a-c7a46aba885c)
With the change in this PR:
![image](https://github.com/user-attachments/assets/5e6a68bc-48ae-475f-891e-395941068f6e)
-------------
Commit messages:
- 8338858:Replace undocumented APIs with documented APIs in the OpenJDK
Changes: https://git.openjdk.org/jdk/pull/20682/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20682&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8338858
Stats: 84 lines in 2 files changed: 32 ins; 32 del; 20 mod
Patch: https://git.openjdk.org/jdk/pull/20682.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/20682/head:pull/20682
PR: https://git.openjdk.org/jdk/pull/20682
More information about the nio-dev
mailing list