Welcome to LWN.net
LWN.net is a reader-supported news site dedicated to producing the best coverage from within the Linux and free software development communities. See the LWN FAQ for more information, and please consider subscribing to gain full access and support our activities.
[$] Peer-to-peer DMA
In a plenary session on the first day of the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit, Stephen Bates led a discussion about peer-to-peer DMA (P2PDMA). The idea is to remove the host system's participation in a transfer of data from one PCIe-connected device to another. The feature was originally aimed at NVMe SSDs so that data could simply be copied directly to and from the storage device without needing to move it to system memory and then from there to somewhere else.
[$] A 2023 DAMON update
DAMON is a framework that allows user space to influence and control the kernel's memory-management operations. It first entered the kernel with the 5.15 release, and has been gaining capabilities ever since. At the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit, DAMON author Seongjae Park provided an overview of the current status of DAMON development and where it can be expected to go in the near future.
[$] User-space control of memory management
In a remotely presented, memory-management-track session at the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit, Frank van der Linden pointed out that the line dividing resources controlled by the kernel from those managed by user space has moved back and forth over the years. He is currently interested in making it possible for user space to take more control over the management of memory resources. A proposal was discussed in general terms, but it will require some real scrutiny on its way toward the mainline, if it ever gets there.
[$] Memory overcommit in containerized environments
Overcommitting memory is a longstanding tradition in the Linux world (and beyond); it is rare that an application uses all of the memory allocated to it, so overcommitting can help to improve overall memory utilization. In situations where memory has been overcommitted, though, it may be necessary to respond quickly to ensure that applications have the memory they actually need, even when those needs change. At the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit, T.J. Alumbaugh (in the room) and Yuanchu Xie (remotely) presented a new mechanism intended to help hosts provide containerized guests with the memory resources they need.
[$] Live migration of virtual machines over CXL
Virtual-machine hosting can be a fickle business; once a virtual machine has been placed on a physical host, there may arise a desire to move it to a different host. The problem with migrating virtual machines, though, is that there is a period during which the machine is not running; that can be disruptive even if it is brief. At the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit, Dragan Stancevic, presenting remotely, showed how CXL shared memory can be used to migrate virtual machines with no offline time.
[$] 1½ Topics: realtime throttling and user-space adaptive spinning
The Linux CPU scheduler will let realtime tasks hog the CPU to the
exclusion of everything else — except when it doesn't. At the 2023 Open
Source Summit North America, Joel Fernandes covered the problems with
the kernel's realtime throttling mechanism and a couple of potential
solutions. As a bonus, since the room was unscheduled for the following
slot, attendees were treated to a spontaneous session on
adaptive spinning in user space run by André Almeida.
[$] The future of memory tiering
Memory tiering is the practice of dividing physical memory into separate levels according to its performance characteristics, then allocating that memory in a (hopefully) optimal manner for the workload the system is running. The subject came up repeatedly during the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit. One session, led by David Rientjes, focused directly on tiering and how it might be better supported by the Linux kernel.
[$] Memory-management changes for CXL
Kyungsan Kim began his talk at the 2023 Linux Storage, Filesystem, Memory-Management and BPF Summit with a claim that the Compute Express Link (CXL) technology is leading to fundamental changes in computer architecture. The kernel will have to respond with changes of its own, including in its memory-management layer. Drawing on some experience gained at Samsung, Kim had a few suggestions on the form those changes should take — suggestions that ran into some disagreement from other memory-management developers.
[$] Faster CPython at PyCon, part two
In part one of the tale, Brandt Bucher looked specifically at the CPython optimizations that went into Python 3.11 as part of the Faster CPython project. More of that work will be appearing in future Python versions, but on day two of PyCon 2023 in Salt Lake City, Utah, Mark Shannon provided an overall picture of CPython optimizations, including efforts made over the last decade or more, with an eye toward the other areas that have been optimized, such as the memory layout for the internal C data structures of the interpreter. He also described some additional optimization techniques that will be used in Python 3.12 and beyond.
[$] Reconsidering the direct-map fragmentation problem
Mike Rapoport has put a considerable amount of effort into solving the problem of direct-map fragmentation over the years; this has resulted in proposals like __GFP_UNMAPPED and a session at the 2022 Linux Storage, Filesystem, Memory-Management, and BPF Summit. Rapoport returned at the 2023 Summit to revisit this issue, but he started with a somewhat surprising spoiler.
Security updates for Tuesday
Security updates have been issued by Debian (epiphany-browser, python-ipaddress, and sqlparse), Fedora (python-django3 and qemu), Red Hat (apr-util, autotrace, bind, bind9.16, container-tools:4.0, container-tools:rhel8, ctags, curl, device-mapper-multipath, dhcp, edk2, emacs, freeradius:3.0, freerdp, frr, gcc-toolset-12-binutils, git, git-lfs, go-toolset:rhel8, grafana, grafana-pcp, gssntlmssp, Image Builder, kernel, kernel-rt, libarchive, libreswan, libtar, libtiff, mingw-expat, mysql:8.0, net-snmp, pcs, php:7.4, poppler, postgresql-jdbc, python-mako, python27:2.7, python38:3.8 and python38-devel:3.8, python39:3.9 and python39-devel:3.9, samba, sysstat, tigervnc, unbound, virt:rhel and virt-devel:rhel, wayland, webkit2gtk3, xorg-x11-server, and xorg-x11-server-Xwayland), SUSE (dmidecode, postgresql13, prometheus-sap_host_exporter, python-cryptography, rekor, and thunderbird), and Ubuntu (firefox, matrix-synapse, and mysql-8.0).
Sourceware becomes an SFC member project
Sourceware.org, which has long played host to many important projects, has announced that it has become a member project of the Software Freedom Conservancy — a move that has been in the works for some time.
Recent discussions have inspired the Sourceware volunteers to think carefully about the future and succession of the leadership for this important hosting project. By joining SFC, Sourceware gains access to strategic advice and governance expertise to recruit new volunteers and raise funds to support work on Sourceware infrastructure.
See this article for more background on those recent discussions.
Security updates for Monday
Security updates have been issued by Debian (golang-websocket, kernel, postgresql-11, and thunderbird), Fedora (firefox, kernel, libreswan, libssh, tcpreplay, and thunderbird), SUSE (dcmtk, gradle, libraw, postgresql12, postgresql13, postgresql14, and postgresql15), and Ubuntu (firefox, nova, and thunderbird).
Kernel prepatch 6.4-rc2
The second 6.4 kernel prepatch is out for
testing. "This being rc2, it's been a fairly calm week as people are
only starting to find any issues from the merge window, but it all looks
fine.
"
Security updates for Friday
Security updates have been issued by Debian (postgresql-13 and webkit2gtk), Fedora (git), SUSE (helm and skopeo), and Ubuntu (cinder, nova, python-glance-store, and python-os-brick).
Stable kernels 6.3.2, 6.2.15, 6.1.28, and 5.15.111
Greg Kroah-Hartman has announced the release of the 6.3.2, 6.2.15, 6.1.28, and 5.15.111 stable kernels. These all contain important fixes throughout the kernel tree, as usual.
Security updates for Thursday
Security updates have been issued by Debian (firefox-esr and nvidia-graphics-drivers-legacy-390xx), Fedora (firefox, java-11-openjdk, LibRaw, moodle, python-django3, and vtk), Slackware (mozilla), SUSE (buildah, cloud-init, container-suseconnect, firefox, golang-github-prometheus-prometheus, kernel, and ntp), and Ubuntu (heat, linux-azure-fde-5.15, linux-raspi, linux-oem-5.17, linux-oem-6.0, linux-raspi, linux-raspi-5.4, linux-raspi2, neutron, openvswitch, and sqlparse).
Catanzaro: GNOME Core Apps Update
Michael Catanzaro has posted an update on the state of the GNOME core apps collection and the process used to make changes to it.
Although most of the core app changes have gone smoothly, we ran into some trouble replacing Terminal with Console. Console provides a fresher and simpler user interface on top of vte, the same terminal backend used by Terminal, so Console and Terminal share much of the same underlying functionality. This means work of the Terminal maintainers is actually key to the success of Console. Using a new terminal app rather than evolving Terminal allowed for bigger changes to the default user experience without upsetting users who prefer the experience provided by Terminal. I think Console is generally nicer than Terminal, but it is missing a few features that Fedora Workstation developers thought were important to have before replacing Terminal with Console. Long story short: this core app change was effectively rejected by one of our most important downstreams. Since then, Console has not seen very much development.
Julia 1.9 released
Version 1.9 of the Julia language has been released. Notable changes include improved caching of native code, faster load times via a "package extensions" mechanism, better memory-usage introspection, and more.
Security updates for Wednesday
Security updates have been issued by Debian (emacs), Fedora (chromium, community-mysql, and LibRaw), Red Hat (nodejs nodejs-nodemon, nodejs:18, and webkit2gtk3), Slackware (mozilla), SUSE (amazon-ssm-agent, conmon, distribution, docker-distribution, google-cloud-sap-agent, ignition, kernel, ntp, prometheus-ha_cluster_exporter, protobuf-c, python-cryptography, runc, and shim), and Ubuntu (ceph, freetype, and node-css-what).
