diff options
Diffstat (limited to 'website')
7 files changed, 132 insertions, 31 deletions
diff --git a/website/content/en/releases/15.0R/relnotes.adoc b/website/content/en/releases/15.0R/relnotes.adoc index 5763769b9a..38875de006 100644 --- a/website/content/en/releases/15.0R/relnotes.adoc +++ b/website/content/en/releases/15.0R/relnotes.adoc @@ -57,9 +57,6 @@ Clearly the release notes cannot list every single change made to FreeBSD betwee [[upgrade]] == Upgrading from Previous Releases of FreeBSD -NOTE: FreeBSD Update is probably not going to exist in {releaseCurrent}! -The text below is boilerplate from previous releases and should be replaced with instructions for using pkgbase once those are finalized. - Binary upgrades between RELEASE versions (and snapshots of the various security branches) are supported using the man:freebsd-update[8] utility. See the release-specific upgrade procedure, link:../installation/#upgrade-binary[FreeBSD {releaseCurrent} upgrade information], with more details in the FreeBSD handbook link:{handbook}cutting-edge/#freebsdupdate-upgrade[binary upgrade procedure]. This will update unmodified userland utilities, as well as unmodified GENERIC kernels distributed as a part of an official FreeBSD release. @@ -904,7 +901,7 @@ gitref:3965be101c43[repository=src] [[wireless-networking]] === Wireless Networking -The LinuxKPI 802.11 comapt layer man:linuxkpi_wlan[4] gained support for the Galois/Counter Mode Protocol (GCMP) from man:wlan_gcmp[4]. (Sponsored by The FreeBSD Foundation) +The LinuxKPI 802.11 compatibility layer man:linuxkpi_wlan[4] gained support for the Galois/Counter Mode Protocol (GCMP) from man:wlan_gcmp[4]. (Sponsored by The FreeBSD Foundation) The man:rtw88[4] driver was made to work (associate) again and a memory leak got resolved. (Sponsored by The FreeBSD Foundation) diff --git a/website/content/en/status/report-2025-07-2025-09/drm-drivers-slowdowns_fixes.adoc b/website/content/en/status/report-2025-07-2025-09/drm-drivers-slowdowns_fixes.adoc new file mode 100644 index 0000000000..5358c1de53 --- /dev/null +++ b/website/content/en/status/report-2025-07-2025-09/drm-drivers-slowdowns_fixes.adoc @@ -0,0 +1,40 @@ +=== DRM Drivers Slowdowns and Freezes Fixes + +Links: + +link:https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277476[Main PR] URL: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277476 + +link:https://github.com/freebsd/drm-kmod/issues/302[drm-kmod GitHub issue] URL: https://github.com/freebsd/drm-kmod/issues/302 + +Contact: Olivier Certner <olce.freebsd.statusreports@certner.fr> + +Owners of AMD GPUs using the amdgpu DRM driver from the `drm-kmod` ports, especially starting with v5.15 (`drm-515-kmod`), have been experiencing gradual slowdowns and freezes since at least May 2024. +Code analysis suggests that recent Intel-based GPUs (gen 13+) may also be affected. +We are pleased to announce that, to the best of our knowledge, all these problems have been fixed. + +We encourage people to test the latest FreeBSD code on branches `main`, `stable/15` or `stable/14`. +The fixes will be included in the upcoming 15.0 and 14.4 releases. +Errata notices and patches may be issued for 14.3 in order for people not to have to wait until 14.4 (whose release should tentatively happen next March). +An additional fix will find its way in the `drm-kmod` ports (see below). + +Investigations revealed that the crux of all these problems has been bad handling of too frequent, and generally not really necessary, physically contiguous memory allocation requests in fast paths. +Basically, the DRM's TTM component tries to allocate pools of graphics memory pages that are as much as possible physically contiguous in order to reduce the number of corresponding TLB entries. +It does it in a loop that first tries to allocate pages of higher order with the `__GFP_NORETRY` flag, gradually falling back to smallest ones (see `ttm_pool_alloc()`). + +The first problem is that our LinuxKPI did not handle Linux's `__GFP_NORETRY` flag and would try hard to fulfill the first requests, i.e., those with highest order pages, using expensive mechanisms to obtain or produce contiguous memory if not readily available. +A first fix by Mathieu (`sigsys` at `gmail` with regular company suffix) removed memory compaction from this process (foregoing calls to `vm_page_reclaim_contig()`). +This fix was then completed by stopping the VM system from trying to break memory reservations, which are pieces of a speculative mechanism that tries to automatically provoke the use of superpages. + +Another problem came from evolutions of our LinuxKPI. +In order to better comply with what Linux does, `kmalloc()` was changed to always return physically contiguous memory. +Unfortunately, `kvzalloc()`, which relied on `kmalloc()` in our implementation (which was conceptually wrong, but initially harmless in practice), was not switched to rely on `kvmalloc()` in the process, effectively turning large memory allocations of zeroed pages into costly physically contiguous ones. + +Some rough profiling of slowdowns was done using `dtrace`. +It revealed that a fair amount of execution time of the failing allocations came from attempting multiple allocation on the same NUMA domain, and that of succeeding ones came from useless changes to page attributes, triggering expensive TLB shootdowns. +An analysis of the VM domainset iterators code revealed multiple flaws, in particular leading to re-examining the same domain multiple times (up to 4 times for the common case of machines with a single domain) without any additional guarantees of success for new attempts. +Some other VM domainset problems have been fixed in the process, such as ensuring that allocation requests prefer domains not on a low memory condition in all situations. + +Finally, concerning specifically the amdgpu driver and affecting only Carrizo, Polaris and Vega M based AMD GPUs, a temporary allocation that was unnecessarily physically contiguous was replaced with a regular one, making the remaining, relatively short but noticeable freezes disappear. +By contrast with those evoked above, this change is to the `drm-kmod` ports' code, and is to be included at the ports' next version bump in the ports tree (expected ports versions: `5.10.163_9`, `5.15.160_6`, `6.1.128_6` and `6.6.25_7` respectively for `drm-510-kmod`, `drm-515-kmod`, `drm-61-kmod` and `drm-66-kmod`). + +This work was sponsored by the FreeBSD Foundation as part of the Laptop Project. + +Sponsor: The FreeBSD Foundation diff --git a/website/content/en/status/report-2025-07-2025-09/group-changes.adoc b/website/content/en/status/report-2025-07-2025-09/group-changes.adoc new file mode 100644 index 0000000000..8d41d0edbe --- /dev/null +++ b/website/content/en/status/report-2025-07-2025-09/group-changes.adoc @@ -0,0 +1,44 @@ +=== Process Credentials' Groups-Related Changes in FreeBSD 15 + +Links: + +link:https://www.freebsd.org/status/report-2025-04-2025-06/#_ucred_group_changes_in_freebsd_15_0[T2 2025 Status Report] URL: https://www.freebsd.org/status/report-2025-04-2025-06/#_ucred_group_changes_in_freebsd_15_0 + +link:https://cgit.freebsd.org/src/commit/?id=9dc1ac869196[initgroups(3): Backwards-compatible implementation and manual page update ] URL: https://cgit.freebsd.org/src/commit/?id=9dc1ac869196 + +link:https://cgit.freebsd.org/src/commit/?id=4be38acc826f[Main commit changing getgroups(2)'s manual page] URL: https://cgit.freebsd.org/src/commit/?id=4be38acc826f + +link:https://cgit.freebsd.org/src/commit/?id=6d22cd6b5f8b[Main commit changing setgroups(2)'s manual page] URL: https://cgit.freebsd.org/src/commit/?id=6d22cd6b5f8b + +Contact: Olivier Certner <olce@FreeBSD.org> + +Contact: Kyle Evans <kevans@FreeBSD.org> + +Starting with FreeBSD 15: + +. [[setgroups_getgroups]]The behavior of the man:setgroups[2] and man:getgroups[2] system calls function has slightly changed. ++ +Out of caution, even if almost all existing applications will continue to work undisturbed, we advise auditing those that you are maintaining or using as explained below. +. [[initgroups]]How processes' group membership is derived from the password and group databases on login has slightly changed: The login user's initial numerical group ID from the password database is now automatically added to the supplementary groups set, even if that user is not explicitly listed as a member of the corresponding group in the group database. +. [[kernel]]The kernel stores the effective group ID in a new specific field of `struct ucred` (`cr_gid`) instead of in the same array as supplementary groups (`cr_ngroups[]`). + +The man:setgroups[2] and man:getgroups[2] system calls will operate only on the calling process' supplementary groups, not featuring the effective group ID as the first element of their array argument. +The man:initgroups[3] function's implementation is unchanged and still relies on man:setgroups[2], with the consequence that it **does not** set the process' effective group ID **anymore**, instead including its `basegid` argument in the supplementary groups set. + +One of the reasons for these changes is to have FreeBSD behave exactly like GNU/Linux systems, NetBSD, OpenBSD and illumos-based operating systems. +Consequently, almost all portable applications should already be compliant with FreeBSD's new behavior and will continue to work correctly or even get fixed in the process (see the previous status report linked above for an example with OpenSSH). +However, porters, system administrators and users are advised to audit their applications that are using man:setgroups[2], man:getgroups[2] and man:initgroups[3], watching out for the following points: + +* Applications should already be using man:setgid[2] or man:setegid[2] in addition to man:setgroups[2] or man:initgroups[3] to set the effective group ID. ++ +If this is not the case, these calls must be added, as otherwise affected applications will stop setting the effective group ID starting from FreeBSD 15. +* Applications using man:getgroups[2] should not be treating the first element of the returned array specially, but as any other supplementary group. ++ +If nonetheless they do, they have to be modified to obtain the effective group ID via man:getegid[2] instead and to treat all groups returned by man:getgroups[2] as supplementary groups only. + +Manual pages of all changed functions have been modified in `stable/14` and `stable/15` to describe and contrast the old and new behaviors, and have grown new `SECURITY CONSIDERATIONS` sections stating the reasons for the changes and the points to watch out for. + +Backwards-compatible implementations of changed functions are provided so that applications compiled on FreeBSD 14 or earlier continue to see the old behaviors and work as before. +They are available if and only if the kernel was compiled with `COMPAT_FREEBSD14`, which is the case of the default `GENERIC` kernel. + +We have normally fixed all unwanted impacts of storing the effective group ID separately from the supplementary groups in the kernel, such as: + +* Some security policies or access checks would either ignore the effective group ID or the first supplementary group (with lowest numerical ID), affecting process visibility restrictions based on group IDs, the "can debug" and "can export KTLS keys" checks, the man:mac_do[4] and man:mac_bsdextended[4] security policies, and access control to some hardware facilities (tracing: man:hwt[4]; performance monitoring: man:hwpmc[4]) and to NFS-served shares. +* Reporting of process' credentials would omit the effective group ID, affecting all variants of `procstat -s` (on live processes, core files, or system core dump), man:ddb[4]. + +Sponsor: The FreeBSD Foundation diff --git a/website/content/en/status/report-2025-07-2025-09/mac_do.adoc b/website/content/en/status/report-2025-07-2025-09/mac_do.adoc index 8c29e839b9..00eed003c5 100644 --- a/website/content/en/status/report-2025-07-2025-09/mac_do.adoc +++ b/website/content/en/status/report-2025-07-2025-09/mac_do.adoc @@ -1,22 +1,31 @@ === mac_do(4) and mdo(1) Improvements Links: + -link:https://wiki.freebsd.org/SummerOfCode2025Projects/MacDoAndMDoImprovements[Wiki page] URL: link:https://wiki.freebsd.org/SummerOfCode2025Projects/MacDoAndMDoImprovements[] +link:https://wiki.freebsd.org/SummerOfCode2025Projects/MacDoAndMDoImprovements[Wiki page] URL: link:https://wiki.freebsd.org/SummerOfCode2025Projects/MacDoAndMDoImprovements[] + +link:https://cgit.freebsd.org/src/commit/?id=3ca1e69028ac[Commit to mdo(1) enabling fine-grained credentials transition requests] URL: https://cgit.freebsd.org/src/commit/?id=3ca1e69028ac -Contact: Kushagra Srivastava <thesynthax@FreeBSD.org> +Contact: Kushagra Srivastava <thesynthax@FreeBSD.org> + +Contact: Olivier Certner <olce@FreeBSD.org> -As part of Google Summer of Code 2025, I worked on two related sub-projects in the FreeBSD Project: kernel improvements to man:mac_do[4] and userland enhancements to man:mdo[1]. +The man:mac_do[4]/man:mdo[1] project aims at allowing controlled process credentials transitions without using setuid executables but instead leveraging our MAC framework. +For more information, please consult the associated manual pages as well as previous status reports from link:../report-2024-07-2024-09/#_mac_do4_setcred2_mdo1[T3 2024] and link:../report-2024-10-2024-12/#_mac_do4_setcred2_mdo1[T4 2024]. -mac_do is a kernel MAC security module that allows controlled credential transitions without requiring setuid binaries. The project extended it in two key ways: +As part of Google Summer of Code 2025, Kushagra worked on extending man:mac_do[4] (kernel) and man:mdo[1] (userland). -* **Per-jail configuration of authorized executables** – administrators can now specify a list of executables per-jail, permitted to request credential transitions, instead of being limited to the hardcoded [.filename]#/usr/bin/mdo#. -* **Support for traditional credential-changing syscalls** – transitions requested via man:setuid[2], man:setgid[2], man:setgroups[2], and related functions are now intercepted and authorized through mac_do, in addition to the original man:setcred[2] mechanism. +Worked-on man:mac_do[4] features: -On the userland side, the companion tool man:mdo[1] was extended to: +* Per-jail configuration of authorized executables: Allow administrators to specify a per-jail list of executables that are permitted to request credential transitions, instead of being limited to the hardcoded [.filename]#/usr/bin/mdo#. +* Support for traditional credential-changing system calls: Allow man:mac_do[4] to assess calls to man:setuid[2], man:setgid[2], man:setgroups[2], and related functions as full credentials transitions on their own. -* Allow explicit UID/GID overrides, fine-grained group management (`-g`, `-G`, `-s` options), and improved credential parsing. -* Provide a `--print-rule` option to display the corresponding mac_do rule for a requested transition. +Worked-on new man:mdo[1] features: -Together, these improvements make mac_do and mdo far more flexible and practical, enabling safer privilege transitions without relying on setuid executables and with strong jail integration. +* Allow finely specifying target groups (`-g`, `-G`, `-s` options), inheriting from current credentials or those of some user in the password and group databases, and explicitly overriding any user and group IDs and supplementary group. +* Provide a `--print-rule` option to switch to a mode that displays an example of the target part of a rule that would match the requested credentials. -Sponsor: Google LLC (Google Summer of Code 2025) +Of these, the man:mdo[1]'s new fine-grained credentials transition requests change has been committed and will appear in 15.0 and 14.4. +The others most probably will land in stable/14 before 14.4, but seem unlikely to appear in 15.0 as they need more review and some amendments. + +Together, these improvements will make man:mac_do[4] and man:mdo[1] more flexible and practical, enabling safer credentials transitions without relying on setuid executables and with strong jail integration. + +Sponsor: Google LLC (Google Summer of Code 2025) + +Sponsor: The FreeBSD Foundation diff --git a/website/content/en/status/report-2025-07-2025-09/valgrind.adoc b/website/content/en/status/report-2025-07-2025-09/valgrind.adoc index ea8fb619fc..9a8a2e1193 100644 --- a/website/content/en/status/report-2025-07-2025-09/valgrind.adoc +++ b/website/content/en/status/report-2025-07-2025-09/valgrind.adoc @@ -32,7 +32,7 @@ Here is a list of bugfixes since my last report, Q1 2024. * Improvements to `setcontest` argument checking * Some more `aio_*` fixes * Syscall `_sysctlname` was checking the wrong length of the name argument -* New syscall wrappers for `kcmp`, `getrlimitusage`, `close_range`, `fchroot`, `setcred`, `exterrctl`, `inotify_add_watch_at`, `inotify_rm_awtch`, `jail_attach_jd` and `jail_remove_jd` +* New syscall wrappers for `kcmp`, `getrlimitusage`, `close_range`, `fchroot`, `setcred`, `exterrctl`, `inotify_add_watch_at`, `inotify_rm_watch`, `jail_attach_jd` and `jail_remove_jd` * Started adding better `ioctl` argument checking * Fixes to Valgrinds self-checking modes * Support aarch64 auxv AT_HWCAP, AT_CHERI_STATS, AT_HWCAP3 and AT_HWCAP4 diff --git a/website/content/ru/about.adoc b/website/content/ru/about.adoc index 5b7b775925..5edad0d18f 100644 --- a/website/content/ru/about.adoc +++ b/website/content/ru/about.adoc @@ -5,41 +5,47 @@ sidenav: about include::shared/ru/urls.adoc[] +// +// The FreeBSD Russian Documentation Project +// +// Original EN revision (27.11.2023): df9b18f881690c6d5864621fd01c189810faed7d +// + = О FreeBSD == Что такое FreeBSD? -FreeBSD - это современная операционная система для компьютеров на архитектуре x86 (в том числе Pentium(R) и Athlon(TM)), amd64 (включая Opteron(TM), Athlon(TM)64 и EM64T), ARM, IA-64, PowerPC, PC-98 и UltraSPARC(R). Она основана на BSD, версии UNIX(R), созданной в Калифорнийском Университете в Беркли. Она разрабатывается и поддерживается link:{contributors}#staff-committers[большой командой разработчиков]. Поддержка link:../platforms/[других платформ] находится на разных стадиях разработки. +FreeBSD - это операционная система для link:../platforms[различных платформ], ориентированная на функциональность, скорость и стабильность работы. Она основана на BSD, версии UNIX(R), созданной в Калифорнийском Университете в Беркли. Разработкой и поддержкой системы занимается link:{contributors}#staff-committers[большое сообщество]. -== Самые современные технологии +== Самые передовые технологии -Исключительный набор сетевых функций, высокая производительность, средства обеспечения информационной безопасности и совместимости с другими ОС - вот те современные link:../features/[возможности] FreeBSD, которые зачастую всё ещё отсутствуют в других, даже лучших коммерческих, операционных системах. +На сегодняшний день FreeBSD обеспечивает современный набор link:../features[возможностей], в том числе передовые сетевые технологии, высокую производительность, средства обеспечения информационной безопасности и совместимости, которые всё ещё отсутствуют в других операционных системах, даже в некоторых самых лучших коммерческих версиях. -== Мощное решение для Internet +== Мощные решения для Internet -FreeBSD является идеальной платформой для построения link:../internet/[Internet или Intranet] сервера. Эта система предоставляет надёжные даже при самой интенсивной нагрузке сетевые службы, и эффективное управление памятью, что позволяет обеспечивать приемлемое время отклика для тысяч одновременно работающих пользовательских задач. +FreeBSD является идеальной платформой для построения сервера в сети Интернет или внутренней сети предприятия. Она обеспечивает сетевые сервисы, надёжно работающие даже при самой высокой нагрузке, и эффективное управление памятью, что позволяет обеспечивать хорошее время реакции для тысяч одновременно работающих пользовательских процессов. -== Продвинутые встраиваемые платформы +== Передовые встраиваемые платформы -FreeBSD предоставляет продвинутые возможности сетевой операционной системы для устройств и встраиваемых платформ, от hi-end устройств на основе Intel до аппаратных платформ Arm, PowerPC и, вскоре, MIPS. От почтовых и веб-устройств до маршрутизаторов, серверов времени и беспроводных точек доступа производители по всему миру полагаются на встроенное окружение сборки и кросс-сборки и продвинутые возможности FreeBSD в качестве основы для своих встраиваемых продуктов. А лицензия открытого исходного кода Беркли позволяет им решать, как много из своих локальных изменений они хотели бы внести обратно. +FreeBSD обеспечивает продвинутые сетевые возможности на уровне операционной системы для специализированных устройств и встраиваемых платформ, от устройств высшего класса на основе Intel до аппаратных платформ на базе ARM, PowerPC и MIPS. От специализированных устройств для обслуживания электронной почты и веб-сервисов до маршрутизаторов, серверов синхронизации времени и беспроводных точек доступа, производители по всему миру полагаются на интегрированные во FreeBSD средства разработки (в том числе кросс-платформенной), а также её продвинутые возможности, в качестве основы для своих встраиваемых продуктов. Лицензия открытого исходного кода Беркли позволяет им самим определять, какими именно из собственных изменений они хотели бы поделиться. -== Огромное количество приложений +== Поддержка огромного количества приложений -С более чем 20 000 портированных библиотек и link:../applications/[приложений], FreeBSD поддерживает приложения для десктопов, серверов, устройств и встраиваемых окружений. +FreeBSD обеспечивает работу более чем 30 000 портированных библиотек и link:../applications/[приложений], предназначенных как для настольных компьютеров, так и серверов, специализированных и встраиваемых устройств. == Простота установки -FreeBSD может быть установлена с различных носителей, включая CD-ROM, DVD, либо непосредственно через сеть, используя FTP или NFS. Всё, что вам нужно - link:{handbook}#install[эти указания]. +FreeBSD может быть установлена с различных носителей, в том числе CD-ROM и DVD, или непосредственно из сети, используя FTP или NFS. Всё, что вам нужно - link:{handbook}bsdinstall[эти указания]. == FreeBSD распространяется _свободно_ [.right ] -link:../copyright/daemon/[image:../../gifs/dae_up3.gif[Даемон BSD,width=72,height=81]] +image:../../gifs/dae_up3.gif[Даемон BSD,width=72,height=81] -Хотя вы можете подумать, что операционная система с такими возможностями продаётся по высокой цене, FreeBSD распространяется link:../copyright/[бесплатно] и поставляется со всеми исходными текстами. Если вам захочется купить или загрузить её копию, обратитесь к link:{handbook}#mirrors[следующей информации]. +Хотя вы можете ожидать, что операционная система с такими возможностями продаётся по высокой цене, FreeBSD распространяется link:../copyright/[бесплатно] и поставляется с исходным кодом. На случай, если вам захочется купить или загрузить её копию для апробации, link:{handbook}mirrors[имеется дополнительная информация]. -== Как принять участие в проекте +== Как принять участие в проекте FreeBSD -Принять участие в проекте очень просто. Всё, что вам нужно сделать - это найти часть FreeBSD, которую, по вашему мнению, можно усовершенствовать, сделать (внимательно и аккуратно) соответствующие изменения и отправить их в адрес Проекта либо с помощью утилиты send-pr, либо непосредственно коммиттеру, если вы его знаете. Эта работа может представлять собой что угодно, от документации до исходных текстов. Подробнее об этом можно прочитать link:{contributing}[здесь.] +Принять участие в проекте очень просто. Всё, что вам нужно сделать - это найти ту часть FreeBSD, которую, по вашему мнению, можно улучшить, выполнить (внимательно и аккуратно) соответствующие изменения и отправить их либо в адрес Проекта с помощью утилиты send-pr, либо какому-нибудь коммиттеру, если вы знаете кого-то из них. Эта работа может представлять собой что угодно, от документации и графики до исходных текстов. Обратитесь к статье об link:{contributing}[Участии в проекте] для получения более полной информации. -Даже если Вы не программист, есть другие способы помочь FreeBSD в развитии. The http://www.FreeBSDFoundation.org[FreeBSD Foundation] - это некоммерческая организация, для которой все пожертвования и денежная помощь не облагаются налогами. Для получения более полной информации пишите на адрес board@FreeBSDFoundation.org или: The FreeBSD Foundation, P.O. Box 20247, Boulder, CO 80303, USA. +Даже если Вы не программист, есть другие способы помочь FreeBSD. https://www.freebsdfoundation.org[Фонд FreeBSD] является некоммерческой организацией, прямая помощь в адрес которой может быть полностью вычтена из налогооблагаемой базы. Для получения более полной информации, пожалуйста, посетите эту link:https://freebsdfoundation.org/about-us/contact-us/[страницу]. diff --git a/website/data/en/news/news.toml b/website/data/en/news/news.toml index 8657a7f010..6ba9996db8 100644 --- a/website/data/en/news/news.toml +++ b/website/data/en/news/news.toml @@ -1,6 +1,11 @@ # Sort news by year, month and day [[news]] +date = "2025-10-18" +title = "FreeBSD 15.0-BETA2 Available" +description = "The second BETA build for the FreeBSD 15.0 release cycle is now available. ISO images for the amd64, armv7, aarch64, powerpc64, powerpc64le, and riscv64 architectures are <a href=\"https://lists.freebsd.org/archives/freebsd-stable/2025-October/003466.html\">available</a> on most of our <a href=\"https://docs.freebsd.org/en/books/handbook/mirrors/#mirrors-ftp\">FreeBSD mirror sites</a>." + +[[news]] date = "2025-10-12" title = "FreeBSD 15.0-BETA1 Available" description = "The first BETA build for the FreeBSD 15.0 release cycle is now available. ISO images for the amd64, armv7, powerpc64, powerpc64le, and riscv64 architectures are <a href=\"https://lists.freebsd.org/archives/freebsd-stable/2025-October/003383.html\">available</a> on most of our <a href=\"https://docs.freebsd.org/en/books/handbook/mirrors/#mirrors-ftp\">FreeBSD mirror sites</a>." |