diff --git a/website/content/en/status/report-2026-04-3036-06/openjdk.adoc b/website/content/en/status/report-2026-04-3036-06/openjdk.adoc new file mode 100644 index 0000000000..77ee433995 --- /dev/null +++ b/website/content/en/status/report-2026-04-3036-06/openjdk.adoc @@ -0,0 +1,61 @@ +=== Improve OpenJDK on FreeBSD + +Links: + +link:https://freebsdfoundation.org/project/improving-openjdk-on-freebsd/[Project description] URL: https://freebsdfoundation.org/project/improving-openjdk-on-freebsd/[] + +link:https://github.com/freebsd/openjdk[Project repository] URL: https://github.com/freebsd/openjdk[] + +link:https://github.com/openjdk/bsd-port[Upstream BSD port repo] URL: https://github.com/openjdk/bsd-port[] + +Contact: + +Harald Eilertsen + +FreeBSD Java mailing list + +The goal of this project is to improve OpenJDK support for FreeBSD/amd64 and FreeBSD/arm64. + +Java is an important runtime environment for many high performance, critical enterprise systems. +Making sure Java based applications run correctly and efficiently on FreeBSD is important to ensure that FreeBSD will continue to be a viable and attractive platform for enterprises, as well as businesses and organizations of all sizes. + +This quarter has been spent mostly on getting the upstreaming process properly going. +We submit patches to a link:https://github.com/openjdk/bsd-port[separate repository] under the OpenJDK org on Github, and make sure that each PR is reviewed by at least one upstream reviewer. +This way, when we get to the point where we want to merge our port into the upstream mainline, all commits should already be reviewed by someone in the project. + +This is a fairly slow process, as we depend on upstream reviewers having time. +We also encounter that some of the changes that has been living in our port for a long time is rejected. +Then we have to rework them, or if not strictly needed, just throw them out. +I feel this is a useful correction, but sometimes causes quite a bit of work. + + +In this quarter the following issues/milestones were reached: + +* OpenJDK 25 port was updated to link:https://reviews.freebsd.org/D56522[version 25.0.3]. +* Upstream mainline changes and bugfixes: + - link:https://github.com/openjdk/jdk/pull/30853[8382614: Consolidate implementation of current_stack_base_and_size on BSD] + - link:https://github.com/openjdk/jdk/pull/31069[8384085: Make os::Bsd::dlopen_helper private, and drop unused arg] + - link:https://github.com/openjdk/jdk/pull/31070[8384088: osThread _thread_id should be an int on all BSD's] + - link:https://github.com/openjdk/jdk/pull/31199[8384946: os::Bsd::gettid misses the return value] + - link:https://github.com/openjdk/jdk/pull/31455[8386344: runtime/StackGuardPages/TestStackGuardPages build failure after JDK-8303612] +* Upstream BSD Port: + - link:https://github.com/openjdk/bsd-port/pull/7[Fix conditional sections for BSD in hotspot/cpu] + - link:https://github.com/openjdk/bsd-port/pull/8[Port hotspot/os/posix for BSD] + - Merged changes accepted for mainline. +* Current (out-of-tree) BSD port: + - link:https://github.com/battleblow/jdk/pull/49[Merge + Remove VFORK for BSD + rebase GHA workflow on OpenJDK26] + - link:https://github.com/battleblow/jdk/pull/53[Merge + Fix usage of FREE_C_HEAP_ARRAY macro on BSD] + - link:https://github.com/battleblow/jdk/pull/54[Sync aarch64 cpuinfo impl for *BSD with Linux] + - link:https://github.com/battleblow/jdk/pull/55[Remove duplicate include in global defs for zero] + - link:https://github.com/battleblow/jdk/pull/59[Remove ThreadWXEnable from BSD code] + - Backported changes accepted for mainline upstream BSD port. +* Ports: + - link:https://cgit.freebsd.org/ports/commit/?id=7878106082fd1f07814d754ef767c1f59168d1e9[java/javavmwrapper: JAVA_VERSION does not work with openjdk25] + +In addition, these tasks are still ongoing, or waiting for review: + +* Upstream BSD port: + - link:https://github.com/openjdk/bsd-port/pull/9[Port hotspot/os/bsd/os_perf_bsd.cpp to BSD] (Waiting for refactor, see link:https://github.com/battleblow/jdk/pull/61[WIP: Split os_perf impl for macOS and BSD]) + - link:https://github.com/openjdk/bsd-port/pull/11[os::get_process_uid and os::rss for BSD] (Still ongoing) + +Other notes: + +* Started preparing for link:https://github.com/snake66/jdk/tree/freebsd-jdk27[OpenJDK 27 port]. +* Presented the project at link:https://foss-north.se/2026/speakers-and-talks.html#heilertsen[Foss North 2026]. + +Sponsor: The FreeBSD Foundation