All posts by daroc

[$] A new API for interrupt-aware spinlocks

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

Boqun Feng spoke at

Kangrejos 2025
about adding a frequently needed API for Rust drivers
that need to handle interrupts: interrupt-aware spinlocks. Most drivers will
need to communicate information from interrupt handlers to main driver code, and
this exchange is frequently synchronized with the use of spinlocks. While his
first attempts ran into problems, Feng’s ultimate solution could help prevent bugs
in C code as well, by tracking the number of nested scopes that have disabled
interrupts. The
patch set
, which contains work from Feng and Lyude Paul, is still under review.

Security updates for Friday

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

Security updates have been issued by Debian (redis and valkey), Fedora (docker-buildkit, ibus-bamboo, pgadmin4, webkitgtk, and wordpress), Mageia (kernel-linus, kmod-virtualbox & kmod-xtables-addons, and microcode), Oracle (compat-libtiff3 and udisks2), Red Hat (rsync), Slackware (python3), SUSE (chromium, cJSON, digger-cli, glow, go1.24, go1.25, go1.25-openssl, grafana, libexslt0, libruby3_4-3_4, pgadmin4, python311-python-socketio, and squid), and Ubuntu (dpdk, libhtp, vim, and webkit2gtk).

[$] Upcoming Rust language features for kernel development

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

The

Rust for Linux
project has been good for Rust, Tyler Mandry, one of the
co-leads of Rust’s language-design team, said. He
gave a talk at

Kangrejos 2025
covering upcoming Rust language features and thanking
the Rust for Linux developers for helping drive them forward. Afterward, Benno Lossin and Xiangfei Ding
went into more detail about their work on the three most important language
features for kernel development: field projections, in-place initialization, and arbitrary self types.

[$] Progress on defeating lifetime-end pointer zapping

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

Paul McKenney gave a remote presentation at

Kangrejos 2025
following up on the
talk he gave last year about the
lifetime-end-pointer-zapping problem: certain common patterns for multithreaded code are
technically undefined behavior, and changes to the C and C++ specifications
will be needed to correct that. Those changes could also impact code that uses
unsafe Rust, such as the kernel’s Rust bindings. Progress on the problem has been slow,
but McKenney believes that a solution is near at hand.

Security updates for Friday

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

Security updates have been issued by AlmaLinux (idm:DL1), Debian (gegl and haproxy), Fedora (ffmpeg, firefox, freeipa, python-pip, rust-astral-tokio-tar, sqlite, uv, webkitgtk, and xen), Oracle (idm:DL1, ipa, kernel, perl-JSON-XS, and python3), Red Hat (git), SUSE (curl, frr, jupyter-jupyterlab, and libsuricata8_0_1), and Ubuntu (linux-aws, linux-lts-xenial, linux-aws-fips, linux-fips, linux-gcp-fips, linux-azure, linux-azure, linux-azure-6.8, linux-fips, linux-gcp-fips, and linux-intel-iot-realtime, linux-realtime).

[$] Linting Rust code in the kernel

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


Klint
is a Rust compiler extension

developed by Gary Guo
to run some
kernel-specific lint rules, which may also be useful for embedded system
development. He spoke about his
recent work on the project at

Kangrejos 2025
. The next day, Alejandra González
led a discussion about Rust’s normal linter,

Clippy
. The two tools offer complementary approaches to analyzing Rust
kernel code, although both need some additional direction and support from
kernel developers to reach their full potential.

NixOS moderation team resigns

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

The

NixOS
moderation team, which is theoretically

in charge
of ensuring that community participation on the project’s

repositories
and
discussion forum remains welcoming and useful, has released

a joint resignation statement
. This action was motivated by conflict with the project’s steering council (SC), which has repeatedly overridden the moderation team, leading the team members to decide that they could not continue acting as moderators. Arian Van Putten, speaking for the whole team, writes:

The SC has also shown, in private and public conversations, their lack of understanding of basic principles of community management and open communication. They have mistaken quiet and a lack of controversy for success and peace. They have consistently become upset when there is criticism, and gone quiet on crucial issues in between. We have some fundamental conflicts in this community, which absolutely require discussion. Meanwhile, discussion with the SC has only become less effective.

We think that the goal of moderation should not be to avoid difficult conversations – it’s to navigate those difficult conversations in ways that remain safe and constructive. We believe we’ve made considerable progress as a community on making those conversations happen, and we believe they need to happen more for the project to grow, not be suppressed. We thank everyone for the growth that we have seen, and for their efforts to avoid personal focus in discussion, especially recently.

The NixOS project has had problems with community moderation stretching back
more than a year. With the next steering council election coming up soon, it will be interesting to see whether the community selects a council that feels differently or not.

Security updates for Friday

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

Security updates have been issued by AlmaLinux (firefox, kernel, and thunderbird), Debian (ceph and thunderbird), Fedora (chromium, mingw-expat, python-deepdiff, python-orderly-set, python-pip, rust-az-cvm-vtpm, rust-az-snp-vtpm, rust-az-tdx-vtpm, and trustee-guest-components), Oracle (aide, kernel, and thunderbird), Red Hat (firefox, kernel, openssh, perl-YAML-LibYAML, and thunderbird), Slackware (expat), SUSE (jasper, libssh, openjpeg2, and python-pycares), and Ubuntu (linux-aws-6.14, linux-hwe-6.14, linux-azure, linux-hwe-6.8, linux-realtime-6.8, node-sha.js, and pcre2).

[$] Canceling asynchronous Rust

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

Asynchronous Rust code has what Rain Paharia calls a “universal cancellation
protocol
“, meaning that any asynchronous code can be interrupted in the same
way. They claim
that this is both a useful feature when used deliberately, and a source of
errors when done by accident. They presented
about this problem at

RustConf 2025
, offering a handful of techniques to avoid introducing bugs into
asynchronous Rust code.

[$] Comparing Rust to Carbon

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

Safe, ergonomic interoperability between Rust and C/C++ was a popular topic at

RustConf 2025
in Seattle, Washington. Chandler Carruth gave a presentation
about the different approaches to interoperability in Rust and

Carbon
, the
experimental “(C++)++” language.
His ultimate conclusion was that
while Rust’s ability to interface with other languages is expanding over time,
it wouldn’t offer a complete solution to C++ interoperability anytime soon — and so there is room for
Carbon to take a different approach to incrementally upgrading existing C++ projects.
His

slides
are available for readers wishing to study his example code in more
detail.

[$] Fighting human trafficking with self-contained applications

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

Brooke Deuson is the developer behind

Trafficking Free Tomorrow
, a nonprofit organization that
produces free software to help law enforcement combat human trafficking. She is
a survivor of human trafficking herself.
She spoke at RustConf 2025 about her
mission, and why she chose to write her anti-trafficking software in Rust.
Interestingly, it has nothing to do with Rust’s lifetime-analysis-based memory-safety —
instead, her choice was motivated by the difficulty she faces getting police
departments to actually use her software. The fact that Rust is statically
linked and capable of cross compilation by default makes deploying Rust software
in those environments easier.

Security updates for Friday

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

Security updates have been issued by Debian (cups, imagemagick, libcpanel-json-xs-perl, and libjson-xs-perl), Fedora (checkpointctl, chromium, civetweb, glycin, kernel, libssh, ruff, rust-secret-service, snapshot, and uv), Mageia (curl), Red Hat (kernel), SUSE (cups, curl, perl-Cpanel-JSON-XS, regionServiceClientConfigAzure, regionServiceClientConfigEC2, regionServiceClientConfigGCE, trivy, and xen), and Ubuntu (cups, node-cipher-base, and qemu).

[$] How many ways are there to configure the Linux kernel?

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

There are a large number of ways to configure the 6.16
Linux kernel. It has 32,468 different configuration options on x86_64,
and a comparable number for other platforms. Exploring the ways the kernel can
be configured is sufficiently difficult that it requires specialized tools.
These show the

number of possible configurations
that options can be combined in has
6,550 digits. How has that number changed over the history of the kernel, and
what does it mean for testing?

[$] Tracking trust with Rust in the kernel

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

The Linux kernel has to handle many different sources of data that should not
be trusted: user space, network connections, and removable storage, to name a
few. The kernel has to remain secure even if one of these sends garbled (or
malicious) data. Benno Lossin has been working on an API for kernel Rust code
that makes it harder to accidentally make decisions based on data from user space. That work
is now on its

fourth revision
, and Lossin has asked kernel developers to experiment with
it and see where problems remain, making this a good time to look at the proposed API.

Announcing the Rust Innovation Lab

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

During the opening of RustConf 2025 in Seattle, Washington,
the Rust Foundation announced

a new initiative
to provide financial and administrative support to open-source Rust projects. The first project to benefit from the new Rust Innovation Lab is

Rustls
, an implementation of TLS in Rust. The foundation welcomes inquiries from other projects. Dr. Rebecca Rumbul, Executive Director of the Rust Foundation said:

Rustls is hopefully the first of many really good […] projects that will find a home in the foundation.

Security updates for Friday

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

Security updates have been issued by AlmaLinux (aide, fence-agents, firefox, kernel-rt, python-cryptography, and thunderbird), Debian (golang-github-gin-contrib-cors, libxml2, and udisks2), Fedora (chromium), Oracle (postgresql16, postgresql:16, python3.11, and thunderbird), Red Hat (lz4 and mpfr), SUSE (chromium, docker, dpkg, firefox, gdk-pixbuf, git, git, git-lfs, obs-scm-bridge, python-PyYAML, gnutls, kernel, libarchive, libxml2, net-tools, netty, perl-Crypt-CBC, polkit, postgresql14, postgresql15, sqlite3, thunderbird, tomcat10, and udisks2), and Ubuntu (linux, linux-aws, linux-aws-5.15, linux-gcp, linux-gcp-5.15, linux-gkeop,
linux-hwe-5.15, linux-ibm, linux-intel-iotg, linux-intel-iotg-5.15,
linux-lowlatency, linux-lowlatency-hwe-5.15, linux-nvidia,
linux-nvidia-tegra, linux-nvidia-tegra-5.15, linux-nvidia-tegra-igx,
linux-oracle, linux-raspi, linux-xilinx-zynqmp, linux, linux-aws, linux-aws-6.14, linux-gcp, linux-hwe-6.14, linux-raspi,
linux-realtime, linux-realtime-6.14, linux, linux-aws, linux-aws-6.8, linux-gcp, linux-lowlatency,
linux-lowlatency-hwe-6.8, linux-oracle, linux-oracle-6.8, linux, linux-aws, linux-kvm, linux-lts-xenial, linux-azure, linux-fips, linux-fips, linux-aws-fips, linux-gcp-fips, linux-gke, linux-hwe-6.8, linux-nvidia, linux-nvidia-6.8,
linux-nvidia-lowlatency, linux-raspi, linux-gke, linux-kvm, linux-oem-6.14, linux-realtime, linux-intel-iot-realtime, linux-realtime, linux-raspi-realtime, openldap, and udisks2).

[$] Linux’s missing CRL infrastructure

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

In July 2024,

Let’s Encrypt
, the nonprofit TLS certificate authority (CA),

announced

that it would be ending support for the

online certificate status protocol

(OCSP), which is used to determine when a server’s signing certificate has been
revoked. This prevents a compromised key from being used to impersonate a web
server.
The organization cited privacy concerns, and recommended that people
rely on

certificate revocation lists
(CRLs)
instead. On August 6, Let’s Encrypt
followed through and disabled its OCSP service. This poses a
problem for Linux systems that must now rely on CRLs because, unlike on other
operating systems, there is no standardized way for Linux programs to share a
CRL cache.