We're hiring!
*

Kernel 6.13: A flawless end of the year

Sebastian Fricke avatar

Sebastian Fricke
January 28, 2025

Share this post:

Reading time:

The conclusion of 2024 brought with it a surprisingly smooth 6.13 kernel, making it a noteworthy release due to the usual constraints of the holiday season.

Though this kernel version introduces fewer changes than previous iterations, it contains a good chunk of core changes including a new PREEMPT_LAZY mode. This allows the current task to be preempted at any point, similar to PREEMPT_FULL. Still, as most events won't require an imminent preemption, the system will preempt at the next convenient point, providing a nice balance between the high latency of non-preemptable kernels and the throughput issues and higher lock contention found on fully preemptable systems. For more details on this, please refer to this LWN article.

An interesting set of changes has been merged for filesystems, with changes like performance improvements for specific cases on the Virtual Filesystem (VFS) layer or extensions to the statmount syscall and four new syscalls to handle extended attributes. Additionally, after the deprecation period has expired, the infamous ReiserFS has been removed from Linux.

A good mix of other patches have found their way into the kernel as well. You can find a detailed and revised list of changes within the first part and the second part of an article on LWN.

Once again, Collabora provided a significant number of contributions. Our primary areas of involvement include the DRM subsystem (via work in the Panthor & Panfrost drivers), enablement of MediaTek SoCs, as well as the Rockchip SoCs (3588 & 3576). Let's dive into some of the details!

FDinfo support in DRM

Adrian Larumbe brought in support for DRM info stats in the Panthor driver. With this new functionality, user space can query memory and shader core utilization stats for a specific or all of the DRM clients of a GPU device. This is already being leveraged for other devices by utilities like nvtop or gputop in a driver-agnostic way, which simplifies the writing of profiling software. He also fixed minor bugs in Panfrost and Panthor.

MediaTek improvements

Collabora's deep involvement with the MediaTek community continued to shine with Linux 6.13, with multiple contributions landing in this release including DVFSRC hardware communication for power efficiency, and OF Graph support for flexible display path configurations. Here's a complete summary of MediaTek improvements in Linux 6.13.

Rockchip SoC enablement

On the Rockchip side, Cristian Ciocaltea finally managed to land basic HDMI output support for the RK3588! It is currently limited to the first HDMI controller and more or less to 1920x1080, but at least one can get a picture out of the chip now. Only the RGB image format is allowed for now, but he already provided several fixes at the HDMI bridge and connector framework level in preparation to add support for YUV420 output format. Additional improvements and more features are in development and will land in subsequent kernels.

Detlev Casanova continued enabling the RK3576, and in this release, the final bits of initial support for the ArmSom Sige5 (also known as Banana Pi BPI-M5 Pro) have landed.

Unconditional enumeration of Codec pixel formats

The goal of this series by Benjamin Gaignard is to help userspace applications, such as Gstreamer or Chromium, categorize decoders and avoid attempting to use a decoder that cannot perform the required task due to unsupported pixel formats. For example, in the current implementation, we need to simulate a 10-bit header control to determine if the driver supports 10-bit pixel formats. With this new flag, it will be easier for userspace applications to know if the driver supports 10-bit pixel formats and whether it is compatible with userspace.

Timestamp queries and context priorities for Mesa

On the Panfrost and Panthor work, Mary Guillemard added support for timestamp queries, allowing Panfrost's Gallium driver to support ARB_timer_query and EXT_disjoint_timer_query, which have been available since Mesa 24.3.0. She also added realtime group priority in Panthor for it to support IMG_context_priority and NV_context_priority_realtime in Mesa on Valhall Gen 2.

A debugging guide for the Linux Kernel

Starting out as a new kernel developer can be a tough journey with a lot of implicit knowledge expectations. One of these areas is debugging, where a large range of possibilities awaits the newcomer and the optimal choice for a given problem is often not very clear. To ease this situation, Sebastian Fricke has written a new guide within the Linux Kernel documentation that tries to help with an overview of the possibilities and with brief help sections.

The guide can be found here.

Testing

Nícolas Prado introduced a new documentation page describing and comparing the different kselftests available for generic device testing in the Linux kernel.

Vignesh Raman added new jobs to DRM-CI for testing the Snapdragon 888 Mobile Hardware Development Kit (SM8350 HDK) and "dedede" Chromebooks, the latter of which use 64-bit Intel Jasper Lake processors. The documentation was updated to revise flake test requirements, specifying the need to link to a relevant GitLab issue or email report for each new flake entry. Additionally, Vignesh integrated a newer version of IGT into DRM-CI, incorporating its latest fixes.

Nícolas Prado introduced Ethernet support to the MT8188 SoC as well as the Genio 700 EVK board. He also fixed a bug in multiple MediaTek sound drivers, where leaving audio paths undescribed in the Devicetree would result in a kernel panic.

Below is a full list of contributions made by Collabora for the 6.13 release, as recorded in the git commit history:

Authored:

Adrian Ratiu:

Adrián Larumbe:

Andrej Shadura:

AngeloGioacchino Del Regno:

Benjamin Gaignard:

Cristian Ciocaltea:

Detlev Casanova:

Frédéric Danis:

Mary Guillemard:

Nícolas F. R. A. Prado:

Robert Beckett:

Sebastian Fricke:

Shreeya Patel:

Vignesh Raman:

Maintainer Committed:

AngeloGioacchino Del Regno:

Boris Brezillon:

Sebastian Reichel:

Signed-off-by:

Nicolas Dufresne:

Sebastian Fricke:

Reviewed-by:

AngeloGioacchino Del Regno:

AngeloGioacchino Del Regno:

AngeloGioacchino Del Regno:

Benjamin Gaignard:

Boris Brezillon:

Daniel Stone:

Dmitry Osipenko:

Julien Massot:

Muhammad Usama Anjum:

Nicolas Dufresne:

Nícolas F. R. A. Prado:

Sebastian Reichel:

Acked-by:

AngeloGioacchino Del Regno:

Helen Koike:

Sebastian Reichel:

Tested-by:

AngeloGioacchino Del Regno:

Dmitry Osipenko:

Nícolas F. R. A. Prado:

Sebastian Reichel:

Reported-by:

Dmitry Osipenko:

Nícolas F. R. A. Prado:

 

Comments (1)

  1. Levi Marvin:
    Jan 29, 2025 at 05:54 AM

    Nice works! I hope that there is a day we can use the mainline kernel with all functions of RK3588. And then I will buy a Radax RB5 (The third-party board based on RK3588 often has some issues).

    p.s. I have sold the LubanCat 5 v1 board.

    Reply to this comment

    Reply to this comment


Add a Comment






Allowed tags: <b><i><br>Add a new comment:


 

Search the newsroom

Latest News & Events

Welcoming the libsurvive project

29/01/2025

Collabora's involvement in Open Source XR development continues to grow today as we welcome the libsurvive project, the open source lighthouse…

Kernel 6.13: A flawless end of the year

28/01/2025

The latest Linux kernel release is here, bringing improvements to the DRM subsystem, further enablement of Rockchip SoCs, a new debugging…

MediaTek improvements in Linux 6.13

24/01/2025

Collabora's deep involvement with the MediaTek community continued to shine this week with the release of Linux 6.13, which saw multiple…

Open Since 2005 logo

Our website only uses a strictly necessary session cookie provided by our CMS system. To find out more please follow this link.

Collabora Limited © 2005-2025. All rights reserved. Privacy Notice. Sitemap.