- 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.be...@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....@nongnu.org Fri Oct 11 20:32:42 2024
-Delivered-To: berra...@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....@nongnu.org designates 209.51.188.17 as 
permitted sender) 
smtp.mailfrom="qemu-devel-bounces+berrange=redhat....@nongnu.org"
-Return-Path: <qemu-devel-bounces+berrange=redhat....@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 <berra...@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....@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....@nongnu.org designates 209.51.188.17 as 
permitted sender) 
smtp.mailfrom="qemu-devel-bounces+berrange=redhat....@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 <berra...@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: berra...@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 <berra...@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 <berra...@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-boun...@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.k...@gmail.com>)
- id 1szLMb-00020P-1q
- for qemu-de...@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.k...@gmail.com>)
- id 1szLMW-0003EY-RE
- for qemu-de...@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-de...@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.k...@gmail.com>
-To: qemu-de...@nongnu.org
-Cc: Khem Raj <raj.k...@gmail.com>, Laurent Vivier <laur...@vivier.eu>,
- Paolo Bonzini <pbonz...@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.k...@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-de...@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-requ...@nongnu.org?subject=unsubscribe>
-List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel>
-List-Post: <mailto:qemu-de...@nongnu.org>
-List-Help: <mailto:qemu-devel-requ...@nongnu.org?subject=help>
-List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>,
- <mailto:qemu-devel-requ...@nongnu.org?subject=subscribe>
-Errors-To: qemu-devel-bounces+berrange=redhat....@nongnu.org
-Sender: qemu-devel-bounces+berrange=redhat....@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.k...@gmail.com>
-Cc: Laurent Vivier <laur...@vivier.eu>
-Cc: Paolo Bonzini <pbonz...@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


Reply via email to