All posts by corbet

[$] Rust and C filesystem APIs

Post Syndicated from corbet original https://lwn.net/Articles/958072/

As the Rust-for-Linux project
advances, the kernel is gradually
accumulating abstraction layers that enable Rust code to interface with the
existing C code. As the discussion around the set of filesystem
abstractions
posted by Wedson Almeida Filho in December shows, though,
there is some tension between two approaches to the design of those
abstractions. The approach favored by most of the kernel’s C programmers
looks set to win out, but this is a discussion that is likely to return as
the use of Rust in the kernel grows.

[$] The first half of the 6.8 merge window

Post Syndicated from corbet original https://lwn.net/Articles/957188/

The 6.8 merge window has gotten off to a relatively slow start; reasons for
that include a significant scheduler performance regression that Linus
Torvalds stumbled
into
and has spent time tracking down. Even so, 4,282 non-merge
changesets have found their way into the mainline repository for the 6.8
release as of this writing. These commits have brought a number of
significant changes and new features.

Information on the SourceHut outage

Post Syndicated from corbet original https://lwn.net/Articles/958125/

Users of SourceHut will have noticed that the site has been unreachable;
Drew DeVault has now posted a report on
what is happening
(it’s a distributed denial-of-service attack) and
what is being done to recover.

We deal with ordinary DDoS attacks in the normal course of
operations, and we are generally able to mitigate them on our
end. However, this is not an ordinary DDoS attack; the attacker
posesses considerable resources and is operating at a scale beyond
that which we have the means to mitigate ourselves. In response,
before we could do much ourselves to understand or mitigate the
problem, our upstream network provider null routed SourceHut
entirely, rendering both the internet at large, and SourceHut
staff, unable to reach our servers.

OpenSSH announces DSA-removal timeline

Post Syndicated from corbet original https://lwn.net/Articles/958048/

For those of you still using DSA keys with SSH: the project has announced
its plans to remove support for that algorithm around the beginning of
2025.

The only remaining use of DSA at this point should be deeply legacy
devices. As such, we no longer consider the costs of maintaining
DSA in OpenSSH to be justified. Moreover, we hope that OpenSSH’s
final removal of this insecure algorithm accelerates its
deprecation in other SSH implementations and allows maintainers of
cryptography libraries to remove it too.

[$] The kernel “closure” API

Post Syndicated from corbet original https://lwn.net/Articles/957187/

The data structure known as a “closure” first found its way into the
mainline kernel with the addition of bcache in the 3.10 development
cycle. With the advent of bcachefs in
6.7, though, it acquired a second user and was moved to the kernel’s
lib directory, making it available to other kernel users as well.
The documentation of closures in the source is better than that of many
things in the kernel, but there is still room for a gentler introduction.

Stable kernel 4.14.336 (and others)

Post Syndicated from corbet original https://lwn.net/Articles/957351/

The 4.14.336 stable kernel update has been
released with a small handful of fixes; this is the end of the line for the
4.14 stable series:

This is the LAST 4.14.y kernel to be released. It is now
officially end-of-life. Do NOT use this kernel version anymore,
please move to a newer one, as shown on the kernel.org releases
page.

All users of the 4.14 kernel series must upgrade. But then, move
to a newer release. If you are stuck at this version due to a
vendor requiring it, go get support from that vendor for this
obsolete kernel tree, as that is what you are paying them for 🙂

Update: 6.6.11 and 6.1.72 have also now been released.

Stable kernel 4.14.336

Post Syndicated from corbet original https://lwn.net/Articles/957351/

The 4.14.336 stable kernel update has been
released with a small handful of fixes; this is the end of the line for the
4.14 stable series:

This is the LAST 4.14.y kernel to be released. It is now
officially end-of-life. Do NOT use this kernel version anymore,
please move to a newer one, as shown on the kernel.org releases
page.

All users of the 4.14 kernel series must upgrade. But then, move
to a newer release. If you are stuck at this version due to a
vendor requiring it, go get support from that vendor for this
obsolete kernel tree, as that is what you are paying them for 🙂

Vcc: a Clang compiler for Vulkan

Post Syndicated from corbet original https://lwn.net/Articles/957269/

The Vcc compiler has been
announced
.

It’s exactly what the name implies: a clang-based compiler that
outputs code that runs on Vulkan.

Vcc can be thought of as a GLSL and HLSL competitor, but the true
intent of this project is to retire the concept of shading
languages entirely. Unlike existing shading languages, Vcc makes a
honest attempt to bring the entire C/C++ language family to Vulkan,
which means implementing a number of previously unseen features in
Vulkan shaders

The OpenWrt One project

Post Syndicated from corbet original https://lwn.net/Articles/957255/

OpenWrt developer John Crispin says:
In 2024 the OpenWrt project turns 20 years! Let’s celebrate this
anniversary by launching our own first and fully upstream supported
hardware design.
” The rest of the message describes the proposed
OpenWrt-native network-routing system, based Banana Pi boards; the project is
being organized through the Software Freedom Conservancy. (Thanks to Dave
Täht).

Leemhuis: Regression tracking: state of the union early 2024

Post Syndicated from corbet original https://lwn.net/Articles/957252/

Thorsten Leemhuis writes
about his plans
for improving the kernel’s regression handling in the
coming year.

Top-priority will be “make regzbot more useful for kernel subsystem
maintainers” from now on. My tracking efforts of course will
continue, but everything except regressions in the current and the
previous mainline cycle might not see much attention from my
side. This refocusing also means that I won’t work much on
resolving some ambiguities around “how regressions are supposed to
be handled” which lead to tension quite a few times. But all that
should be for the best in the long term.

Shaw: Python 3.13 gets a JIT

Post Syndicated from corbet original https://lwn.net/Articles/957239/

Anthony Shaw describes
the new copy-and-patch JIT
that has been proposed for Python 3.13.

Copy-and-patch was selected because the compilation from bytecodes
to machine code is done as a set of “templates” that are then
stitched together and patched at runtime with the correct
values. This means that your average Python user isn’t running this
complex JIT compiler architecture inside their Python
runtime. Python writing it’s own IL and JIT would also be
unreasonable since so many are available off-the-shelf like LLVMs
and ryuJIT. But a full-JIT would require those being bundled with
Python and all the added overheads. A copy-and-patch JIT only
requires the LLVM JIT tools be installed on the machine where
CPython is compiled from source, and for most people that means the
machines of the CI that builds and packages CPython for python.org.

The 6.7 kernel has been released

Post Syndicated from corbet original https://lwn.net/Articles/957098/

Linus has released the 6.7 kernel.

End result: 6.7 is (in number of commits: over 17k non-merge
commits, with 1k+ merges) one of the largest kernel releases we’ve
ever had, but the extra rc8 week was purely due to timing with the
holidays, not about any difficulties with the larger release.

Some of the headline features in this release are:
the removal of support for the Itanium
architecture,
the first part of the futex2 API,
futex
support
in io_uring,
the BPF exceptions mechanism,
the bcachefs filesystem,
the TCP
authentication option
,
the kernel samepage merging smart
scan mode
, and
networking
support
for the Landlock security module.
See the LWN merge-window summaries (part 1,
part 2) and the (in-progress) KernelNewbies 6.7 page for
more information.

[$] Kernel-text replication on NUMA systems

Post Syndicated from corbet original https://lwn.net/Articles/956900/

Kernel developers often go out of their way to reduce the memory used by
the kernel itself; that memory is not available for the workloads that
people are actually interested in running on their systems. Lower memory
usage also tends to lead to better performance overall. But there are
times when the expenditure of some extra memory can make the system faster.
The replication of the kernel’s text (executable code) and read-only data
across a NUMA system may be a case in point; patch sets have been posted
adding that capability to two architectures.

Computer science pioneer Niklaus Wirth passes away (ITWire)

Post Syndicated from corbet original https://lwn.net/Articles/956864/

ITWire covers
the passing of Niklaus Wirth
.

Wirth is well-remembered for his pioneering work in programming
languages and algorithms. For these achievements, he received the
ACM Turing Award in 1984, inducted as a Fellow of the ACM in 1994,
and a Fellow of the Computer History Museum in 2004.

They include, among many, being chief designer for the programming
languages Euler (1965), PL360 (1966), ALGOL W (1968), Pascal
(1970), Modula (1975), Modula-2 (1978), Oberon (1987), Oberon-2
(1991), and Oberon-07 (2007).