Date: Fri, 28 Nov 2025 13:22:57 +0000 From: Olivier Certner <olce@FreeBSD.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org Subject: git: d9020ef3c1 - main - Status/2025Q3/drm-drivers-slowdowns_fixes.adoc: Update pkg versions, fix nits Message-ID: <6929a231.22cec.18c4f941@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/doc/commit/?id=d9020ef3c1ac5314efb1bc043cfb309418753d77 commit d9020ef3c1ac5314efb1bc043cfb309418753d77 Author: Olivier Certner <olce@FreeBSD.org> AuthorDate: 2025-11-28 13:21:25 +0000 Commit: Olivier Certner <olce@FreeBSD.org> CommitDate: 2025-11-28 13:21:25 +0000 Status/2025Q3/drm-drivers-slowdowns_fixes.adoc: Update pkg versions, fix nits Sponsored by: The FreeBSD Foundation --- .../status/report-2025-07-2025-09/drm-drivers-slowdowns_fixes.adoc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) 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 index 5358c1de53..d33572a58f 100644 --- 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 @@ -28,12 +28,15 @@ In order to better comply with what Linux does, `kmalloc()` was changed to alway 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. +It revealed that a fair amount of execution time of the failing allocations came from attempting multiple allocations in the same NUMA domain. 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. +As for succeeding allocations, they would trigger useless changes to page attributes, leading to expensive TLB shootdowns. 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`). +By contrast with those evoked above, this change is to the `drm-kmod` ports' code. +It has been included in the lastest version bumps in the ports tree. +Check that your package versions, for `drm-510-kmod`, `drm-515-kmod`, `drm-61-kmod` and `drm-66-kmod`, are respectively equal or greater than ``5.10.163.\*_13``, ``5.15.160.*_8``, ``6.1.128.*_7`` and ``6.6.25.*_6``, where ``*`` stands for the ``__FreeBSD_version`` value on the build system. This work was sponsored by the FreeBSD Foundation as part of the Laptop Project.help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6929a231.22cec.18c4f941>
