diff options
| author | Vladlen Popolitov <vladlen@FreeBSD.org> | 2026-11-09 20:51:20 +0000 |
|---|---|---|
| committer | Vladlen Popolitov <vladlen@FreeBSD.org> | 2026-11-09 20:51:20 +0000 |
| commit | 1b9f65b4cf60c125dbefa2fa6ae73c8f7ea3e9f0 (patch) | |
| tree | 8c27a61144dc50a62d9884c5e1e459dd8fde6b0a | |
| parent | 71615d607677bac6538342886033a32580bfd29b (diff) | |
website: translate Status report Q3 2026 to russian
Differential Revision: https://reviews.freebsd.org/D61238
5 files changed, 219 insertions, 0 deletions
diff --git a/website/content/ru/status/report-2026-07-2026-09/aq.adoc b/website/content/ru/status/report-2026-07-2026-09/aq.adoc new file mode 100644 index 0000000000..ea75012bc6 --- /dev/null +++ b/website/content/ru/status/report-2026-07-2026-09/aq.adoc @@ -0,0 +1,31 @@ +=== Драйвер устройств Aquantia / Marvell aq(4) + +Ссылки: + +link:https://cgit.freebsd.org/src/commit/?id=493d26c58e732dcfcdd87993ef71880adfe9d0cb[Коммит, добавляющий снимок драйвера aq(4)] URL: https://cgit.freebsd.org/src/commit/?id=493d26c58e732dcfcdd87993ef71880adfe9d0cb + +link:https://cgit.freebsd.org/src/commit/?id=75177aebf0397af36b1f28f6b6e64207ec3d8188[Коммит, добавляющий инфраструктуру сборки aq(4)] URL: https://cgit.freebsd.org/src/commit/?id=75177aebf0397af36b1f28f6b6e64207ec3d8188 + +link:https://cgit.freebsd.org/src/commit/?id=dc5c0fc51cf47d6dfc737343e06805db294258e9[Коммит, добавляющий поддержку Atlantic 2 (AQC113)] URL: https://cgit.freebsd.org/src/commit/?id=dc5c0fc51cf47d6dfc737343e06805db294258e9 + + +Контакт: Ed Maste <emaste@freebsd.org> + +Контакт: Nick Price <nprice@freebsd.org> + +Устройства Aquantia (ныне Marvell) AQtion — это мультигигабитные Ethernet-контроллеры PCIe, поддерживающие скорости до 10 Гбит/с. +Они встречаются на материнских платах рабочих станций и настольных компьютеров, а также на дополнительных сетевых картах. + +Aquantia опубликовала драйвер FreeBSD для своих контроллеров первого поколения "Atlantic", но он некоторое время не поддерживался. +Разработчики FreeBSD внесли некоторые исправления в репозиторий производителя, но несколько pull-запросов так и остались без ответа. +Драйвер был доступен в коллекции портов как пакет package:net/aquantia-atlantic-kmod[] с некоторыми дополнительными патчами, но он не входил в базовую систему и не поддерживал новые устройства. + +Ed Maste импортировал снимок драйвера производителя, применил патчи из неслитых pull-запросов и порта, написал страницу руководства man:aq[4] и подключил драйвер к сборке. + +С тех пор Nick Price добавил поддержку контроллеров второго поколения Atlantic 2 (AQC113) и внёс обширные исправления и улучшения по всему драйверу. +Среди них — включение jumbo-фреймов, программного LRO и приостановки/возобновления; исправление распределения очередей RSS и соблюдение политики RSS ядра; расширение и исправление разгрузки контрольных сумм и VLAN, а также фильтрации VLAN/многоадресных рассылок; повышение надёжности путей attach, detach, reset, interrupt и RX/TX; обработка теплового отключения PHY; улучшение диагностики и отчётности о состоянии канала. + +Драйвер доступен в снимках -CURRENT и был перенесён (MFC) в stable/15 для включения в FreeBSD 15.2. + +Спонсор: The FreeBSD Foundation (работа Ed) + +// +// The FreeBSD Russian Documentation Project +// +// Original EN revision (05.11.2026): 472c7bcd1a7c38b3b915f7b5652d6341415a2be7 +// diff --git a/website/content/ru/status/report-2026-07-2026-09/bpf-ifnet-hardening.adoc b/website/content/ru/status/report-2026-07-2026-09/bpf-ifnet-hardening.adoc new file mode 100644 index 0000000000..36ab259524 --- /dev/null +++ b/website/content/ru/status/report-2026-07-2026-09/bpf-ifnet-hardening.adoc @@ -0,0 +1,50 @@ +=== Ужесточение контракта BPF/ifnet: D59140 + +Ссылки: + +link:https://reviews.freebsd.org/D59140[Ревизия в Phabricator] URL: link:https://reviews.freebsd.org/D59140[] + +link:https://github.com/LuisCastellanos-dev/vtr-sentinel-kmod/tree/vtr-sentinel-14.5/reproducers/D59140[Репродьюсер и эпистемическая запись] URL: link:https://github.com/LuisCastellanos-dev/vtr-sentinel-kmod/tree/vtr-sentinel-14.5/reproducers/D59140[Репродьюсер и эпистемическая запись] + +Контакт: Luis Castellanos <ing.castellanosdz@gmail.com> + +==== Описание + +В третьем квартале 2026 года был проведён обзор пути `bpf_movein()` в [.filename]#sys/net/bpf.c# после наблюдавшегося сбоя при записи в дескриптор BPF на `lo0` (FreeBSD 14.4-RELEASE-p8). + +Первоначальным наблюдением был man:write[2], возвращающий `EAFNOSUPPORT` при отправке пакета через дескриптор BPF, привязанный к `lo0` (DLT_NULL). +Исходная атрибуция — отсутствие инициализации `sa_len` в драйверах `if_output` — не подтвердилась после независимого обзора, проведённого mailto:glebius@FreeBSD.org[Gleb Smirnoff]. + +Обзор установил, что репродьюсер нарушал контракт DLT_NULL: man:write[2] в дескриптор BPF должен добавлять в начало 32-битное слово в порядке байтов хоста, содержащее семейство адресов. +Проверка `sa_len`, предложенная в отдельных драйверах ([.filename]#if_disc.c#, [.filename]#if_gif.c#, [.filename]#if_loop.c#, [.filename]#if_me.c#, [.filename]#if_tuntap.c#), не требуется, поскольку существующий контракт интерфейса BPF/ifnet уже определён на границе BPF в `bpf_movein()`. + +После этого обзора D59140 был обновлён — добавлено защитное утверждение в `bpf_movein()` по предложению Gleb: + +[source,c] +---- +MPASS(hlen <= sizeof(sockp->sa_data)); +---- + +Это делает существующий контракт BPF/ifnet явным посредством защитного утверждения в точке, где контракт потребляется. +Утверждение защищает инвариант границ `sa_data` в точке, где потребляется вычисленная длина заголовка. + +==== Выполненная работа + +* Выявлен и воспроизведён `EAFNOSUPPORT` на `lo0` с помощью BPF man:write[2] на FreeBSD 14.4-RELEASE-p8. +* Отправлен D59140 в Phabricator с первоначальным исправлением, нацеленным на пять драйверов `if_output`. +* Получен обзор от Gleb Smirnoff, выявивший дефект репродьюсера: отсутствие 32-битного заголовка семейства адресов DLT_NULL в пакете. +* Репродьюсер исправлен и проверен локально на FreeBSD 14.5-RELEASE. +* D59140 обновлён: проверки на уровне драйверов заменены одним утверждением `MPASS` в `bpf_movein()` (Diff 186596). +* Обновлены Summary и Test Plan в D59140 для документирования полной истории исследования: наблюдённый сбой -> исходная атрибуция -> независимое опровержение -> исправленный репродьюсер -> локальная проверка -> предложение по ужесточению в upstream. + +==== Работа в процессе + +* D59140 (Diff 186596) находится на обзоре в upstream. + +==== Открытые задачи + +* Ожидать обзор в upstream и решение по Diff 186596. + +// +// The FreeBSD Russian Documentation Project +// +// Original EN revision (05.11.2026): 472c7bcd1a7c38b3b915f7b5652d6341415a2be7 +// diff --git a/website/content/ru/status/report-2026-07-2026-09/doceng.adoc b/website/content/ru/status/report-2026-07-2026-09/doceng.adoc new file mode 100644 index 0000000000..152790364c --- /dev/null +++ b/website/content/ru/status/report-2026-07-2026-09/doceng.adoc @@ -0,0 +1,37 @@ +include::shared/authors.adoc[] +include::shared/ru/urls.adoc[] + +=== Команда документационной инженерии + +Ссылки: + +link:https://docs.freebsd.org/[Портал проекта документации] URL: link:https://docs.freebsd.org/[] + +link:https://docs.freebsd.org/en/books/fdp-primer/[Руководство по проекту документации для новых участников] URL: link:https://docs.freebsd.org/en/books/fdp-primer/[] + +link:https://www.freebsd.org/administration/#t-doceng[Команда документационной инженерии] URL: link:https://www.freebsd.org/administration/#t-doceng[] + +Контакт: Documentation Engineering Team <doceng@FreeBSD.org> + +Команда документационной инженерии отвечает за определение целей документации для коммиттеров проекта документации и контроль за их выполнением. +Устав команды doceng подробно описывает обязанности и сферу ответственности команды документационной инженерии. + +В этом квартале в проекте документации, помимо текущего сопровождения, несколько проектов были завершены или находились в работе: + +* {dch} добавил link:{handbook}containers[главу об OCI-контейнерах] в Handbook. +* {bcr} и {carlavilla} обновили link:{handbook}zfs[главу о ZFS] в Handbook. +* {dbaio} улучшил примеры в handbook, добавив кнопку копирования, которая опускает приглашение оболочки. +* {dbaio} обновил package:textproc/po4a[], инструментарий перевода, до версии 0.74. +* {alven} обновил package:textproc/groff[], инструментарий GNU для страниц руководства, до версии 1.24.2. +* {fernape} обновил package:www/gohugo[], генератор сайта, до версии 1.76.0. +* {wosch} обновил link:https://man.FreeBSD.org[man.FreeBSD.org], старейший и крупнейший архив страниц руководства в интернете. +* {ziaee} обновил link:{fdp-primer}manual-pages/#manual-pages-sample-structures-section-4[руководящие указания для руководств по драйверам устройств]; приведение всех руководств к этому формату продолжается. +* {ziaee} улучшает совместимость страниц руководства с предстоящей версией package:textproc/mandoc[] 1.15. +* {vladlen} и {carlavilla} вложили значительную работу в корректность кода веб-сайта проекта. +* {vladlen} и {andy} усердно работали над поддержанием актуальности русского перевода. + +В этом квартале {vladlen} был повышен до doc commit bit. +Другие commit bit в этом квартале не выдавались и не изымались на хранение. + +// +// The FreeBSD Russian Documentation Project +// +// Original EN revision (05.11.2026): 766c7b5cdfc7728605a4966fcc8213ac30758fd1 +// diff --git a/website/content/ru/status/report-2026-07-2026-09/nfsrdma.adoc b/website/content/ru/status/report-2026-07-2026-09/nfsrdma.adoc new file mode 100644 index 0000000000..74b3c35017 --- /dev/null +++ b/website/content/ru/status/report-2026-07-2026-09/nfsrdma.adoc @@ -0,0 +1,36 @@ +=== NFS через Remote Direct Memory Access (RDMA) + +Ссылки: + +link:https://github.com/viniciusferrao/freebsd-src.git[Актуальные исходники NFS-сервера в ветке freebsd-rdma] URL: link:https://github.com/viniciusferrao/freebsd-src.git[] +link:https://people.freebsd.org/~rmacklem/nfs-over-rdma-setup.txt[nfs-over-rdma-setup.txt] URL: link:https://people.freebsd.org/~rmacklem/nfs-over-rdma-setup.txt[] + +Контакт: Rick Macklem <rmacklem@freebsd.org>, Vinicius Ferrao <ferrao@versatushpc.com.br> + +В настоящее время NFS в FreeBSD поддерживается через TCP (и UDP для NFSv3). +Этот проект добавляет поддержку NFS через RDMA, как описано в RFC-8166 и RFC-8267. +Это должно позволить RDMA-совместимым сетевым картам разгрузить большую часть сетевого транспорта и повысить производительность в быстрых локальных сетях. + +Благодаря Vinicius был достигнут значительный прогресс. +У него работает серверная сторона NFS, и, насколько я знаю, довольно хорошо. + +Клиентская сторона теперь довольно хорошо тестируется против сервера Vinicius, и как клиент, и сервер готовы к тестированию третьими сторонами. +Для тестирования требуются клиент и сервер с сетевыми картами Mellanox ConnectX4->6, работающие на ядре, собранном из недавних исходников FreeBSD main. + +Информацию о настройке тестовой среды см. в [.filename]#nfs-over-rdma-setup.txt#. + +Ядра stable/15 должно быть достаточно для загружаемых модулей через несколько недель. +Клиентский код также должен быть закоммичен в FreeBSD main через несколько недель, с MFC в stable/15 к концу 2026 года. +Серверный код был создан с помощью генеративного ИИ, и проект FreeBSD работает над политикой обработки материалов, созданных генеративным ИИ. +Тем временем серверный код будет доступен как "неофициальный порт", собирающий загружаемый модуль ядра. + +Мы были бы очень признательны тестированию третьими сторонами. + +Спасибо Vinicius за работу над NFS-сервером и участникам кластера FreeBSD Netperf, без которых я бы никогда не протестировал этот код. + +Спонсор серверного кода NFS: Verastus HPC + +// +// The FreeBSD Russian Documentation Project +// +// Original EN revision (01.11.2026): 0de2be4cfdb080567055a3c3811901d191aa8e1f +// diff --git a/website/content/ru/status/report-2026-07-2026-09/sbom.adoc b/website/content/ru/status/report-2026-07-2026-09/sbom.adoc new file mode 100644 index 0000000000..3b3b762b31 --- /dev/null +++ b/website/content/ru/status/report-2026-07-2026-09/sbom.adoc @@ -0,0 +1,65 @@ +=== Перечень программных компонентов FreeBSD (SBOM) + +Ссылки: + +link:https://reviews.freebsd.org/D59528[sys/arm/arm/busdma_machdep.c: исправление SPDX-License-Identifier] URL: https://reviews.freebsd.org/D59528 + +link:https://reviews.freebsd.org/D59527[sys/powerpc/powerpc/busdma_machdep.c: исправление SPDX-License-Identifier] URL: https://reviews.freebsd.org/D59527 + +link:https://reviews.freebsd.org/D59526[sys/powerpc/powerpc/busdma_bounce.c: исправление SPDX-License-Identifier] URL: https://reviews.freebsd.org/D59526 + +link:https://reviews.freebsd.org/D59525[sys/x86/x86/busdma_machdep.c: исправление SPDX-License-Identifier] URL: https://reviews.freebsd.org/D59525 + +link:https://reviews.freebsd.org/D59524[sys/x86/x86/busdma_bounce.c: исправление SPDX-License-Identifier] URL: https://reviews.freebsd.org/D59524 + +link:https://reviews.freebsd.org/D59523[sys/kern/subr_busdma_bounce.c: исправление SPDX-License-Identifier] URL: https://reviews.freebsd.org/D59523 + +link:https://reviews.freebsd.org/D60352[D60352] URL: https://reviews.freebsd.org/D60352 +link:https://reviews.freebsd.org/D60441[D60441] URL: https://reviews.freebsd.org/D60441 + +Открытые upstream PR по SPDX license identifier: + +link:https://github.com/freebsd/atf/pull/128[ATF PR#128] URL: https://github.com/freebsd/atf/pull/128 + +link:https://gnats.netbsd.org/60308[bmake NetBSD GNATS#60308] URL: https://gnats.netbsd.org/60308 + +link:https://github.com/NLnetLabs/ldns/issues/305[LDNS ISSUE#305] URL: https://github.com/NLnetLabs/ldns/issues/305 + +link:https://github.com/gwsw/less/pull/792[Less PR#792] URL: https://github.com/gwsw/less/pull/792 + +link:https://github.com/libarchive/libarchive/pull/3129[Libarchive PR#3129] URL: https://github.com/libarchive/libarchive/pull/3129 + +link:https://github.com/PJK/libcbor/issues/430[LibCBOR ISSUE#430] URL: https://github.com/PJK/libcbor/issues/430 + +link:https://github.com/libevent/libevent/issues/1864[Libevent ISSUE#1864] URL: https://github.com/libevent/libevent/issues/1864 + +link:https://github.com/the-tcpdump-group/libpcap/pull/1689[LibPCAP PR#1689] URL: https://github.com/the-tcpdump-group/libpcap/pull/1689 + +link:https://github.com/vstakhov/libucl/pull/386[LibUCL PR#386] URL: https://github.com/vstakhov/libucl/pull/386 + +link:https://bugs.astron.com/view.php?id=777[TCSH Mantis#777] URL: https://bugs.astron.com/view.php?id=777 + + +Контакт: Tuukka Pasanen <tuukka.pasanen@ilmi.fi> + +Работа над перечнем программных компонентов FreeBSD (SBOM) продолжалась в третьем квартале 2026 года. +Наконец, включение SBOM в исходники FreeBSD обретает реальные очертания и, как мы надеемся, будет завершено в четвёртом квартале. +Благодаря Pierre Pronchery идёт обзор в Phabricator: https://reviews.freebsd.org/D60352[D60352] для исходников FreeBSD. +Кроме того, для портов есть обзор: https://reviews.freebsd.org/D60441[D60441], сделанный Mathieu Arnold. + +В качестве вариантов вывода SBOM сейчас доступны SPDX 2.2 и Lite 3.0.1. +Инструмент CycloneDX SBOM находится в разработке и всё ещё требует доработки, чтобы быть столь же качественным, как вывод SPDX. +В будущем все варианты вывода SBOM будут объединены в одном инструменте под названием `sbomtool`, и, поскольку оба решения полагаются на pkgconf, они получат поддержку CycloneDX, когда она появится в исходниках FreeBSD. + +Кроме того, были приняты несколько новых SPDX License Identifiers. Все три присутствуют в исходниках FreeBSD: +* link:https://github.com/spdx/license-list-XML/issues/3007[BSD-2-Clause-pos-unchanged] +* link:https://github.com/spdx/license-list-XML/issues/3000[BSD-Source-Code-no-disclaimer] +* link:https://github.com/spdx/license-list-XML/issues/2939[BSD-Source-alt-GPL] + +На рассмотрении находится несколько обновлений с `BSD-2-Clause` на `BSD-Source-beginning-file`: + +* link:https://reviews.freebsd.org/D59528[sys/arm/arm/busdma_machdep.c: исправление SPDX-License-Identifier] +* link:https://reviews.freebsd.org/D59527[sys/powerpc/powerpc/busdma_machdep.c: исправление SPDX-License-Identifier] +* link:https://reviews.freebsd.org/D59526[sys/powerpc/powerpc/busdma_bounce.c: исправление SPDX-License-Identifier] +* link:https://reviews.freebsd.org/D59525[sys/x86/x86/busdma_machdep.c: исправление SPDX-License-Identifier] +* link:https://reviews.freebsd.org/D59524[sys/x86/x86/busdma_bounce.c: исправление SPDX-License-Identifier] +* link:https://reviews.freebsd.org/D59523[sys/kern/subr_busdma_bounce.c: исправление SPDX-License-Identifier] + +Кроме того, многие сторонние репозитории получили SPDX License Identifiers, например libxo (спасибо Juniper за это), и другие. +Некоторые проекты не хотят добавлять заголовки, а некоторые всё ещё находятся в активной разработке. + +Если вы хотите помочь в этой работе: + +* Проверяйте изменения в Phabricator. + Исправления SPDX License Identifier находятся на очень низком уровне и легко поддаются проверке. +* Когда станет доступен pkgconf CycloneDX, помогите с его проверкой и тестированием. + +Спонсор: Фонд FreeBSD + +// +// The FreeBSD Russian Documentation Project +// +// Original EN revision (01.11.2026): 6b95694419272b9b55416bcfbcb260e5fa6ff8f7 +// |
