This was prompted by a slop PR that came in via github and while
looking at it I thought what arm_load_dtb really needed was to be
modernised to:
- use autofree to avoid goto fail
- use error_setg to report errors
- use error_fatal rather than open coding exit()
For v2
- applied review tags
- tweak to handle fdt != ms->fdt
- put GStrv in a block
- re-base fixes
Alex.
Alex Bennée (4):
hw/arm: use g_autofree for filename in arm_load_dtb
hw/arm: use g_autofree for fdt in arm_load_dtb
hw/arm: use g_auto(GStrv) for node_path in arm_load_dtb
hw/arm: expose Error * to arm_load_dtb
Ani Sinha (1):
kvm/kvm-all: make kvm_park/unpark_vcpu local to kvm-all.c
Bibo Mao (14):
target/loongarch: Move some function definition to kvm directory
target/loongarch: Define function loongarch_cpu_post_init as static
target/loongarch: Set page size in TLB entry with STLB
target/loongarch: Add header file cpu-mmu.h
target/loongarch: Add enum type TLBRet definition
target/loongarch: Use vaddr in get_physical_address()
target/loongarch: Use MMUAccessType in loongarch_map_tlb_entry()
target/loongarch: Add common function loongarch_check_pte()
target/loongarch: Use loongarch_check_pte in
loongarch_page_table_walker
target/loongarch: Use MMUConext in loongarch_map_tlb_entry()
target/loongarch: Use MMUContext in loongarch_get_addr_from_tlb
target/loongarch: Use MMUContext in loongarch_map_address()
target/loongarch: Use MMUContext in get_physical_address()
target/loongarch: Use correct address when flush tlb
Cornelia Huck (1):
hw: add compat machines for 10.2
Denis V. Lunev (1):
qga: fix potentially not initialized nr_volumes in qga_vss_fsfreeze()
Gustavo Romero (5):
tests/functional: Fix reverse_debugging asset precaching
tests/functional: Mark main in QemuBaseTest class as a static method
target/arm: Clean up of register field definitions
target/arm: Implement FEAT_SCTLR2 and enable with -cpu max
target/arm: Implement FEAT_TCR2 and enable with -cpu max
Igor Mammedov (8):
add cpu_test_interrupt()/cpu_set_interrupt() helpers and use them tree
wide
memory: reintroduce BQL-free fine-grained PIO/MMIO
acpi: mark PMTIMER as unlocked
hpet: switch to fine-grained device locking
hpet: move out main counter read into a separate block
hpet: make main counter read lock-less
kvm: i386: irqchip: take BQL only if there is an interrupt
tcg: move interrupt caching and single step masking closer to user
Joel Stanley (1):
linux-user: Add strace for rseq
Kostiantyn Kostiuk (6):
qga-vss: Replace asserts with condition and report error
qga-vss: Remove unused dependencies
qga: Fix channel initialization check in run_agent_once
qga: ignore channel_init() fail if 'retry_path' is set
qga-vss: Write hex value of error in log
qga/installer: Remove QGA VSS if QGA installation failed
Manos Pitsidianakis (4):
scripts/minikconf.py: fix invalid attribute access
scripts/minikconf.py: s/Error/KconfigParserError
rust: declare self as qemu_api for proc-macros
hw/arm: add static NVDIMMs in device tree
Marc-André Lureau (1):
rust/qemu-api-macros: make derive(Object) friendly when missing parent
Mark Cave-Ayland (19):
hw/i386/pc_piix.c: restrict isapc machine to 32-bit CPUs
hw/i386/pc_piix.c: restrict isapc machine to 3.5G memory
hw/i386/pc_piix.c: remove include for loader.h
hw/i386/pc_piix.c: inline pc_xen_hvm_init_pci() into pc_xen_hvm_init()
hw/i386/pc_piix.c: duplicate pc_init1() into pc_isa_init()
hw/i386/pc_piix.c: remove pcmc->pci_enabled dependent initialisation
from pc_init_isa()
hw/i386/pc_piix.c: remove igvm initialisation from pc_init_isa()
hw/i386/pc_piix.c: remove SMI and piix4_pm initialisation from
pc_init_isa()
hw/i386/pc_piix.c: remove SGX initialisation from pc_init_isa()
hw/i386/pc_piix.c: remove nvdimm initialisation from pc_init_isa()
hw/i386/pc_piix.c: simplify RAM size logic in pc_init_isa()
hw/i386/pc_piix.c: hardcode hole64_size to 0 in pc_init_isa()
hw/i386/pc_piix.c: remove pc_system_flash_cleanup_unused() from
pc_init_isa()
hw/i386/pc_piix.c: always initialise ISA IDE drives in pc_init_isa()
hw/i386/pc_piix.c: assume pcmc->pci_enabled is always true in
pc_init1()
hw/i386: move isapc machine to separate isapc.c file
hw/i386/pc_piix.c: remove unused headers after isapc machine split
hw/i386/pc_piix.c: replace rom_memory with pci_memory
hw/i386/isapc.c: replace rom_memory with system_memory
Markus Armbruster (8):
ui/keymaps: Avoid trace crash and improve error messages
i386/kvm/vmsr_energy: Plug memory leak on failure to connect socket
vfio scsi ui: Error-check qio_channel_socket_connect_sync() the same
way
qtest/qom-test: Shallow testing of qom-list / qom-get
qtest/qom-test: Traverse entire QOM tree
qtest/qom-test: Don't bother to execute QMP command quit
MAINTAINERS: Cover tests/qtest/qom-test.c
Revert "tests/qtest: use qos_printf instead of g_test_message"
Paolo Bonzini (7):
python: mkvenv: fix messages printed by mkvenv
MAINTAINERS: add a few more files to "Top Level Makefile and
configure"
rust: disable borrow_as_ptr warning
rust: qemu-api-macros: support matching more than one error
subprojects: update proc-macro2 and syn
rust: move dependencies to rust/Cargo.toml
user-exec: ensure interrupt_request is not used
Peter Maydell (14):
tests/functional/test_aarch64_virt_gpu: Skip test if EGL won't
initialize
linux-user: Drop deprecated -p option
target/arm: Implement CTZ, CNT, ABS
scripts/kernel-doc: Avoid new Perl precedence warning
docs/sphinx/kerneldoc.py: Handle new LINENO syntax
tests/qtest/libqtest.h: Remove stray space from doc comment
scripts: Import Python kerneldoc from Linux kernel
scripts/kernel-doc: strip QEMU_ from function definitions
scripts/kernel-doc: tweak for QEMU coding standards
scripts/kerneldoc: Switch to the Python kernel-doc script
scripts/kernel-doc: Delete the old Perl kernel-doc script
MAINTAINERS: Put kernel-doc under the "docs build machinery" section
target/arm: Correct condition of aa64_atomics feature function
hw/arm/stm32f205_soc: Don't leak TYPE_OR_IRQ objects
Pierrick Bouvier (2):
tests/functional/test_aarch64_device_passthrough: update image
tests/functional/test_aarch64_rme: update image
Richard Henderson (146):
semihosting: Retrieve stack top from image_info
semihosting: Initialize heap once per process
linux-user: Create target/elfload.c files
linux-user: Move ppc uabi/asm/elf.h workaround to osdep.h
linux-user: Move get_elf_cpu_model to target/elfload.c
linux-user: Move get_elf_hwcap to {i386,x86_64}/elfload.c
linux-user: Move hwcap functions to {arm,aarch64}/elfload.c
linux-user: Move get_elf_hwcap to sparc/elfload.c
linux-user: Move hwcap functions to ppc/elfload.c
linux-user: Move get_elf_hwcap to loongarch64/elfload.c
linux-user: Move get_elf_hwcap to mips/elfload.c
linux-user: Move get_elf_hwcap to sh4/elfload.c
linux-user: Move hwcap functions to s390x/elfload.c
linux-user: Move get_elf_hwcap to riscv/elfload.c
linux-user: Remove ELF_HWCAP
linux-user: Remove ELF_HWCAP2
linux-user: Move get_elf_platform to {i386,x86_64}/elfload.c
linux-user/i386: Return const data from get_elf_platform
linux-user: Move get_elf_platform to arm/elfload.c
linux-user/loongarch64: Create get_elf_platform
linux-user/hppa: Create get_elf_platform
linux-user: Remove ELF_PLATFORM
linux-user: Move get_elf_base_platform to mips/elfload.c
linux-user: Move target_cpu_copy_regs decl to qemu.h
linux-user: Create do_init_main_thread
linux-user/i386: Create init_main_thread
linux-user/arm: Create init_main_thread
linux-user/arm: Remove a.out startup remenents
linux-user/aarch64: Create init_main_thread
linux-user/sparc: Create init_main_thread
linux-user/ppc: Create init_main_thread
linux-user/loongarch64: Create init_main_thread
linux-user/mips: Create init_main_thread
linux-user/microblaze: Create init_main_thread
linux-user/openrisc: Create init_main_thread
linux-user/sh4: Create init_main_thread
linux-user/m68k: Create init_main_thread
linux-user/alpha: Create init_main_thread
linux-user/s390x: Create init_main_thread
linux-user/riscv: Create init_main_thread
linux-user/hppa: Create init_main_thread
linux-user/xtensa: Create init_main_thread
linux-user/hexagon: Create init_main_thread
linux-user: Remove do_init_main_thread
hw/core: Dump cpu_reset in the reset.exit phase
hw/core: Use qemu_log_trylock/unlock in cpu_common_reset_exit
linux-user: Tidy print_socket_protocol
linux-user/x86_64: Convert target_elf_gregset_t to a struct
linux-user/i386: Convert target_elf_gregset_t to a struct
linux-user/arm: Convert target_elf_gregset_t to a struct
linux-user/aarch64: Convert target_elf_gregset_t to a struct
linux-user/ppc: Convert target_elf_gregset_t to a struct
linux-user/loongarch64: Convert target_elf_gregset_t to a struct
linux-user/mips: Convert target_elf_gregset_t to a struct
linux-user/microblaze: Convert target_elf_gregset_t to a struct
linux-user/openrisc: Convert target_elf_gregset_t to a struct
linux-user/sh4: Convert target_elf_gregset_t to a struct
linux-user/m68k: Convert target_elf_gregset_t to a struct
linux-user/s390x: Convert target_elf_gregset_t to a struct
linux-user/xtensa: Convert target_elf_gregset_t to a struct
linux-user: Update comment for target_elf_gregset_t
linux-user: Declare elf_core_copy_regs in loader.h
linux-user: Rename USE_ELF_CORE_DUMP to HAVE_ELF_CORE_DUMP
linux-user: Move elf_core_copy_regs to {i386,x86_64}/elfload.c
linux-user: Move elf_core_copy_regs to arm/elfload.c
linux-user: Move elf_core_copy_regs to aarch64/elfload.c
linux-user: Move elf_core_copy_regs to ppc/elfload.c
linux-user: Move elf_core_copy_regs to loongarch64/elfload.c
linux-user: Move elf_core_copy_regs to mips/elfload.c
linux-user: Move elf_core_copy_regs to microblaze/elfload.c
linux-user: Move elf_core_copy_regs to openrisc/elfload.c
linux-user: Move elf_core_copy_regs to sh4/elfload.c
linux-user: Move elf_core_copy_regs to m68k/elfload.c
linux-user: Move elf_core_copy_regs to s390x/elfload.c
linux-user: Move elf_core_copy_regs to xtensa/elfload.c
linux-user: Remove target_elf_greg_t, tswapreg from elfload.c
linux-user/i386: Create target_ptrace.h
linux-user/i386: Expand target_elf_gregset_t
linux-user/x86_64: Create target_ptrace.h
linux-user/x86_64: Expand target_elf_gregset_t
linux-user/x86_64: Fix dump of fs_base, gs_base
linux-user/aarch64: Create target_ptrace.h
linux-user/aarch64: Expand target_elf_gregset_t
linux-user/arm: Create target_ptrace.h
linux-user/arm: Expand target_elf_gregset_t
linux-user/loongarch64: Create target_ptrace.h
linux-user/loongarch64: Expand target_elf_gregset_t
linux-user/m68k: Expand target_elf_gregset_t
linux-user/microblaze: Create target_ptrace.h
linux-user/microblaze: Fold target_pt_regs.r* to an array
linux-user/microblaze: Expand target_elf_gregset_t
linux-user/mips: Create target_ptrace.h
linux-user/mips: Use target_ulong for target_elf_greg_t
linux-user/openrisc: Create target_ptrace.h
linux-user/openrisc: Expand target_elf_gregset_t
linux-user/ppc: Create target_ptrace.h
linux-user/ppc: Expand target_elf_gregset_t
linux-user/s390x: Create target_ptrace.h
linux-user/s390x: Expand target_elf_gregset_t
linux-user/sh4: Create target_ptrace.h
linux-user/sh4: Expand target_elf_gregset_t
linux-user/xtensa: Create target_ptrace.h
linux-user/xtensa: Expand target_elf_gregset_t
linux-user: Move init_guest_commpage to x86_64/elfload.c
linux-user: Move init_guest_commpage to arm/elfload.c
linux-user: Move init_guest_commpage to hppa/elfload.c
linux-user: Replace init_guest_commpage macro with function
linux-user: Move get_vdso_image_info to arm/elfload.c
linux-user: Remove ELF_EXEC_PAGESIZE
linux-user: Remove redundant ELF_DATA definitons
linux-user: Move elf parameters to {i386,x86_64}/target_elf.h
linux-user: Move elf parameters to {arm,aarch64}/target_elf.h
linux-user: Move elf parameters to sparc/target_elf.h
linux-user: Move elf parameters to ppc/target_elf.h
linux-user: Move elf parameters to loongarch64/target_elf.h
linux-user: Move elf parameters to {mips,mips64}/target_elf.h
linux-user: Move elf parameters to microblaze/target_elf.h
linux-user: Move elf parameters to openrisc/target_elf.h
linux-user: Move elf parameters to sh4/target_elf.h
linux-user: Move elf parameters to m68k/target_elf.h
linux-user: Move elf parameters to alpha/target_elf.h
linux-user: Move elf parameters to s390x/target_elf.h
linux-user: Move elf parameters to riscv/target_elf.h
linux-user: Move elf parameters to hppa/target_elf.h
linux-user: Move elf parameters to xtensa/target_elf.h
linux-user: Move elf parameters to hexagon/target_elf.h
linux-user: Standardize on ELF_MACHINE not ELF_ARCH
linux-user: Rename elf_check_arch
linux-user: Remove ELIBBAD from elfload.c
linux-user: Remove MAP_DENYWRITE from elfload.c
linux-user: Move arch_parse_elf_property to aarch64/elfload.c
linux-user: Remove a.out declarations from elfload.c
linux-user/sparc: Create target_ptrace.h
linux-user: Remove target_pt_regs from target_syscall.h
target/arm: Add feature predicate for FEAT_CSSC
target/arm: Implement MIN/MAX (immediate)
target/arm: Implement MIN/MAX (register)
target/arm: Split out gen_wrap2_i32 helper
target/arm: Enable FEAT_CSSC for -cpu max
qemu/atomic: Finish renaming atomic128-cas.h headers
qemu/atomic: Add atomic16 primitives for xchg, fetch_and, fetch_or
accel/tcg: Add cpu_atomic_*_mmu for 16-byte xchg, fetch_and, fetch_or
tcg: Add tcg_gen_atomic_{xchg,fetch_and,fetch_or}_i128
target/arm: Rename isar_feature_aa64_atomics
target/arm: Implement FEAT_LSE128
target/arm: Enable FEAT_LSE128 for -cpu max
Smail AIDER (1):
target/arm: Trap PMCR when MDCR_EL2.TPMCR is set
Stefan Hajnoczi (2):
Update version for the v10.1.0 release
Open 10.2 development tree
Stefan Weil (1):
CI: Use mingw-w64-x86_64-curl-winssl instead of mingw-w64-x86_64-curl
for Windows build
Steve Sistare (1):
hw/intc/arm_gicv3_kvm: preserve pending interrupts during cpr
Thomas Huth (28):
tests/functional: Use more fine-grained locking when looking for free
ports
tests/functional: Rework the migration test to have target-specific
files
tests/functional: Rework the multiprocess test to have target-specific
files
tests/functional/meson.build: Split timeout settings by target
tests/functional/meson.build: Allow tests to reside in subfolders
tests/functional: Move aarch64 tests into architecture specific folder
tests/functional: Move alpha tests into architecture specific folder
tests/functional: Move arm tests into architecture specific folder
tests/functional: Move avr tests into architecture specific folder
tests/functional: Move hppa tests into architecture specific folder
tests/functional: Move i386 tests into architecture specific folder
tests/functional: Move loongarch64 tests into architecture specific
folder
tests/functional: Move m68k tests into architecture specific folder
tests/functional: Move microblaze tests into architecture specific
folder
tests/functional: Move mips tests into target-specific folders
tests/functional: Move or1k tests into target-specific folders
tests/functional: Move ppc/ppc64 tests into target-specific folders
tests/functional: Move riscv32/riscv64 tests into target-specific
folders
tests/functional: Move rx test into target-specific folders
tests/functional: Move s390x tests into target-specific folders
tests/functional: Move sh4/sh4eb tests into target-specific folders
tests/functional: Move sparc/sparc64 tests into target-specific
folders
tests/functional: Move x86_64 tests into target-specific folder
tests/functional: Move xtensa tests into target-specific folder
tests/functional: Move the generic tests to a subfolder
MAINTAINERS: Adjust wildcards for the migration, multiprocess and
replay tests
hw/intc/loongarch_pch_pic: Fix ubsan warning and endianness issue
qga: Fix ubsan warning
WANG Rui (1):
target/loongarch: Guard 64-bit-only insn translation with TRANS64
macro
Xiaoyao Li (1):
x86/loader: Don't update kernel header for CoCo VMs
Xin Wang (1):
target/i386: Add support for save/load of exception error code
Zero Tang (1):
i386/tcg/svm: fix incorrect canonicalization
minglei.liu (1):
qga: Fix truncated output handling in guest-exec status reporting
Łukasz Stelmach (1):
linux-user: do not print IP socket options by default
--
2.47.2