All posts by daroc

[$] BPF comes to io_uring at last

Post Syndicated from daroc original https://lwn.net/Articles/1062286/

The kernel’s asynchronous

io_uring interface
maintains two shared ring buffers:
a submission queue for sending requests to the kernel, and a completion queue
containing the results of those requests. Even with shared memory removing much
of the overhead of communicating with user space, there is still some overhead
whenever the kernel must switch to user space to give it the opportunity to
process completion requests and
queue up any subsequent work items. A

patch set
from Pavel Begunkov minimizes this overhead by letting
programmers extend the io_uring event loop with a BPF program that can enqueue
additional work in response to completion events. The patch set has
been in development for a long time, but has
finally been accepted.

[$] More timing side-channels for the page cache

Post Syndicated from daroc original https://lwn.net/Articles/1061743/

In 2019, researchers published a way to
identify which file-backed pages
were being accessed on a system using timing information from the page cache,
leading to a handful of unpleasant consequences and a change to the design of
the

mincore()
system call. Discussion at the time
led to a number of ad-hoc patches to address the
problem. The lack of new page-cache attacks suggested that attempts to fix
things in a piecemeal fashion had succeeded. Now, however, Sudheendra Raghav Neela,
Jonas Juffinger, Lukas Maar, and Daniel Gruss have
found a new set of
holes
in the Linux kernel’s page-cache-timing protections that allow
the same general class of attack.

[$] HTTPS certificates in the age of quantum computing

Post Syndicated from daroc original https://lwn.net/Articles/1060941/

There has been ongoing discussion in the

Internet Engineering Task Force
(IETF)
about how to protect internet traffic against future quantum computers. So far,
that work has focused on key exchange as the most urgent problem; now,

a new IETF working group
is looking at adopting post-quantum cryptography
for authentication and certificate transparency as well. The main challenge to
doing so is the increased size of
certificates — around 40 times larger. The techniques that the working group is investigating
to reduce that overhead could have efficiency benefits for traditional
certificates as well.

[$] Inspecting and modifying Python types during type checking

Post Syndicated from daroc original https://lwn.net/Articles/1061083/

Python has a

unique approach to static typing
. Python programs can contain type
annotations, and even access those annotations at run time, but the annotations
aren’t evaluated by default. Instead, it is up to external programs to ascribe
meaning to those annotations. The annotations themselves can be arbitrary Python
expressions, but in practice usually involve using helpers from the built-in

typing
module, the meanings of which external type-checkers mostly
agree upon. Yet the type system implicitly defined by the typing module
and common type-checkers is insufficiently powerful to model all of the kinds of
dynamic metaprogramming found in real-world Python programs.
PEP 827 (“Type Manipulation”)
aims to add additional
capabilities to Python’s type system to fix this, but
discussion
of the PEP has been of mixed sentiment.

[$] Magit and Majutsu: discoverable version-control

Post Syndicated from daroc original https://lwn.net/Articles/1060024/


Jujutsu
is an increasingly popular Git-compatible version-control system. It has
a focus on simplifying Git’s conceptual model to produce a smoother, clearer command-line
experience. Some people already have a preferred replacement for Git’s usual
command-line interface, though:

Magit
, an Emacs package for working with Git
repositories that also tries to make the interface more
discoverable.
Now, a handful of people are working to implement a Magit-style interface for Jujutsu:

Majutsu
.

[$] No hardware memory isolation for BPF programs

Post Syndicated from daroc original https://lwn.net/Articles/1059218/

On February 12, Yeoreum Yun posted a
suggestion
for an improvement to the security of the kernel’s BPF implementation: use

memory protection keys
to prevent unauthorized access to memory by BPF
programs.
Yun wanted to put the topic on the list for discussion at the Linux
Storage, Filesystem, Memory Management, and BPF Summit in May, but the
lack of engagement makes that unlikely. They also have a patch set implementing
some of the proposed changes, but has not yet shared that with the mailing list.
Yun’s proposal does not seem likely to be accepted in its
current form, but the kernel has

added hardware-based hardening options
in the
past, sometimes after substantial discussion.

[$] The second half of the 7.0 merge window

Post Syndicated from daroc original https://lwn.net/Articles/1058664/

The 7.0 merge window

closed
on February 22 with 11,588 non-merge commits total,
3,893 of which came in after
the article covering the first half of the merge
window
. The changes in the second half were weighted toward bug fixes over
new features, which is usual. There were still a handful of surprises, however, including
89 separate tiny code-cleanup changes from different people for the rtl8723bs
driver, a number that
surprised
Greg Kroah-Hartman. It’s unusual for a WiFi-chip driver to receive that much
attention, especially a staging driver that is not yet ready for general use.

[$] Open-source Discord alternatives

Post Syndicated from daroc original https://lwn.net/Articles/1058319/

The closed-source chat platform Discord

announced
on February 9 that it would soon require some users to verify their
ages in order to access some content — although the company quickly

added
that
the “vast majority” of users would not have to. That reassurance has to
contend with the fact that the UK and other countries are implementing
increasingly strict age requirements for social media. Discord’s age
verification would be done with an AI age-judging
model or with a government photo ID. A surprising number of open-source
projects use Discord for support or project communications, and some of those
projects are now looking for open-source alternatives. Mastodon, for example,

has moved discussion to Zulip
. There are some alternatives out there, all
with their own pros and cons, that communities may want to consider if they want
to switch away from Discord.

[$] The first half of the 7.0 merge window

Post Syndicated from daroc original https://lwn.net/Articles/1057769/

The merge window for Linux 7.0 has opened, and with it
comes a number of interesting improvements and enhancements. At the time of
writing, there have been 7,695 non-merge commits accepted. The 7.0 release is
not special,

according to the kernel’s versioning scheme
— just the release
that comes after 6.19. Humans love symbolism and round numbers, though, so it
may feel like something of a milestone.

[$] Poisoning scraperbots with iocaine

Post Syndicated from daroc original https://lwn.net/Articles/1056953/

Web sites are being increasingly beset by AI scraperbots — a problem that we have
written about before, and which has slowly
ramped up to an occasional de-facto DDoS attack. This has not gone
uncontested, however: web site operators from around the world have been working on
inventive countermeasures. These solutions target the problem posed by scraperbots in different ways;

iocaine
, a MIT-licensed nonsense generator, is designed
to make scraped text less useful by poisoning it with fake data. The hope is to
make running scraperbots not economically viable, and thereby address the
problem at its root instead of playing an eternal game of Whac-A-Mole.

[$] Kernel control-flow-integrity support comes to GCC

Post Syndicated from daroc original https://lwn.net/Articles/1056601/

Control-flow integrity (CFI) is a set of techniques that make it more difficult for
attackers to hijack indirect jumps to exploit a system. The Linux kernel has
supported forward-edge CFI (which protects indirect function calls)
since 2020, with the most recent implementation
of the feature introduced in 2022. That
version avoids the overhead introduced by the earlier approach by using a
compiler flag (-fsanitize=kcfi) that is present in Clang but not in
GCC. Now, Kees Cook has

a patch set
adding that support to GCC that looks likely to land in GCC
17.

[$] The future for Tyr

Post Syndicated from daroc original https://lwn.net/Articles/1055590/

The

team
behind

Tyr
started 2025 with little to show in our quest to
produce a Rust GPU driver for Arm Mali hardware, and by the end of the
year, we were able to play SuperTuxKart (a 3D open-source racing
game) at the Linux Plumbers Conference (LPC). Our prototype was a joint
effort between Arm, Collabora, and Google; it ran well for the duration
of the event, and the performance was more than adequate for players.
Thankfully, we picked up steam at precisely the right moment: Dave
Airlie just

announced
in the Maintainers Summit that the DRM subsystem
is only “about a year away” from disallowing new drivers written in C
and requiring the use of Rust. Now it is time to lay out a
possible roadmap for 2026 in order to upstream all of this work.

[$] Compiling Rust to readable C with Eurydice

Post Syndicated from daroc original https://lwn.net/Articles/1055211/

A few years ago, the only way to compile Rust code was using the rustc compiler
with LLVM as a backend. Since then, several projects, including

Mutabah’s Rust Compiler
(mrustc), GCC’s Rust
support
(gccrs),

rust_codegen_gcc
, and

Cranelift
have made enormous progress
on diversifying Rust’s compiler implementations. The most recent such project,

Eurydice
, has a
more ambitious goal: converting Rust code to clean C code. This is especially
useful in high-assurance software, where existing verification and compliance
tools expect C. Until such tools can be updated to work with Rust, Eurydice could
provide a smoother transition for these projects, as well as a stepping-stone
for environments that have a C compiler but no working Rust compiler. Eurydice
has been used to compile some post-quantum-cryptography routines from Rust to C,
for example.

[$] Linux Kernel Runtime Guard reaches its 1.0 release

Post Syndicated from daroc original https://lwn.net/Articles/1049295/

The

Linux Kernel Runtime Guard
(LKRG) is a out-of-tree loadable kernel module that
attempts to detect and report violations of the kernel’s internal invariants,
such as might be caused by an in-progress security exploit or a rootkit.
LKRG has been experimental since its

initial release in 2018
. In September
2025, the project
announced
the 1.0 version. With the promises of stability that version brings, users might want more
information to decide whether to include it in their kernel.

[$] An alternate path for immutable distributions

Post Syndicated from daroc original https://lwn.net/Articles/1054216/

LWN has had a number of articles on immutable distributions,
such as Bluefin and
Bazzite
, in recent years. These distributions have taken a variety of approaches, including
using

rpm-ostree
, filesystem snapshots, and
bootable container (bootc) images. But those
approaches, especially the latter, lead to extra complexity for a user
attempting to install new software, instead of just
using the existing package manager.

AshOS
(Any Snapshot Hierarchical OS) is an experimental AGPL-3-licensed
“meta-distribution” that tried a different approach more in line with
traditional package management. Although the project is no longer updated,
it remains usable, and can still shed some light on a potential alternate path for users
worried about adopting bootc-based approaches.

[$] A free and open-source rootkit for Linux

Post Syndicated from daroc original https://lwn.net/Articles/1053099/

While there are several rootkits that target Linux, they have so far not fully
embraced the open-source ethos typical of Linux software.
Luckily, Matheus Alves has been working to remedy
this lack by creating

an open-source rootkit called Singularity
for Linux systems. Users who feel
their computers are too secure can install the Singularity kernel module in
order to allow remote code execution, disable security features, and hide files
and processes from normal administrative tools. Despite its many features,
Singularity is not currently known to be in use in the wild — instead, it
provides security researchers with a testbed to investigate new detection and
evasion techniques.

[$] A high-level quality-of-service interface

Post Syndicated from daroc original https://lwn.net/Articles/1051982/

Quality-of-service (QoS) mechanisms attempt to prioritize some processes (or
network traffic, disk I/O, etc.) over others in order to meet a system’s
performance goals. This is a difficult topic to handle in the world of Linux,
where workloads, hardware, and user expectations vary wildly. Qais Yousef spoke
at the 2025 Linux Plumbers Conference, alongside his collaborators John Stultz,
Steven Rostedt, and Vincent Guittot, about their plans for introducing a
high-level QoS API for Linux in a way that leaves end users in control of its
configuration. The talk focused specifically on a QoS mechanism for the
scheduler, to prioritize access to CPU resources differently for different kinds
of processes.
(slides;
video)

[$] SFC v. VIZIO: who can enforce the GPL?

Post Syndicated from daroc original https://lwn.net/Articles/1052734/

The

Software Freedom Conservancy
(SFC) is

suing


VIZIO
over smart TVs that
include software licensed under the GPL and LGPL (including the Linux kernel,
FFmpeg, systemd, and others).
VIZIO didn’t provide the source code along with the device, and on request they
only provided some of it. Unlike a typical lawsuit about enforcing the GPL, the
SFC isn’t suing as a copyright holder; it’s suing as
a normal owner of the TV
in question. This approach opens some important legal questions, and after years
of pre-trial maneuvering (most recently resulting in
a ruling related to signing keys that
is the subject of a separate article),
we might finally obtain some answers when the case goes
to trial on January 12. As things stand, it seems likely that the judge in
the case will rule that that the GPL-enforcement lawsuits can be a matter of
contract law, not just copyright law, which would be a major change to how GPL
enforcement works.

[$] Questions for the Technical Advisory Board

Post Syndicated from daroc original https://lwn.net/Articles/1051768/

The nature and role of the Linux Foundation’s Technical Advisory Board (TAB) is
not well-understood, though
a recent LWN article shed some light on its
role and
history. At the 2025

Linux Plumbers Conference
(LPC), the TAB held a question and
answer session to address whatever it was the community wanted to know
(video).
Those questions ended up covering the role of large language models in kernel
development, what it is like to be on the TAB, how the TAB can help grease the
wheels of corporate bureaucracy, and more.

[$] The difficulty of safe path traversal

Post Syndicated from daroc original https://lwn.net/Articles/1050887/

Aleksa Sarai, as the maintainer of the
runc container runtime, faces a
constant battle against security problems. Recently, runc has seen

another
instance
of a security vulnerability that can be traced back to the difficulty
of handling file paths on Linux. Sarai spoke at the 2025
Linux Plumbers Conference
(slides;
video)
about
some of the problems runc has had with path-traversal vulnerabilities, and to
ask people to please use

libpathrs
, the library that he has been developing for
safe path traversal.