All posts by jake

[$] A loadable crypto module for FIPS certification

Post Syndicated from jake original https://lwn.net/Articles/1073759/

Many organizations require US Federal Information Processing Standard (FIPS)
certification of the crypto code they are running. The certification
process is lengthy, but the bigger problem is that the way the crypto
subsystem is built into the kernel makes the result unable to be reused
across kernel updates. I have proposed a patch
series
that decouples the crypto subsystem into a standalone
loadable module, allowing a certified crypto module to be reused with
multiple kernels and, thus, requiring fewer lengthy recertification delays.

[$] Policies for merging new filesystems

Post Syndicated from jake original https://lwn.net/Articles/1074557/

In a filesystem-track session at the 2026 Linux Storage,
Filesystem, Memory Management, and BPF Summit
, Amir Goldstein wanted to
discuss his proposed
documentation on adding new filesystems
to the kernel. There are a
number of unmaintained and untestable filesystems already in the kernel,
which are a burden to VFS-layer developers who are trying to make sweeping
changes, such as switching to folios and the “new” mount API. Goldstein’s
document is an attempt to head off the addition of filesystems that may
increase that burden down the road.

[$] Reviewing kernel patches with LLMs

Post Syndicated from jake original https://lwn.net/Articles/1073583/

In a plenary session at
the
2026 Linux Storage,
Filesystem, Memory Management, and BPF Summit
, the state of patch
review using large language models (LLMs) was discussed. It is a topic that has been swirling around in the
kernel community for much of the year. The plenary, which was led by Roman
Gushchin, Chris Mason, Josef Bacik, and Sasha Levin, resulted in a quite bit
of discussion, so much that a second filesystem-track-only (though others
surely sat in) slot was used to continue it later in the day.

Comprehensive Response to Bambu’s AGPLv3 Violations (Software Freedom Conservancy)

Post Syndicated from jake original https://lwn.net/Articles/1074286/

The Software Freedom Conservancy (SFC)
published a news
item
on May 18 about its response to violations of the AGPLv3 by Bambu
Lab in its 3D printers. The company has not provided the source code to
its modifications to a 3D “slicer” program that was released under the
AGPLv3 and it has also threatened Paweł Jarczak who created a fork of a
different slicer (Orca Slicer) released under AGPLv3 in order to interoperate with his
Bambu printer. Based on that, the SFC has created the baltobu
project
aimed at reverse-engineering and reimplementing the Bambu code
while also hosting the Orca Slicer fork.

Bambu has behaved badly for years and made multiple, provably false public statements regarding the AGPLv3 and its requirements. The recent aggressive behavior toward Paweł Jarczak was a last straw for us: we have decided to launch a multi-pronged effort that will assist consumers and users in the short-term, and also work toward a long-term strategy to improve the software right to repair for all 3D printer consumers.

Security updates for Monday

Post Syndicated from jake original https://lwn.net/Articles/1074280/

Security updates have been issued by Debian (atril, evince, gnutls28, haproxy, haveged, jq, kernel, krb5, libgcrypt20, nodejs, and thunderbird), Fedora (aw-server-rust, awatcher, bind, bind-dyndb-ldap, chromium, composer, docker-buildkit, docker-buildx, dotnet10.0, dotnet8.0, dotnet9.0, evince, firefox, httpd, kernel, nodejs-aw-webui, nss, perl-Apache-Session-Browseable, pie, python-pulp-glue, python-requests, and python3.15), Slackware (kernel), SUSE (apptainer, chromium, cockpit, dnsmasq, google-guest-agent, hauler, iproute2, jfrog-cli, kernel, libecpg6, libsolv, libzypp, zypper, mcphost, oci-cli, perl-YAML-Syck, python-lxml, python-urllib3, python311-impacket, rqlite, rsync, util-linux, and xz), and Ubuntu (evince, linux-azure, linux-azure-5.4, linux-azure-fips, linux-azure-4.15, linux-azure-fips, linux-fips, linux-gcp-5.15, linux-lowlatency-hwe-5.15, linux-oracle-6.17, node-path-to-regexp, and rclone).

[$] Buffered atomic writes, writethrough, and more

Post Syndicated from jake original https://lwn.net/Articles/1072019/

In back-to-back sessions at the start of the 2026 Linux Storage,
Filesystem, Memory Management, and BPF Summit
(which spilled over into
a third slot), the atomic-buffered-writes
feature
was discussed. In the first session, Pankaj Raghav and Andres
Freund set the stage with an introduction to the problem, along with a use
case for its solution: the PostgreSQL database system. In the second, Ojaswin Mujoo
described a potential way forward for the feature using an approach based
on writethrough, which effectively means that the kernel immediately writes
the data to disk instead of waiting for writeback from the page cache to occur. As might be
expected, there was quite a bit of discussion among the assembled
filesystems and storage developers during the combined sessions for those
tracks.

[$] Python packaging council approved

Post Syndicated from jake original https://lwn.net/Articles/1068704/

The Python packaging world now has a formal
governance council, of the form described in PEP 772 (“Packaging
Council governance process”), which was approved
by the steering council
on April 16. It has been over a year
since the PEP was first proposed in February 2025 and it has undergone
lengthy discussions in multiple postings to the Python discussion forum. The
packaging council will have “broad authority over packaging standards,
tools, and implementations
“; it will consist of five members who will
be elected in a vote that is likely to come in June—after PyCon US 2026 is held mid-May.

[$] Using LLMs to find Python C-extension bugs

Post Syndicated from jake original https://lwn.net/Articles/1067234/

The open-source world is currently awash in
reports of LLM-discovered bugs and vulnerabilities
, which makes for a lot more
work for maintainers, but many of the current crop are being reported
responsibly with an eye toward minimizing that impact. A recent report
on an effort to systematically find bugs in Python extensions
written in C
has followed that approach. Hobbyist Daniel Diniz used Claude
Code to find more than 500 bugs of various sorts across nearly a million
lines of code in 44 extensions; he has been working with maintainers to get
fixes upstream and his methodology serves as a great example of how to keep
the human in the loop—and the maintainers out of burnout—when employing LLMs.

[$] A build system aimed at license compliance

Post Syndicated from jake original https://lwn.net/Articles/1066103/

The OpenWrt One is a
router powered by the open-source firmware from the OpenWrt project; it was also the
subject of a keynote at SCALE in 2025
given by Denver Gingerich of the Software Freedom Conservancy (SFC),
which played a big role in developing the router. Gingerich returned to
the conference in
2026
to talk about the build system used by the OpenWrt One, which is
focused on creating the needed binaries, naturally, but doing so in a way
that makes it easy to comply with the licenses of the underlying code.
That makes good sense for a project of this sort—and for a talk given by
the director of compliance at SFC.

[$] Protecting against TPM interposer attacks

Post Syndicated from jake original https://lwn.net/Articles/1064685/

The Trusted
Platform Module
(TPM) is a widely misunderstood piece of hardware (or
firmware) that lives in most x86-based computers. At SCALE 23x in Pasadena, California,
James Bottomley gave a presentation on the TPM and the work that he and
others have done to enable the Linux kernel to work with it. In
particular, he described the problems with interposer attacks, which target
the communication between the TPM and the kernel, and what has
been added to the kernel to thwart them.

[$] Pandoc: a workhorse for document conversion

Post Syndicated from jake original https://lwn.net/Articles/1064692/

Pandoc is a document-conversion program
that can translate among a myriad of formats, including LaTeX, HTML, Office Open XML
(docx), plain text, and Markdown. It is also
extensible by writing Lua
filters that can manipulate the document structure and perform arbitrary
computations.
Pandoc has appeared in various LWN articles over the years, such as my look at Typst and at the importance of free software to science in
2025, but we have missed providing an overview of the tool. The February release of Pandoc
3.9
, which comes with the ability to compile the program to WebAssembly (Wasm), allowing Pandoc
to run in web browsers, will likely also be of interest.

[$] Collaboration for battling security incidents

Post Syndicated from jake original https://lwn.net/Articles/1063459/

The keynote for Sun Security Con
2026
(SunSecCon) was given by Farzan Karimi on how incident handling
can go awry because of a lack of collaboration between the “good
guys”—which stands in contrast to how attackers collaboratively operate.
He provided some “war stories” where security incident handling had
benefited from collaboration and others where it was hampered by its lack.
SunSecCon was held in conjunction with SCALE 23x in Pasadena
in early March.

[$] Cindy Cohn on privacy battles old and new

Post Syndicated from jake original https://lwn.net/Articles/1061979/

Cindy Cohn is the executive director of the Electronic Frontier Foundation (EFF) and
she gave the Saturday morning keynote at SCALE 23x in Pasadena
about some of the work she and others have done to help protect online
rights, especially digital privacy. The talk recounted some of the history
of the court cases that the organization has brought over the years to try
to dial back privacy invasions. One underlying theme was the
role that attendees can play in protecting our rights, hearkening back to
earlier efforts by the technical community.

GIMP 3.2 released

Post Syndicated from jake original https://lwn.net/Articles/1063111/

After a year’s worth of development since GIMP 3.0 was released,
the team behind the open-source image editor has released
GIMP 3.2
. It comes as part of the plan
to release GIMP more frequently, rather than wait six or seven years
between releases. The release comes with lots of new features (as can
be seen in more detail in the release notes),
including 20 new brushes for the MyPaint Brush tool, an “overwrite” paint
mode, new and upgraded file formats, UI improvements in a variety of
places, such as the on-canvas text editor, and new non-destructive layers:

  • You can now use Link Layers to incorporate external image as
    part of your compositions, easily scaling, rotating, and transforming them
    without losing quality or sharpness. The link layer’s content is updated
    when the source file is modified

  • The Path tool can now create Vector Layers, which lets you draw
    shapes with adjustable fill and stroke settings.

[$] Disabling Python’s lazy imports from the command line

Post Syndicated from jake original https://lwn.net/Articles/1061112/

The advent of lazy imports in the Python language is upon us, now that PEP 810 (“Explicit lazy
imports”) was accepted by the steering
council
and the feature will appear in the upcoming Python 3.15 release
in October. There are a number of good reasons,
performance foremost, for wanting to defer spending—perhaps wasting—the
time to do an import before a needed symbol is used. However, there are
also good reasons not to want that behavior, at least in some cases. The
tension between those two positions is what led to an earlier PEP rejection,
but it is also playing into a recent discussion of the API used to control
lazy imports.

[$] The troubles with Boolean inversion in Python

Post Syndicated from jake original https://lwn.net/Articles/1059177/

The Python bitwise-inversion (or complement) operator, “~“, behaves
pretty much as expected when it is applied to integers—it toggles every
bit, from one
to zero and vice versa. It might be expected that applying the
operator to a non-integer, a bool
for example, would raise a TypeError, but, because the
bool type is really an int
in disguise, the complement operator is allowed, at least for now. For
nearly 15 years (and perhaps longer), there have been discussions about the
oddity of that behavior and whether it should be changed. Eventually,
that resulted in the “feature” being deprecated, producing a warning, with removal slated for
Python 3.16 (due October 2027). That has led to some reconsideration and the
deprecation may itself be deprecated.

Vlad: Weston 15.0 is here: Lua shells, Vulkan rendering, and a smoother display stack

Post Syndicated from jake original https://lwn.net/Articles/1059933/

Over on the Collabora blog, Marius Vlad has an overview
of Weston 15.0
, which was released on February 19. Weston is the
reference implementation of a Wayland compositor. The new
release comes with a new shell that can be programmed using the Lua language, a new, experimental Vulkan
renderer, smoother media playback, color-management additions, and more.

One of Weston’s fundamental pillars has always been making the most efficient use of display hardware. Over time, all the work we did to track and offload as much work as possible to this efficient fixed-function hardware has come at the cost of eating CPU time. In the last couple of release cycles, we’ve focused really hard on improving performance on even the most low-end of devices, so not only do we make the most efficient use of the GPU and display hardware, but we’re also really kind on your CPU now. As part of that and to improve our tooling, Weston 15 now comes with support for the Perfetto profiler.

Security updates for Monday

Post Syndicated from jake original https://lwn.net/Articles/1059864/

Security updates have been issued by AlmaLinux (kernel-rt and openssl), Debian (ca-certificates, chromium, gegl, glib2.0, libvpx, modsecurity-crs, nova, and pillow), Fedora (chromium, mingw-libpng, mupdf, python-pyasn1, python-PyMuPDF, python-uv-build, python3.13, qpdfview, rust-ambient-id, uv, and zathura-pdf-mupdf), Mageia (freerdp, gnutls, and libvpx), Red Hat (butane and grafana-pcp), SUSE (chromedriver, chromium, cockpit-repos, firefox, kernel, libpng16, postgresql16, postgresql17, postgresql18, python, python311-nltk, snpguest, ucode-intel-20260210, vexctl, and xen), and Ubuntu (djvulibre, evolution-data-server, linux-lowlatency, linux-xilinx, and u-boot).

[$] Compact formats for debugging—and more

Post Syndicated from jake original https://lwn.net/Articles/1057295/

At the 2025 Linux Plumbers Conference in Tokyo, Stephen Brennan gave a
presentation on the debuginfo
format
, which contains the symbols and other information needed for
debugging, along with some alternatives. Debuginfo files are large and, he
believes, are a bit scary to customers because of the “debug” in their name.
By rethinking debuginfo and the tools that use it, he hopes that
free-software developers “can add new, interesting capabilities to tools
that we are already using or build new interesting tools
“.

Ardour 9.0 released

Post Syndicated from jake original https://lwn.net/Articles/1057548/

The Ardour digital-audio-workstation (DAW)
project has announced the
release of version 9.0
.

This is a major release for the project, seeing several substantive new features that users have asked for over a long period of time. Region FX, clip recording, a touch-sensitive GUI, pianoroll windows, clip editing and more, not to mention dozens of bug fixes, new MIDI binding maps, improved GUI performance on macOS (for most) …

We expect to get feedback on some of the major new features in this release, and plan to take that into account as we improve and refine them and the rest of Ardour going forward. We have no doubt that there will be both delight and disappointment with certain things – rather than assume that we don’t know what we’re doing, please leave us feedback on the forums so that Ardour gets better over time. Those of you new to our clip launching implementation might care to read up on the differences with Ableton Live.

In the coming weeks, we’ll begin to sketch out what we have planned next for Ardour, in addition to responding to the feedback we get on this 9.0 release.