From: Adolf Belka <adolf.belka@ipfire.org>
To: development@lists.ipfire.org
Cc: Adolf Belka <adolf.belka@ipfire.org>
Subject: [PATCH] qemu: Update to version 10.0.2
Date: Thu, 19 Jun 2025 22:20:46 +0200 [thread overview]
Message-ID: <20250619202046.1529689-3-adolf.belka@ipfire.org> (raw)
In-Reply-To: <20250619202046.1529689-1-adolf.belka@ipfire.org>
- Update from version 9.2.0 to 10.0.2
- Update of rootfile
- Removal of sched-attr patch as this is now built into the source tarball.
- Changelog
10.0
Removed features and incompatible changes
Consult the 'Removed features' page for details of suggested replacement
functionality.
New deprecated options and features
The -old-param option (used for booting some ancient Arm kernels) has been
deprecated, as none of the boards QEMU supports need it.
The Arm PXA2xx CPUs and the iwMMXt emulation have been deprecated and will
be removed in a future release.
Consult the "Deprecated Features" chapter of the QEMU System Emulation User's
Guide for further details of the deprecations and their suggested replacements.
Arm
iwMMXt emulation and the PXA2xx CPUs have been deprecated and will be
removed in a future release. (You were only using this if you explicitly
selected a pxa2xx CPU type on the command line or by environment variable.)
When emulating FEAT_PAUTH, the default pointer authentication algorithm
has been changed from the architected QARMA5 algorithm to QEMU's
implementation-defined algorithm. This is non-cryptographic but is
significantly faster, which is what most users will want. If you need the
architected algorithm you can select it with the 'pauth-qarma5'
CPU option, e.g. "-cpu max,pauth-qarma5=on".
The CPU now emulates the Secure EL2 physical and virtual timers
New CPU architectural features emulated:
FEAT_AFP
FEAT_RPRES
FEAT_XS
The Stellaris boards now model both I2C controllers
The 'virt' board now has a 'highmem-mmio-size' property to allow
configuring a larger PCIe MMIO region; this can be useful when passing
through a lot of PCI devices with large MMIO BARs to a VM.
New board models:
"npcm845-evb": NPCM845 Evaluation board
"imx8mp-evk": i.MX 8M Plus EVK board
HPPA
New SeaBIOS-hppa version 18 with lots of fixes and enhancements
Emulate up to 256 GB RAM on 64-bit guests
Speed up translation time
Improve virtual CPU reset function
Support space register hashing via diag registers as required by 64-bit HP-UX
Add emulation of Diva GSP ("Guardian Service Processor" / BMC) PCI boards
Artist graphic card can be disabled on command line with "-global
artist.disable=true"
Added Astro LLMIO support, which allows adding other graphic cards, e.g.
with "-device ati-vga"
LoongArch
KVM support cpu hotplug.
kVM support paravirt ipi.
KVM support kvm steal time.
KVM support virtual extioi feature.
ISA and Extensions
Support riscv-iommu-sys device
Introduce svukte ISA extension
Support ssstateen extension
Reduce the overhead for simple RISC-V vector unit-stride loads and stores
Add 'sha' support
Add traces for exceptions in user mode
Update Pointer Masking to Zjpm v1.0
Add Smrnmi support
Add RISC-V Counter delegation ISA extension support
Add support for Smdbltrp and Ssdbltrp extensions
Introduce a translation tag for the IOMMU page table cache
Support Supm and Sspm as part of Zjpm v1.0
Machines
Deprecate the default RISC-V machine
Add Tenstorrent Ascalon CPU
Support for RV64 Xiangshan Nanhu CPU
Add AIA userspace irqchip_split support
Add Microblaze V generic board
Support 64-bit address of initrd
Add V bit to GDB priv reg
Fixes and Misc
Correct the validness check of iova
Fix APLIC in_clrip and clripnum write emulation
Upgrade ACPI SPCR table to support SPCR table revision 4 format
Fix timebase-frequency when using KVM acceleration
Convert htif debug prints to trace event
s390x
Add feature definitions and CPU model for the generation 17 mainframe CPU
Add support for virtio-mem on s390x
Fix CPU emulation bugs with the PPNO and MCV instructions
Allow bypassing IOMMU for PCI devices for enhanced performance
x86
Faster emulation of string instructions.
ClearwaterForest cpu model
SierraForest-v2 cpu model (for changes vs V1 see commit c597ff5339)
ACPI / SMBIOS
Workaround 'PCI Label Id' Windows bug, which is normally harmless but on
localized versions can lead to guest hangs (commit 0b053391985)
Block devices
The 'virtio-scsi' device has gained true multiqueue support where different
queues of a single controller can be processed by different I/O threads
(this catches up to the `virtio-blk` support that was added in QEMU 9.0).
This can improve scalability in cases where the guest submitted enough
I/O to saturate the host CPU running a single I/O thread processing the
virtio-scsi requests. Multiple I/O threads can be configured using the
new 'iothread-vq-mapping' property.
Add new handshake-max-seconds optional parameter to nbd-server-start QMP
command, and counterpart --handshake-limit option to qemu-nbd. This
allows fine-tuning the duration allowed for client negotiation during
integration testing.
qemu-nbd no longer hangs on exit when run as a daemon (the --fork
command-line option) when qemu is built with the simple trace backend.
Graphics
Add new 'apple-gfx-pci' and 'apple-gfx-mmio' devices which use the macOS
host's ParavirtualizedGraphics.framework to provide accelerated graphics
to macOS guests. 'apple-gfx-pci' is intended for use on x86-64,
'apple-gfx-mmio' replicates the graphics device implemented by the
Virtualization.framework from the aarch64 version of macOS.
IPMI
Multiple different internal BMCs are now supported.
The "Get Channel Info" command is now implemented in the internal BMC.
Add support for the "don't log" flag in the set watchdog command. This
will prevent watchdog timer events being added to the IPMI event log.
Return an error if invalid bits are set in the "Set BMC Global Enables"
command in the internal BMC.
VFIO
Improved support for IGD passthrough on all Intel Gen 11 and 12 devices
Refactored dirty tracking engine to include VFIO state in calc-dirty-rate
Improved error reporting for MMIO region mapping failures
Improved property documentation
Implemented basic PCI PM capability backing
Added multifd support for VFIO migration
Added support for old ATI GPUs (x550)
Deprecated vfio-plaform
Misc fixes
virtio
virtio-mem is now also supported on s390x
virtio-balloon guests stats are now cleared (set to zero) upon
device/machine reset.
9pfs
Fix a regression regarding CVE-2023-2861 with security_model=passthrough
which caused certain sockets on guest to fail (bug #2337, commit b5e3f63a).
multidevs=remap is new default behaviour (see commit a2f17bd4).
Audio
-audio dbus learned "nsamples" option, to set number of samples per
read/write
Character devices
"hub": new chardev, aggregate multiple chardev backends
GUI
VC: add support for cursor DECSC and DECRC commands
VC: implement DCH (delete) and ICH (insert) commands
VC: various parsing/display fixes
GDBStub
linux-user processes can defer connection using -g <port>,suspend=n
TCG Plugins
core plugin code is now only built once
Migration
Fixed regressions in s390x (#2704) and pre-9.0 to post-9.1 migrations with
multifd capability (#2720)
Fixed long-standing bug with paused VMs (#686)
New migration mode "cpr-transfer" to support live updates (documentation).
Block device backends and tools
The Linux AIO and io_uring backends can now make use of the RWF_DSYNC flag
for FUA write requests instead of emulating it with a normal write
followed by an fdatasync() call. This can improve performance for guest
disks with disabled write cache significantly (cache=writethrough and
cache=directsync result in such configurations), in particular if the
host disk is already operating in a write through cache mode.
The user can now actively manage if nodes are active or inactive. Amongst
others, this is required to perform safe live migration with a
qemu-storage-daemon based backend. It also allows starting block device
operation on the live migration destination of a paused VM without first
resuming the VM (which was previously the only way to activate images).
The vpc block driver has been fixed to handle VHD images exported from
Azure more correctly
runtime
Improved networking emulation regarding netlink and multicast
PowerPC
Added /proc/cpuinfo file emulation
Guest agent
Implement a 'guest-get-load' command (Linux only)
Don't daemonize before the channel is initialized
This changes the exit code when QGA fails with the daemonize option
Optimize the freeze-hook script logic of logging errors
Log to syslog if the file log is unavailable
fsfreeze command: Skip bind mounts in the FS list
Documentation
All QEMU Machine Protocol (QMP) interface documentation (QEMU, QEMU Storage
Daemon, QEMU Guest Agent) pages have been drastically overhauled,
featuring a new look and layout.
New QMP reference indices have been added per-API: QEMU QMP Index,
QEMU Storage Daemon QMP Index, and QEMU Guest Agent QMP Index. The
indices are sorted both per-type (Commands, Events, data types) and
alphabetically; providing a convenient one-page reference for all
available Commands and Events for a given interface.
All Commands, Events, and all documentation-referenced types are now
cross-reference-able; with clickable cross-references inserted in many
cases to make navigating complex commands, events, and types much easier.
References that aren't generated from metadata but are instead
"hardcoded" in the source documentation have not yet been converted, but
all generated references have been. (i.e. all type names for
arguments/members, return values, and "The members of..." pointers are
now clickable.)
Some return types are still omitted where they are undocumented, but this
will be rectified for next release.
Some build-time conditional information ("if", "ifcond") is temporarily
missing from the new documentation. For commands, events, or
members/values/arguments that are only conditionally available, please
consult the runtime introspection data to determine availability for a
given binary, as per usual. This will also be rectified for the next
release.
Support for device models written in the Rust programming language is still
considered experimental, and does not have full feature parity compared to
QEMU binaries that are compiled with --disable-rust. However, it has matured
enough that developing new devices can (almost entirely) be done in the safe
subset of Rust.
For now, binaries compiled with --enable-rust link statically to Rust libstd.
This is not suitable for e.g. Linux distributions but could be okay for other,
special purpose distributions of QEMU.
The current minimum supported Rust version is 1.63.0, with plans to move to
1.77.0. This means that:
--enable-rust does not work with Debian bullseye's rustc packages.
in the future, --enable-rust will not support Debian bookworm's rustc for
the mips64el architecture, and will require the rustc-web package for
other architectures.
Debian bullseye and bookworm otherwise remains supported platforms for QEMU;
Debian bullseye will cease to be a supported platform as soon as Debian
trixie is released.
Testing and CI
updated baseline tuxrun tests to 19/11/2024 images
added new test for virtio-vulkan (needs upto date build with access to dri)
qtest clock_set and clock_step now check return values
riscv64 cross compile now based on trixie
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
config/rootfiles/packages/qemu | 3 +
lfs/qemu | 7 +-
src/patches/qemu-9.2.0-sched-attr.patch | 192 ------------------------
3 files changed, 6 insertions(+), 196 deletions(-)
delete mode 100644 src/patches/qemu-9.2.0-sched-attr.patch
diff --git a/config/rootfiles/packages/qemu b/config/rootfiles/packages/qemu
index 49105c523..90d70a83f 100644
--- a/config/rootfiles/packages/qemu
+++ b/config/rootfiles/packages/qemu
@@ -78,6 +78,7 @@ usr/share/qemu/firmware/60-edk2-aarch64.json
usr/share/qemu/firmware/60-edk2-arm.json
usr/share/qemu/firmware/60-edk2-i386.json
usr/share/qemu/firmware/60-edk2-loongarch64.json
+usr/share/qemu/firmware/60-edk2-riscv64.json
usr/share/qemu/firmware/60-edk2-x86_64.json
#usr/share/qemu/hppa-firmware.img
#usr/share/qemu/hppa-firmware64.img
@@ -122,6 +123,7 @@ usr/share/qemu/linuxboot_dma.bin
usr/share/qemu/multiboot.bin
usr/share/qemu/multiboot_dma.bin
usr/share/qemu/npcm7xx_bootrom.bin
+usr/share/qemu/npcm8xx_bootrom.bin
#usr/share/qemu/openbios-ppc
#usr/share/qemu/openbios-sparc32
#usr/share/qemu/openbios-sparc64
@@ -130,6 +132,7 @@ usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.bin
#usr/share/qemu/palcode-clipper
#usr/share/qemu/petalogix-ml605.dtb
#usr/share/qemu/petalogix-s3adsp1800.dtb
+usr/share/qemu/pnv-pnor.bin
usr/share/qemu/pvh.bin
usr/share/qemu/pxe-e1000.rom
usr/share/qemu/pxe-eepro100.rom
diff --git a/lfs/qemu b/lfs/qemu
index 5358c566d..ca48e0fd2 100644
--- a/lfs/qemu
+++ b/lfs/qemu
@@ -27,7 +27,7 @@ include Config
SUMMARY = Machine emulator and virtualizer
# If you update the version also qemu-ga !!!
-VER = 9.2.0
+VER = 10.0.2
THISAPP = qemu-$(VER)
DL_FILE = $(THISAPP).tar.xz
@@ -35,7 +35,7 @@ DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = qemu
-PAK_VER = 45
+PAK_VER = 46
DEPS = alsa libusbredir spice libseccomp libslirp
@@ -57,7 +57,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = 5800556f356e4324124e250c02a07857eef3a6f22995a819fe972061fa750ebf7233da64ae4c0a3e775b1639c870be4b7312d86d9866fedf2bc99074aad0a10a
+$(DL_FILE)_BLAKE2 = be4ddf050d2102cefded5b4967222df749ee8af92c2427c31a9b29b3800fac8bb328daf2c38d11aa307b51eb7d7243f9b064b3bf24d446a001e5520359ee83c3
install : $(TARGET)
@@ -90,7 +90,6 @@ $(subst %,%_BLAKE2,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/qemu-9.2.0-sched-attr.patch
cd $(DIR_APP) && ./configure \
--prefix=/usr \
--sysconfdir=/etc \
diff --git a/src/patches/qemu-9.2.0-sched-attr.patch b/src/patches/qemu-9.2.0-sched-attr.patch
deleted file mode 100644
index 15adf3ce1..000000000
--- a/src/patches/qemu-9.2.0-sched-attr.patch
+++ /dev/null
@@ -1,192 +0,0 @@
-From qemu-devel-bounces+berrange=redhat.com@nongnu.org Fri Oct 11 20:32:42 2024
-Delivered-To: berrange@gapps.redhat.com
-Received: by 2002:a05:612c:fcb:b0:49e:3967:5c with SMTP id kg11csp620284vqb;
- Fri, 11 Oct 2024 12:32:43 -0700 (PDT)
-X-Forwarded-Encrypted: i=2; AJvYcCXPcgyQ0/+OIS7vrT6LX5S6B3Hgz9IoezpGzlHzuQ86lhsSq6u4TrVfGwET6WFesjl4msgGP886/Q==@gapps.redhat.com
-X-Google-Smtp-Source: AGHT+IGI1MzgaHjMk041SIq3SzZGJRAF05keA8usOtLVfsqz+UnG8gS/7JH2MnqELZrotA/GJ+FI
-X-Received: by 2002:a05:6870:530c:b0:277:e35a:d2d5 with SMTP id 586e51a60fabf-2886e0d7223mr2593115fac.47.1728675162879;
- Fri, 11 Oct 2024 12:32:42 -0700 (PDT)
-ARC-Seal: i=1; a=rsa-sha256; t=1728675162; cv=none;
- d=google.com; s=arc-20240605;
- b=alETPlokQysotchMz04b4QkeW4n7IaCvDHuYMZh698k8mF5RJMclj7AfzOWMyGXURw
- kFfdMDxoHBlzWY9bTAGsH6EBkFDcJ9RyMs2Oy/exl09b3Zbt/LaW/PgqJZWi7DqZe7FD
- Zo3bqW5OSwWxU/vpy6n8B4EV22uFeRNhdTlzj0nbU4h+YpUcUzXR++ssowqa367TMQ5s
- THtVdddGT62AlbkeybdC/gTVxTt0RktEBMKTh+MzuZJ1rcgMb+pbG6h/XF5Iub2C+szk
- EkyaW96aO1YTzalK4HCCL7cuCauVGvVShSjUfPFMqXRxvzVfFqn02zZh6C4AXb/a/gIT
- YiXA==
-ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605;
- h=content-transfer-encoding:sender:errors-to:list-subscribe:list-help
- :list-post:list-archive:list-unsubscribe:list-id:precedence
- :mime-version:message-id:date:subject:cc:to:from:delivered-to;
- bh=PO9IbOEY2YqKRkyInUx1mFCEKdNyF6F1Ade1P8ET5cM=;
- fh=xgCffyEVvm6hjKwQ8pT/suARWWrEEvCTAvMVKpBgaZg=;
- b=Q4fnfvzilypAHQRG6QbhiDXJWTDiP8dnRA4CB3fnXjC3sGRa+4+abHQkdOy6pMW4T9
- HhCdtLquJqRIBSQNVEVZMN5bFDX+gIaEA6pmEbd8Sdi47dl2+VS7vP9dQWf/FOtrkGqg
- D6K6DlbOdtzmdoTtWcI9Zm1eg6/98cVH2/hqzO/Ig1eI47UvIJpZtm3CMa3y5BgoJhmX
- v1pxjLmbVwmOdo8YkXgT3bH5iAPwXjn8FU7q4Z+CX3XChIQksWGvkB+zR/d7xqsEEdTv
- x85zJC/K4M9DAnuyJA2rIcrt/QUDHpdAPfcV2gDWr4IBhF27Ul9j6vjXzKNHaGjJxXbF
- hFsw==;
- dara=google.com
-ARC-Authentication-Results: i=1; mx.google.com;
- spf=pass (google.com: domain of qemu-devel-bounces+berrange=redhat.com@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+berrange=redhat.com@nongnu.org"
-Return-Path: <qemu-devel-bounces+berrange=redhat.com@nongnu.org>
-Received: from us-smtp-inbound-delivery-1.mimecast.com (us-smtp-inbound-delivery-1.mimecast.com. [205.139.110.120])
- by mx.google.com with ESMTPS id af79cd13be357-7b114998ee3si449329885a.281.2024.10.11.12.32.42
- for <berrange@gapps.redhat.com>
- (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
- Fri, 11 Oct 2024 12:32:42 -0700 (PDT)
-Received-SPF: pass (google.com: domain of qemu-devel-bounces+berrange=redhat.com@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17;
-Authentication-Results: mx.google.com;
- spf=pass (google.com: domain of qemu-devel-bounces+berrange=redhat.com@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+berrange=redhat.com@nongnu.org"
-Received: from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com
- (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by
- relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,
- cipher=TLS_AES_256_GCM_SHA384) id us-mta-14-mwcDIPw2Ma-2fc8EyJ2Anw-1; Fri,
- 11 Oct 2024 15:32:41 -0400
-X-MC-Unique: mwcDIPw2Ma-2fc8EyJ2Anw-1
-Received: from mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.15])
- (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
- key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
- (No client certificate requested)
- by mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id A96C819560AE
- for <berrange@gapps.redhat.com>; Fri, 11 Oct 2024 19:32:40 +0000 (UTC)
-Received: by mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix)
- id A3F151956089; Fri, 11 Oct 2024 19:32:40 +0000 (UTC)
-Delivered-To: berrange@redhat.com
-Received: from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.23])
- by mx-prod-int-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 9EAE41955F42
- for <berrange@redhat.com>; Fri, 11 Oct 2024 19:32:40 +0000 (UTC)
-Received: from us-smtp-inbound-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120])
- (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
- key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
- (No client certificate requested)
- by mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 4A35819560B5
- for <berrange@redhat.com>; Fri, 11 Oct 2024 19:32:40 +0000 (UTC)
-Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by
- relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
- cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
- us-mta-656-VIioc_tgPx6dfe3wuTFP4A-1; Fri, 11 Oct 2024 15:32:38 -0400
-X-MC-Unique: VIioc_tgPx6dfe3wuTFP4A-1
-Received: from localhost ([::1] helo=lists1p.gnu.org)
- by lists.gnu.org with esmtp (Exim 4.90_1)
- (envelope-from <qemu-devel-bounces@nongnu.org>)
- id 1szLMh-00020r-5j; Fri, 11 Oct 2024 15:31:55 -0400
-Received: from eggs.gnu.org ([2001:470:142:3::10])
- by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
- (Exim 4.90_1) (envelope-from <raj.khem@gmail.com>)
- id 1szLMb-00020P-1q
- for qemu-devel@nongnu.org; Fri, 11 Oct 2024 15:31:51 -0400
-Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635])
- by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
- (Exim 4.90_1) (envelope-from <raj.khem@gmail.com>)
- id 1szLMW-0003EY-RE
- for qemu-devel@nongnu.org; Fri, 11 Oct 2024 15:31:46 -0400
-Received: by mail-pl1-x635.google.com with SMTP id
- d9443c01a7336-20bb610be6aso25161715ad.1
- for <qemu-devel@nongnu.org>; Fri, 11 Oct 2024 12:31:44 -0700 (PDT)
-X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
- d=1e100.net; s=20230601; t=1728675103; x=1729279903;
- h=content-transfer-encoding:mime-version:message-id:date:subject:cc
- :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
- :reply-to;
- bh=PO9IbOEY2YqKRkyInUx1mFCEKdNyF6F1Ade1P8ET5cM=;
- b=K3X31NNuvHdknW5P8UcnhDjhiG8YvVt80acZ9o0cp4OYATGyivVrgqlV16YtlE7nbP
- c2GxVasHb4XHOFgQ/OS9twOzcL7BvXjTYuSlqOjY9QQ9Ng38MAMFgLpleBdUdi0JHrfh
- vH2pyWqiWlGfPiDmnJWawogp9bgGCHsqyjPUtcw1LCUqNNx0sfyV98mwYq27/2m4POny
- BQ0yFM/O7SF2EkZuaQwCJWPmH3fQatSgwEAq5u1SGy/Tn9a9GB4Iyolqgm4mMJBiful/
- xoI0a2JEsYatNItIvqoWJ5uBgwrOZHldhxPZGCUP9cL5ecB1flcnPXHxLR4p0/kiQzuI
- LzCw==
-X-Gm-Message-State: AOJu0YxWyAwGwQqYK1sZdfMljusz9BkH4fhylN1UvHETC7GDQDWtfFQS
- zz40Z5A7yrfIoS4SkMLM2xTSe57qyfKfFPHRVJe68kPHnsvbdEUpZAecLqJ/
-X-Received: by 2002:a17:902:d2c5:b0:20c:a644:817f with SMTP id
- d9443c01a7336-20ca6448261mr49539675ad.7.1728675103070;
- Fri, 11 Oct 2024 12:31:43 -0700 (PDT)
-Received: from apollo.hsd1.ca.comcast.net ([2601:646:9d80:4380::f083])
- by smtp.gmail.com with ESMTPSA id
- d9443c01a7336-20c8bc13551sm26871055ad.88.2024.10.11.12.31.42
- (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
- Fri, 11 Oct 2024 12:31:42 -0700 (PDT)
-From: Khem Raj <raj.khem@gmail.com>
-To: qemu-devel@nongnu.org
-Cc: Khem Raj <raj.khem@gmail.com>, Laurent Vivier <laurent@vivier.eu>,
- Paolo Bonzini <pbonzini@redhat.com>
-Subject: [PATCH v2] sched_attr: Do not define for glibc >= 2.41
-Date: Fri, 11 Oct 2024 12:31:40 -0700
-Message-ID: <20241011193140.1047648-1-raj.khem@gmail.com>
-MIME-Version: 1.0
-X-Spam_score_int: -20
-X-Spam_score: -2.1
-X-Spam_bar: --
-X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
- DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
- RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
- SPF_PASS=-0.001 autolearn=ham autolearn_force=no
-X-Spam_action: no action
-X-BeenThere: qemu-devel@nongnu.org
-X-Mailman-Version: 2.1.29
-Precedence: list
-List-Id: <qemu-devel.nongnu.org>
-List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>,
- <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>
-List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel>
-List-Post: <mailto:qemu-devel@nongnu.org>
-List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help>
-List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>,
- <mailto:qemu-devel-request@nongnu.org?subject=subscribe>
-Errors-To: qemu-devel-bounces+berrange=redhat.com@nongnu.org
-Sender: qemu-devel-bounces+berrange=redhat.com@nongnu.org
-X-Mimecast-Impersonation-Protect: Policy=CLT - Impersonation Protection Definition;Similar Internal Domain=false;Similar Monitored External Domain=false;Custom External Domain=false;Mimecast External Domain=false;Newly Observed Domain=false;Internal User Name=false;Custom Display Name List=false;Reply-to Address Mismatch=false;Targeted Threat Dictionary=false;Mimecast Threat Dictionary=false;Custom Threat Dictionary=false
-X-Mimecast-Bulk-Signature: yes
-X-Mimecast-Spam-Signature: bulk
-X-Scanned-By: MIMEDefang 3.0 on 10.30.177.15
-X-Mimecast-Spam-Score: 0
-X-Mimecast-Originator: gmail.com
-Content-Transfer-Encoding: 8bit
-Content-Type: text/plain; charset="US-ASCII"; x-default=true
-Status: RO
-Content-Length: 1578
-Lines: 42
-
-glibc 2.41+ has added [1] definitions for sched_setattr and sched_getattr functions
-and struct sched_attr. Therefore, it needs to be checked for here as well before
-defining sched_attr
-
-Define sched_attr conditionally on SCHED_ATTR_SIZE_VER0
-
-Fixes builds with glibc/trunk
-
-[1] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=21571ca0d70302909cf72707b2a7736cf12190a0;hp=298bc488fdc047da37482f4003023cb9adef78f8
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Cc: Laurent Vivier <laurent@vivier.eu>
-Cc: Paolo Bonzini <pbonzini@redhat.com>
----
-v2: Use SCHED_ATTR_SIZE_VER0 instead of glibc version check
-
- linux-user/syscall.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 1354e75694..caecbb765d 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -359,7 +359,8 @@ _syscall3(int, sys_sched_getaffinity, pid_t, pid, unsigned int, len,
- #define __NR_sys_sched_setaffinity __NR_sched_setaffinity
- _syscall3(int, sys_sched_setaffinity, pid_t, pid, unsigned int, len,
- unsigned long *, user_mask_ptr);
--/* sched_attr is not defined in glibc */
-+/* sched_attr is not defined in glibc < 2.41 */
-+#ifndef SCHED_ATTR_SIZE_VER0
- struct sched_attr {
- uint32_t size;
- uint32_t sched_policy;
-@@ -372,6 +373,7 @@ struct sched_attr {
- uint32_t sched_util_min;
- uint32_t sched_util_max;
- };
-+#endif
- #define __NR_sys_sched_getattr __NR_sched_getattr
- _syscall4(int, sys_sched_getattr, pid_t, pid, struct sched_attr *, attr,
- unsigned int, size, unsigned int, flags);
-
-
--
2.49.0
prev parent reply other threads:[~2025-06-19 20:20 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-19 20:20 [PATCH] libvirt: Update to version 11.4.0 Adolf Belka
2025-06-19 20:20 ` [PATCH] qemu-ga: Update to version 10.0.2 Adolf Belka
2025-06-19 20:20 ` Adolf Belka [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250619202046.1529689-3-adolf.belka@ipfire.org \
--to=adolf.belka@ipfire.org \
--cc=development@lists.ipfire.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox