qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 6a5a63: target/i386: Give IRQs a chance when


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] 6a5a63: target/i386: Give IRQs a chance when resetting HF_...
Date: Mon, 06 May 2024 08:35:20 -0700

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 6a5a63f74ba5c5355b7a8468d3d814bfffe928fb
      
https://github.com/qemu/qemu/commit/6a5a63f74ba5c5355b7a8468d3d814bfffe928fb
  Author: Ruihan Li <lrh2000@pku.edu.cn>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M target/i386/tcg/translate.c

  Log Message:
  -----------
  target/i386: Give IRQs a chance when resetting HF_INHIBIT_IRQ_MASK

When emulated with QEMU, interrupts will never come in the following
loop. However, if the NOP instruction is uncommented, interrupts will
fire as normal.

        loop:
                cli
                call do_sti
                jmp loop

        do_sti:
                sti
                # nop
                ret

This behavior is different from that of a real processor. For example,
if KVM is enabled, interrupts will always fire regardless of whether the
NOP instruction is commented or not. Also, the Intel Software Developer
Manual states that after the STI instruction is executed, the interrupt
inhibit should end as soon as the next instruction (e.g., the RET
instruction if the NOP instruction is commented) is executed.

This problem is caused because the previous code may choose not to end
the TB even if the HF_INHIBIT_IRQ_MASK has just been reset (e.g., in the
case where the STI instruction is immediately followed by the RET
instruction), so that IRQs may not have a change to trigger. This commit
fixes the problem by always terminating the current TB to give IRQs a
chance to trigger when HF_INHIBIT_IRQ_MASK is reset.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Ruihan Li <lrh2000@pku.edu.cn>
Message-ID: <20240415064518.4951-4-lrh2000@pku.edu.cn>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 5ce77fcb1b8480f35a1008d5500197d4b73f9ef6
      
https://github.com/qemu/qemu/commit/5ce77fcb1b8480f35a1008d5500197d4b73f9ef6
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M target/arm/Kconfig
    M target/i386/Kconfig

  Log Message:
  -----------
  Kconfig: kvm: allow building without any board

KVM code might have to call functions on the PCIDevice that is
passed to kvm_arch_fixup_msi_route().  This fails in the case
where --without-default-devices is used and no board is
configured.  While this is not really a useful configuration,
and therefore setting up stubs for CONFIG_PCI is overkill,
failing the build is impolite.  Just include the PCI
subsystem if kvm_arch_fixup_msi_route() requires it, as
is the case for ARM and x86.

Reported-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 969ce22123681694a9c241aed3f649185a9e067b
      
https://github.com/qemu/qemu/commit/969ce22123681694a9c241aed3f649185a9e067b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M tests/qtest/m48t59-test.c

  Log Message:
  -----------
  tests/qtest: skip m48t59-test if the machine is absent

Together with the series at 
https://patchew.org/QEMU/20240423131612.28362-1-pbonzini@redhat.com/,
this allows adding sparc-softmmu to the target list of the
build-without-defaults CI job.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 957f583b7cb4d317fb694ca45350de6d9d2bd1b8
      
https://github.com/qemu/qemu/commit/957f583b7cb4d317fb694ca45350de6d9d2bd1b8
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/windows.yml

  Log Message:
  -----------
  gitlab-ci: adjust msys2-64bit to be able to run qtest

sparc-softmmu is able to run a subset of qtests when compiled 
--without-default-devices,
so use it instead of x86_64-softmmu for the msys2 run.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 566abdb4d90d73728f37cd5dcced0fbef84a63db
      
https://github.com/qemu/qemu/commit/566abdb4d90d73728f37cd5dcced0fbef84a63db
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M target/ppc/kvm.c

  Log Message:
  -----------
  kvm: ppc: disable sPAPR code if CONFIG_PSERIES is disabled

target/ppc/kvm.c calls out to code in hw/ppc/spapr*.c; that code is
not present and fails to link if CONFIG_PSERIES is not enabled.
Adjust kvm.c to depend on CONFIG_PSERIES instead of TARGET_PPC64,
and compile out anything that requires cap_papr, because only
the pseries machine will call kvmppc_set_papr().

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 7e10ce2706e2dbed6a59825dc0286b3810395afa
      
https://github.com/qemu/qemu/commit/7e10ce2706e2dbed6a59825dc0286b3810395afa
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M configs/devices/arm-softmmu/default.mak
    M configs/devices/loongarch64-softmmu/default.mak
    M configs/devices/or1k-softmmu/default.mak
    M configs/devices/ppc-softmmu/default.mak
    M configs/devices/riscv32-softmmu/default.mak
    M configs/devices/riscv64-softmmu/default.mak
    M configs/devices/xtensa-softmmu/default.mak

  Log Message:
  -----------
  configs: list "implied" device groups in the default configs

Match the optional device groups to what is actually included in
the config-devices.mak files.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 01ef1c0dc83cc40522b45f289cd5ed669b0f3da4
      
https://github.com/qemu/qemu/commit/01ef1c0dc83cc40522b45f289cd5ed669b0f3da4
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/alpha-softmmu/default.mak
    M hw/alpha/Kconfig

  Log Message:
  -----------
  alpha: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Start with Alpha.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 1a67aed81707f8bd97a4cf21b0c99af057be28bd
      
https://github.com/qemu/qemu/commit/1a67aed81707f8bd97a4cf21b0c99af057be28bd
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/arm-softmmu/default.mak
    M hw/arm/Kconfig

  Log Message:
  -----------
  arm: switch boards to "default y"

For ARM targets, boards that require TCG are already using "default y".
Switch ARM_VIRT to the same selection mechanism.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e2ee238664a621c13cb22cf1375835507031a20a
      
https://github.com/qemu/qemu/commit/e2ee238664a621c13cb22cf1375835507031a20a
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M configs/devices/avr-softmmu/default.mak
    M hw/avr/Kconfig

  Log Message:
  -----------
  avr: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with AVR.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 86280d86d67832f3d0aea80871374c05238ef3ce
      
https://github.com/qemu/qemu/commit/86280d86d67832f3d0aea80871374c05238ef3ce
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/cris-softmmu/default.mak
    M hw/cris/Kconfig

  Log Message:
  -----------
  cris: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with CRIS.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 9e6190aecd37510dc111f7a41fed8f08ff14630c
      
https://github.com/qemu/qemu/commit/9e6190aecd37510dc111f7a41fed8f08ff14630c
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/hppa-softmmu/default.mak
    M hw/hppa/Kconfig

  Log Message:
  -----------
  hppa: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with PARISC.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 4921d0a7535bc33415564d487ea17ba91a34082f
      
https://github.com/qemu/qemu/commit/4921d0a7535bc33415564d487ea17ba91a34082f
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/i386-softmmu/default.mak
    M hw/i386/Kconfig
    M target/i386/Kconfig

  Log Message:
  -----------
  i386: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with i386.

No changes to generated config-devices.mak files, other than
adding CONFIG_I386 to the x86_64-softmmu target.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2f856b2861e58ffebd544558c045b32fff04920f
      
https://github.com/qemu/qemu/commit/2f856b2861e58ffebd544558c045b32fff04920f
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/loongarch64-softmmu/default.mak
    M hw/loongarch/Kconfig

  Log Message:
  -----------
  loongarch: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with Loongarch.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 9f6ece49d5a1e79e9d6c8f3308c12fad66c481c0
      
https://github.com/qemu/qemu/commit/9f6ece49d5a1e79e9d6c8f3308c12fad66c481c0
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/m68k-softmmu/default.mak
    M hw/m68k/Kconfig

  Log Message:
  -----------
  m68k: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with m68k.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a75b180f415a7d95754364b2a584d69b16bd141b
      
https://github.com/qemu/qemu/commit/a75b180f415a7d95754364b2a584d69b16bd141b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/microblaze-softmmu/default.mak
    M hw/microblaze/Kconfig

  Log Message:
  -----------
  microblaze: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with Microblaze.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: bae3e3a5c6b81677b1d4ec231ad0844e65990f3d
      
https://github.com/qemu/qemu/commit/bae3e3a5c6b81677b1d4ec231ad0844e65990f3d
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M meson.build
    M target/Kconfig

  Log Message:
  -----------
  meson: make target endianneess available to Kconfig

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
MIPS boards may only be available for big-endian or only for
little-endian emulators, add a symbol so that this can be described
with a "depends on" clause.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 8a1f6d0ebd21efad6ea4843796d550ce4c14e81c
      
https://github.com/qemu/qemu/commit/8a1f6d0ebd21efad6ea4843796d550ce4c14e81c
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/mips-softmmu/common.mak
    M configs/devices/mips64-softmmu/default.mak
    M configs/devices/mips64el-softmmu/default.mak
    M hw/mips/Kconfig

  Log Message:
  -----------
  mips: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with MIPS.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c8b39c9b5b901b173fbbb0ec3f147e9694ece48c
      
https://github.com/qemu/qemu/commit/c8b39c9b5b901b173fbbb0ec3f147e9694ece48c
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/or1k-softmmu/default.mak
    M hw/openrisc/Kconfig

  Log Message:
  -----------
  openrisc: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with OpenRISC.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: bf616ce47be6802bbe7d6c7bae212e5b57da57eb
      
https://github.com/qemu/qemu/commit/bf616ce47be6802bbe7d6c7bae212e5b57da57eb
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/ppc-softmmu/default.mak
    M configs/devices/ppc64-softmmu/default.mak
    M hw/ppc/Kconfig
    M target/ppc/Kconfig

  Log Message:
  -----------
  ppc: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with PowerPC/POWER.

No changes to generated config-devices.mak files, other than
adding CONFIG_PPC to the ppc64-softmmu target.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a980c33deaaf07d9076266ffb536a133a5de7b2b
      
https://github.com/qemu/qemu/commit/a980c33deaaf07d9076266ffb536a133a5de7b2b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/riscv32-softmmu/default.mak
    M configs/devices/riscv64-softmmu/default.mak
    M hw/riscv/Kconfig

  Log Message:
  -----------
  riscv: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with RISC-V.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 4852f70e4b5cea187cc0f159a47376567a75c46b
      
https://github.com/qemu/qemu/commit/4852f70e4b5cea187cc0f159a47376567a75c46b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/rx-softmmu/default.mak
    M hw/rx/Kconfig

  Log Message:
  -----------
  rx: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with RX.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: d70fb7cf34d9de439b2b1ee9d43edb3c784db536
      
https://github.com/qemu/qemu/commit/d70fb7cf34d9de439b2b1ee9d43edb3c784db536
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/s390x-softmmu/default.mak
    M hw/s390x/Kconfig

  Log Message:
  -----------
  s390x: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with s390.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 09c94e6167e1b38b205cda472df4583daab69690
      
https://github.com/qemu/qemu/commit/09c94e6167e1b38b205cda472df4583daab69690
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/sh4-softmmu/default.mak
    M hw/sh4/Kconfig

  Log Message:
  -----------
  sh4: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with SH.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: d399fddcd46a4e15aa9fd2e0adb2d54a277cb9f2
      
https://github.com/qemu/qemu/commit/d399fddcd46a4e15aa9fd2e0adb2d54a277cb9f2
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/sparc-softmmu/default.mak
    M configs/devices/sparc64-softmmu/default.mak
    M hw/sparc/Kconfig
    M hw/sparc64/Kconfig

  Log Message:
  -----------
  sparc: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with SPARC and SPARC64.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 021cd4c6e27185343de093865a6363504a8507ca
      
https://github.com/qemu/qemu/commit/021cd4c6e27185343de093865a6363504a8507ca
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/tricore-softmmu/default.mak
    M hw/tricore/Kconfig

  Log Message:
  -----------
  tricore: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with TriCore.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0a12e7b752e87a0c92a7cc2e8a76eaf669760f12
      
https://github.com/qemu/qemu/commit/0a12e7b752e87a0c92a7cc2e8a76eaf669760f12
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M configs/devices/xtensa-softmmu/default.mak
    M hw/xtensa/Kconfig

  Log Message:
  -----------
  xtensa: switch boards to "default y"

Some targets use "default y" for boards to filter out those that require
TCG.  For consistency we are switching all other targets to do the same.
Continue with Xtensa.

No changes to generated config-devices.mak file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 7cdfcea693c0bbbfd59ca55f216f6b330f095d19
      
https://github.com/qemu/qemu/commit/7cdfcea693c0bbbfd59ca55f216f6b330f095d19
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M docs/devel/kconfig.rst

  Log Message:
  -----------
  docs: document new convention for Kconfig board symbols

Boards have been switched to use "default y" and are now listed
in default-configs/*.mak only for convenience.

Document this change and the new possibilities that it allows.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b10b2481738304db13d28252e86c10555121a5b3
      
https://github.com/qemu/qemu/commit/b10b2481738304db13d28252e86c10555121a5b3
  Author: Lei Wang <lei4.wang@intel.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M target/i386/cpu.c

  Log Message:
  -----------
  target/i386: Introduce SapphireRapids-v3 to add missing features

Add the missing features(ss, tsc-adjust, cldemote, movdiri, movdir64b) in
the SapphireRapids-v3 CPU model.

Signed-off-by: Lei Wang <lei4.wang@intel.com>
Message-ID: <20240424072912.43188-1-lei4.wang@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 5e9efe31f1de05c8c65a7383fcbf211ebded6a22
      
https://github.com/qemu/qemu/commit/5e9efe31f1de05c8c65a7383fcbf211ebded6a22
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/qemu/bitmap.h

  Log Message:
  -----------
  bitmap: Use g_try_new0/g_new0/g_renew

Avoids an explicit use of sizeof().  The GLib allocation macros
ensure that the multiplication by the size of the element
uses the right type and does not overflow.

While at it, change bitmap_new() to use g_new0 directly.  Its current
impl of calling bitmap_try_new() followed by a plain abort() has
worse diagnostics than g_new0, which uses g_error to report the actual
allocation size that failed.

Cc: qemu-trivial@nongnu.org
Cc: Roman Kiryanov <rkir@google.com>
Reviewed-by: Daniel Berrange <berrange@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 8a161d08c92f3fee01e97ede54917abbf7085b24
      
https://github.com/qemu/qemu/commit/8a161d08c92f3fee01e97ede54917abbf7085b24
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M hw/display/meson.build

  Log Message:
  -----------
  build: do not build virtio-vga-gl if virgl/opengl not available

If virgl and opengl are not available, the build process creates a useless
libvirtio-vga-gl module that does not have any device in it.  Follow the
example of virtio-vga-rutabaga and do not build the module at all in that
case.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c71a42b51a17978c4d13dca12365b651a95aaa8a
      
https://github.com/qemu/qemu/commit/c71a42b51a17978c4d13dca12365b651a95aaa8a
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/hw/nvram/fw_cfg.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  fw_cfg: remove useless declarations from typedefs.h

Only FWCfgState is used as part of APIs such as acpi_ghes_add_fw_cfg.
Everything else need not be in typedefs.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 667cdad031bf54d5ea9c1f3833280b2e8674d788
      
https://github.com/qemu/qemu/commit/667cdad031bf54d5ea9c1f3833280b2e8674d788
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/hw/qdev-core.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  qdev-core: remove DeviceListener from typedefs.h

It is needed in very few places, which already depend on other parts of
qdev-core.h files.  The benefit of having it in typedefs.h is small.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6b30674dadc010d97bf5154d2ce417978e51f608
      
https://github.com/qemu/qemu/commit/6b30674dadc010d97bf5154d2ce417978e51f608
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/qemu/typedefs.h
    M include/sysemu/numa.h

  Log Message:
  -----------
  numa: remove types from typedefs.h

Exactly nobody needs them there.  Place the typedef in the header
that defines the struct.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 2d3f409631f087a7caa26d03c3b22fbcafc55cc8
      
https://github.com/qemu/qemu/commit/2d3f409631f087a7caa26d03c3b22fbcafc55cc8
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/net/announce.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  net: remove AnnounceTimer from typedefs.h

Exactly nobody needs it there.  Place the typedef in the header
that defines the struct.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0f73e49e3718fe198bfad0d5143482708bf086a1
      
https://github.com/qemu/qemu/commit/0f73e49e3718fe198bfad0d5143482708bf086a1
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/qemu/option.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  qemu-option: remove QemuOpt from typedefs.h

QemuOpt is basically an internal data structure.  It has no business
being defined except if you need functions from include/qemu/option.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a42706dbe4f14416df5c65de1a90d72cbc338530
      
https://github.com/qemu/qemu/commit/a42706dbe4f14416df5c65de1a90d72cbc338530
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/hw/intc/i8259.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  intc: remove PICCommonState from typedefs.h

Move it to the existing "PIC related things" header, hw/intc/i8259.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 13d110944831e8fb15087697d540d0922ea355f4
      
https://github.com/qemu/qemu/commit/13d110944831e8fb15087697d540d0922ea355f4
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/qemu/coroutine.h
    M include/qemu/lockable.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  lockable: remove QemuLockable from typedefs.h

Using QemuLockable almost always requires going through QEMU_MAKE_LOCKABLE().
Therefore, there is little point in having the typedef always present.  Move
it to lockable.h, with only a small adjustment to coroutine.h (which has
a tricky co-dependency with lockable.h due to defining CoMutex *and*
using QemuLockable as a part of the CoQueue API).

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a0d645100eba45a96f009528ec0fec14b4b35956
      
https://github.com/qemu/qemu/commit/a0d645100eba45a96f009528ec0fec14b4b35956
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/qemu/typedefs.h
    M migration/postcopy-ram.c

  Log Message:
  -----------
  migration: remove PostcopyDiscardState from typedefs.h

It is defined and referred to exclusively from a .c file.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: f37c6c2e89d3b8d3376ddc74b5357e56f49ccb9c
      
https://github.com/qemu/qemu/commit/f37c6c2e89d3b8d3376ddc74b5357e56f49ccb9c
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/monitor/hmp-target.h
    M include/qemu/typedefs.h
    M stubs/target-monitor-defs.c

  Log Message:
  -----------
  monitor: remove MonitorDef from typedefs.h

MonitorDef is defined by hmp-target.h, and all users except one already
include it; the reason why the stubs do not include it, is because
hmp-target.h currently can only be used in files that are compiled
per target.  However, that is easily fixed.  Because the benefit of
having MonitorDef in typedefs.h is very small, do it and remove the
type from typedefs.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 8fb1435c2291e9061024461fac00e1cf54777f44
      
https://github.com/qemu/qemu/commit/8fb1435c2291e9061024461fac00e1cf54777f44
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/hw/core/cpu.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  qapi/machine: remove types from typedefs.h

They are needed in very few places, which already depends on other generated 
QAPI
files.  The benefit of having these types in typedefs.h is small.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: da4b248178b51b8dff26de5e3c4ea8ea4b53f5d1
      
https://github.com/qemu/qemu/commit/da4b248178b51b8dff26de5e3c4ea8ea4b53f5d1
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M hw/display/vga_int.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  display: remove GraphicHwOps from typedefs.h

Basically all uses of GraphicHwOps are defining an instance of it, which 
requires the
full definition of the struct.  It is pointless to have it in typedefs.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 15d62536a9ec78db9ab07b113e5e07a6e02e52fb
      
https://github.com/qemu/qemu/commit/15d62536a9ec78db9ab07b113e5e07a6e02e52fb
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M accel/tcg/tb-jmp-cache.h
    M include/hw/core/cpu.h
    M include/qemu/typedefs.h
    M system/physmem.c

  Log Message:
  -----------
  tcg: remove CPU* types from typedefs.h

hw/core/cpu.h is already using struct forward declarations in some cases
to avoid inclusions, and otherwise CPUAddressSpace and CPUJumpCache
are only used together with their definition.  CPUTLBEntryFull is
always used when their definition is available.  Remove all three
from typedefs.h.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: fe5943fecc7c9a55d975e9e55caf527057a94c37
      
https://github.com/qemu/qemu/commit/fe5943fecc7c9a55d975e9e55caf527057a94c37
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M include/hw/pci/pcie.h
    M include/hw/pci/pcie_aer.h
    M include/hw/pci/pcie_sriov.h
    M include/qemu/typedefs.h

  Log Message:
  -----------
  pci: remove some types from typedefs.h

For types that are embedded in structs defined by pci.h, the definition
is pretty much required to be available.  Remove them from typedefs.h.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 48663349813144224d2b1cb6a85a893c2aa901ad
      
https://github.com/qemu/qemu/commit/48663349813144224d2b1cb6a85a893c2aa901ad
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M accel/kvm/kvm-all.c
    M hw/hyperv/hyperv.c
    M hw/intc/s390_flic_kvm.c
    M include/hw/s390x/adapter.h
    M include/qemu/typedefs.h
    M include/sysemu/kvm.h

  Log Message:
  -----------
  kvm: move target-dependent interrupt routing out of kvm-all.c

Let hw/hyperv/hyperv.c and hw/intc/s390_flic.c handle (respectively)
SynIC and adapter routes, removing the code from target-independent
files.  This also removes the only occurrence of AdapterInfo outside
s390 code, so remove that from typedefs.h.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 9608723abb11b2cf81cdaa33e13cc888c1d9fe85
      
https://github.com/qemu/qemu/commit/9608723abb11b2cf81cdaa33e13cc888c1d9fe85
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M migration/migration.h

  Log Message:
  -----------
  migration: do not include coroutine_int.h

Migration code needs no private fields of the coroutine backend.
Include the "regular" coroutine.h header.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: deb686ef0e609ceaec0daa5dc88eb5b3dd9701b0
      
https://github.com/qemu/qemu/commit/deb686ef0e609ceaec0daa5dc88eb5b3dd9701b0
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
    M qga/commands-posix.c

  Log Message:
  -----------
  qga/commands-posix: fix typo in qmp_guest_set_user_password

qga/commands-posix.c does not compile on FreeBSD due to a confusion
between "chpasswdata" (wrong) and "chpasswddata" (used in the #else
branch).

Fixes: 0e5b75a390 ("qga/commands-posix: qmp_guest_set_user_password: use 
ga_run_command helper")
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 76eaa97157f6204e04fa1d79529420760f7a408a
      
https://github.com/qemu/qemu/commit/76eaa97157f6204e04fa1d79529420760f7a408a
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/README
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/hex_common.py
    M target/hexagon/translate.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Analyze reads before writes

We divide gen_analyze_funcs.py into 3 phases
    Declare the operands
    Analyze the register reads
    Analyze the register writes

We also create special versions of ctx_log_*_read for new operands
    Check that the operand is written before the read

This is a precursor to improving the analysis for short-circuiting
the packet semantics in a subsequent commit

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240201103340.119081-2-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: bd983f68acad895d75678828d23e90ffeac58eea
      
https://github.com/qemu/qemu/commit/bd983f68acad895d75678828d23e90ffeac58eea
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/translate.c
    M target/hexagon/translate.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Enable more short-circuit packets (scalar core)

Look for read-after-write instead of overlap of reads and writes

Here is an example with overalp but no read-after-write:
0x000200fc:  0x38103876 {       R0 = add(R0,R1); R6 = add(R6,R7) }

BEFORE:
 ---- 00000000000200fc
 mov_i32 loc2,$0x0
 mov_i32 loc2,r0
 add_i32 loc3,loc2,r1
 mov_i32 loc2,loc3
 mov_i32 loc4,$0x0
 mov_i32 loc4,r6
 add_i32 loc5,loc4,r7
 mov_i32 loc4,loc5
 mov_i32 r0,loc2
 mov_i32 r6,loc4

AFTER:
 ---- 00000000000200fc
 add_i32 loc2,r0,r1
 mov_i32 r0,loc2
 add_i32 loc3,r6,r7
 mov_i32 r6,loc3

We can also short-circuit packets with .new values by reading from the
real destination instead of the temporary.
0x00020100:  0x78005ff3 {       R19 = #0xff
0x00020104:  0x2002e204         if (cmp.eq(N19.new,R2)) jump:t PC+8 }

BEFORE:
 ---- 0000000000020100
 mov_i32 pc,$0x20108
 mov_i32 loc8,$0x0
 mov_i32 loc8,$0xff
 setcond_i32 loc10,loc8,r2,eq
 mov_i32 loc6,loc10
 mov_i32 r19,loc8
 add_i32 pkt_cnt,pkt_cnt,$0x2
 add_i32 insn_cnt,insn_cnt,$0x4
 brcond_i32 loc6,$0x0,eq,$L1
 goto_tb $0x0
 mov_i32 pc,$0x20108
 exit_tb $0x7fbb54000040
 set_label $L1
 goto_tb $0x1
 exit_tb $0x7fbb54000041
 set_label $L0
 exit_tb $0x7fbb54000043

AFTER:
 ---- 0000000000020100
 mov_i32 pc,$0x20108
 mov_i32 r19,$0xff
 setcond_i32 loc7,r19,r2,eq
 mov_i32 loc4,loc7
 add_i32 pkt_cnt,pkt_cnt,$0x2
 add_i32 insn_cnt,insn_cnt,$0x4
 brcond_i32 loc4,$0x0,eq,$L1
 goto_tb $0x0
 mov_i32 pc,$0x20108
 exit_tb $0x7f9764000040
 set_label $L1
 goto_tb $0x1
 exit_tb $0x7f9764000041
 set_label $L0
 exit_tb $0x7f9764000043

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240201103340.119081-3-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 763d2ce7c4f5bc6617b5c17a40f2faaf03fecb8e
      
https://github.com/qemu/qemu/commit/763d2ce7c4f5bc6617b5c17a40f2faaf03fecb8e
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/hex_common.py
    M target/hexagon/translate.c
    M target/hexagon/translate.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Enable more short-circuit packets (HVX)

Look for read-after-write instead of overlap of reads and writes

HVX instructions with helpers have pass-by-reference semantics, so
we check for overlaps of reads and writes within the same instruction.

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240201103340.119081-4-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 850d06225b599eda8c519681cb39f5dec0dbe9a0
      
https://github.com/qemu/qemu/commit/850d06225b599eda8c519681cb39f5dec0dbe9a0
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/hex_common.py
    M target/hexagon/macros.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Pass P0 explicitly to helpers that need it

Rather than reading P0 from the env, pass it explicitly

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Tested-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240214042726.19290-2-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: f7be65fbbfe3a88619a80181d79993aa8d4dc645
      
https://github.com/qemu/qemu/commit/f7be65fbbfe3a88619a80181d79993aa8d4dc645
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/attribs_def.h.inc
    M target/hexagon/hex_common.py
    M target/hexagon/macros.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Pass SP explicitly to helpers that need it

Rather than reading SP from the env, pass it explicitly

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Tested-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240214042726.19290-3-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 2f0a771ddcb55cea39046502e8e834eb44b5fff7
      
https://github.com/qemu/qemu/commit/2f0a771ddcb55cea39046502e8e834eb44b5fff7
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/gen_helper_protos.py
    M target/hexagon/gen_tcg.h
    M target/hexagon/hex_common.py

  Log Message:
  -----------
  Hexagon (target/hexagon) Only pass env to generated helper when needed

Currently, we pass env to every generated helper.  When the semantics of
the instruction only depend on the arguments, this is unnecessary and
adds extra overhead to the helper call.

We add the TCG_CALL_NO_RWG_SE flag to any non-HVX helpers that don't get
the ptr to env.

The A2_nop and SA1_setin1 instructions end up with no arguments.  This
results in a "old-style function definition" error from the compiler, so
we write overrides for them.

With this change, the number of helpers with env argument is
    idef-parser enabled:    329 total, 23 with env
    idef-parser disabled:   1543 total, 550 with env

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Tested-by: Anton Johansson <anjo@rev.ng>
Message-Id: <20240214042726.19290-4-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 2720bd1dbd390da8bfbbc84c9293433c82dda88b
      
https://github.com/qemu/qemu/commit/2720bd1dbd390da8bfbbc84c9293433c82dda88b
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/hex_common.py

  Log Message:
  -----------
  Hexagon (target/hexagon) Add is_old/is_new to Register class

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-2-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 9196381993a3fd365fd47fe056754ff550a3b67d
      
https://github.com/qemu/qemu/commit/9196381993a3fd365fd47fe056754ff550a3b67d
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/decode.c
    M target/hexagon/gen_trans_funcs.py
    M target/hexagon/insn.h
    M target/hexagon/mmvec/decode_ext_mmvec.c

  Log Message:
  -----------
  Hexagon (target/hexagon) Mark new_read_idx in trans functions

Check that the value matches opcode_reginfo

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-3-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 325a64af065d855a022696f5e4180f2813b439c8
      
https://github.com/qemu/qemu/commit/325a64af065d855a022696f5e4180f2813b439c8
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/decode.c
    M target/hexagon/gen_trans_funcs.py
    M target/hexagon/insn.h
    M target/hexagon/mmvec/decode_ext_mmvec.c

  Log Message:
  -----------
  Hexagon (target/hexagon) Mark dest_idx in trans functions

Check that the value matches opcode_reginfo/opcode_wregs

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-4-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 4614b8f36a319ca77c004b8c5002e68d9ae25061
      
https://github.com/qemu/qemu/commit/4614b8f36a319ca77c004b8c5002e68d9ae25061
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/decode.c
    M target/hexagon/gen_trans_funcs.py
    M target/hexagon/insn.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Mark has_pred_dest in trans functions

Check that the value matches opcode_wregs

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-5-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: b887b6b71c0008413314e2b5e7d691f4812776f3
      
https://github.com/qemu/qemu/commit/b887b6b71c0008413314e2b5e7d691f4812776f3
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M tests/tcg/hexagon/hvx_misc.c

  Log Message:
  -----------
  Hexagon (tests/tcg/hexagon) Test HVX .new read from high half of pair

Make sure the decoding of HVX .new is correctly handling this case

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-6-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 09a7e7db0f12ac6eb0502e8c27e10a5907ef99cb
      
https://github.com/qemu/qemu/commit/09a7e7db0f12ac6eb0502e8c27e10a5907ef99cb
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/decode.c
    M target/hexagon/mmvec/decode_ext_mmvec.c
    M target/hexagon/opcodes.c
    M target/hexagon/opcodes.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Remove uses of op_regs_generated.h.inc

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-7-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: b45c1b51248470220131235f43670d93286a9346
      
https://github.com/qemu/qemu/commit/b45c1b51248470220131235f43670d93286a9346
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/README
    R target/hexagon/gen_op_regs.py
    M target/hexagon/meson.build

  Log Message:
  -----------
  Hexagon (target/hexagon) Remove gen_op_regs.py

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20240307032327.4799-8-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 582c59efaecf01c08e4d034b7140b2b5e5ac9480
      
https://github.com/qemu/qemu/commit/582c59efaecf01c08e4d034b7140b2b5e5ac9480
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/README
    R target/hexagon/gen_shortcode.py
    M target/hexagon/meson.build
    M target/hexagon/opcodes.c

  Log Message:
  -----------
  Hexagon (target/hexagon) Remove gen_shortcode.py

This data structure is not used

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20240307032327.4799-9-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: a4696661491cac8c1c08e7d482d751f808ce3143
      
https://github.com/qemu/qemu/commit/a4696661491cac8c1c08e7d482d751f808ce3143
  Author: Taylor Simpson <ltaylorsimpson@gmail.com>
  Date:   2024-05-05 (Sun, 05 May 2024)

  Changed paths:
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/gen_helper_funcs.py
    M target/hexagon/gen_helper_protos.py
    M target/hexagon/gen_idef_parser_funcs.py
    M target/hexagon/gen_op_attribs.py
    M target/hexagon/gen_opcodes_def.py
    M target/hexagon/gen_printinsn.py
    M target/hexagon/gen_tcg_func_table.py
    M target/hexagon/gen_tcg_funcs.py
    M target/hexagon/hex_common.py
    M target/hexagon/meson.build

  Log Message:
  -----------
  Hexagon (target/hexagon) Remove hex_common.read_attribs_file

The attribinfo data structure is not used
Adjust the command-line arguments to the python scripts
Add hex_common.read_common_files for TCG/helper generation scripts

Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20240307032327.4799-10-ltaylorsimpson@gmail.com>
Signed-off-by: Brian Cain <bcain@quicinc.com>


  Commit: 28188253dc26bc3038f30eed0d79798b51f81a94
      
https://github.com/qemu/qemu/commit/28188253dc26bc3038f30eed0d79798b51f81a94
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2024-05-06 (Mon, 06 May 2024)

  Changed paths:
    M target/hexagon/README
    M target/hexagon/attribs_def.h.inc
    M target/hexagon/decode.c
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/gen_helper_funcs.py
    M target/hexagon/gen_helper_protos.py
    M target/hexagon/gen_idef_parser_funcs.py
    M target/hexagon/gen_op_attribs.py
    R target/hexagon/gen_op_regs.py
    M target/hexagon/gen_opcodes_def.py
    M target/hexagon/gen_printinsn.py
    R target/hexagon/gen_shortcode.py
    M target/hexagon/gen_tcg.h
    M target/hexagon/gen_tcg_func_table.py
    M target/hexagon/gen_tcg_funcs.py
    M target/hexagon/gen_trans_funcs.py
    M target/hexagon/hex_common.py
    M target/hexagon/insn.h
    M target/hexagon/macros.h
    M target/hexagon/meson.build
    M target/hexagon/mmvec/decode_ext_mmvec.c
    M target/hexagon/opcodes.c
    M target/hexagon/opcodes.h
    M target/hexagon/translate.c
    M target/hexagon/translate.h
    M tests/tcg/hexagon/hvx_misc.c

  Log Message:
  -----------
  Merge tag 'pull-hex-20240505' of https://github.com/quic/qemu into staging

Short-circuit for packets with r/w and no overlap

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEPWaq5HRZSCTIjOD4GlSvuOVkbDIFAmY4FR8ACgkQGlSvuOVk
# bDLEfxAAup6v9J4n2/q88FXfLGgx1EfZrT01gOM/48mwngNNQJGJQySe2GLl0G8S
# 1hx/Ym3jbikic8HL80v8FyCr4gNRshEY7xKpCfvY9lsgnCRbhEvoV/hZqucmLQAt
# 1SIhFSsi5h8gyZDTvXhH75v3qGvYjQ7fQBhy2JbRsPjthdHBh9xi6Na60wlqfNZq
# oGsVtY7sv1uHsvDKBi3JoXWckSK99R38BHY6zPoStarRZACkkLdX6KHxeX88TUt1
# whIUYUS/K0nRVxzekdq/+m8UJYrXnW/0cliM5mLFHDGlsV+qjdcIRrfaPWBO0eFN
# kXeZU2BWLCdP2M52FHI4FllnIRpX5OGkxjR6x8Pc9r+EGciwGRU7xeAlqBxKQSZP
# e3oXtV6oKxg69xBgHE5HcKbt6bX5EZR/sUcbAoGA41UssaiMyj3wbg1cy2UxXu2J
# 7oJyywJUggWGSoCIIJJ95YgpUrIg73Yg6pOjfhKW1w/V2SuQPGG0XTXrwe7J6uGi
# VAqyu55p2oiW8Gk4Lvl1SfWgxkVeZa/NcxTmXNEWFnT7vatqwez0O5pxIkxdSCFE
# lRv7PuFT5nhQ/gg12zGqqRiOrMOMQitHFzJ9sUNu7J4Y7W5R4gzRW19ucojLt0lH
# fT83Ra+Eex1Cu3DsuvWkokxFikxXP1Ll297Jr1JhOPewTtvlxvI=
# =Q8/k
# -----END PGP SIGNATURE-----
# gpg: Signature made Sun 05 May 2024 04:24:15 PM PDT
# gpg:                using RSA key 3D66AAE474594824C88CE0F81A54AFB8E5646C32
# gpg: Good signature from "Brian Cain (QUIC) <quic_bcain@quicinc.com>" 
[unknown]
# gpg:                 aka "Brian Cain <bcain@kernel.org>" [unknown]
# gpg:                 aka "Brian Cain (QuIC) <bcain@quicinc.com>" [unknown]
# gpg:                 aka "Brian Cain (CAF) <bcain@codeaurora.org>" [unknown]
# gpg:                 aka "bcain" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 6350 20F9 67A7 7164 79EF  49E0 175C 464E 541B 6D47
#      Subkey fingerprint: 3D66 AAE4 7459 4824 C88C  E0F8 1A54 AFB8 E564 6C32

* tag 'pull-hex-20240505' of https://github.com/quic/qemu:
  Hexagon (target/hexagon) Remove hex_common.read_attribs_file
  Hexagon (target/hexagon) Remove gen_shortcode.py
  Hexagon (target/hexagon) Remove gen_op_regs.py
  Hexagon (target/hexagon) Remove uses of op_regs_generated.h.inc
  Hexagon (tests/tcg/hexagon) Test HVX .new read from high half of pair
  Hexagon (target/hexagon) Mark has_pred_dest in trans functions
  Hexagon (target/hexagon) Mark dest_idx in trans functions
  Hexagon (target/hexagon) Mark new_read_idx in trans functions
  Hexagon (target/hexagon) Add is_old/is_new to Register class
  Hexagon (target/hexagon) Only pass env to generated helper when needed
  Hexagon (target/hexagon) Pass SP explicitly to helpers that need it
  Hexagon (target/hexagon) Pass P0 explicitly to helpers that need it
  Hexagon (target/hexagon) Enable more short-circuit packets (HVX)
  Hexagon (target/hexagon) Enable more short-circuit packets (scalar core)
  Hexagon (target/hexagon) Analyze reads before writes

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: d4c453f64824bbeec56c7e72aa83019a7db70d9e
      
https://github.com/qemu/qemu/commit/d4c453f64824bbeec56c7e72aa83019a7db70d9e
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2024-05-06 (Mon, 06 May 2024)

  Changed paths:
    M .gitlab-ci.d/buildtest.yml
    M .gitlab-ci.d/windows.yml
    M accel/kvm/kvm-all.c
    M accel/tcg/tb-jmp-cache.h
    M configs/devices/alpha-softmmu/default.mak
    M configs/devices/arm-softmmu/default.mak
    M configs/devices/avr-softmmu/default.mak
    M configs/devices/cris-softmmu/default.mak
    M configs/devices/hppa-softmmu/default.mak
    M configs/devices/i386-softmmu/default.mak
    M configs/devices/loongarch64-softmmu/default.mak
    M configs/devices/m68k-softmmu/default.mak
    M configs/devices/microblaze-softmmu/default.mak
    M configs/devices/mips-softmmu/common.mak
    M configs/devices/mips64-softmmu/default.mak
    M configs/devices/mips64el-softmmu/default.mak
    M configs/devices/or1k-softmmu/default.mak
    M configs/devices/ppc-softmmu/default.mak
    M configs/devices/ppc64-softmmu/default.mak
    M configs/devices/riscv32-softmmu/default.mak
    M configs/devices/riscv64-softmmu/default.mak
    M configs/devices/rx-softmmu/default.mak
    M configs/devices/s390x-softmmu/default.mak
    M configs/devices/sh4-softmmu/default.mak
    M configs/devices/sparc-softmmu/default.mak
    M configs/devices/sparc64-softmmu/default.mak
    M configs/devices/tricore-softmmu/default.mak
    M configs/devices/xtensa-softmmu/default.mak
    M docs/devel/kconfig.rst
    M hw/alpha/Kconfig
    M hw/arm/Kconfig
    M hw/avr/Kconfig
    M hw/cris/Kconfig
    M hw/display/meson.build
    M hw/display/vga_int.h
    M hw/hppa/Kconfig
    M hw/hyperv/hyperv.c
    M hw/i386/Kconfig
    M hw/intc/s390_flic_kvm.c
    M hw/loongarch/Kconfig
    M hw/m68k/Kconfig
    M hw/microblaze/Kconfig
    M hw/mips/Kconfig
    M hw/openrisc/Kconfig
    M hw/ppc/Kconfig
    M hw/riscv/Kconfig
    M hw/rx/Kconfig
    M hw/s390x/Kconfig
    M hw/sh4/Kconfig
    M hw/sparc/Kconfig
    M hw/sparc64/Kconfig
    M hw/tricore/Kconfig
    M hw/xtensa/Kconfig
    M include/hw/core/cpu.h
    M include/hw/intc/i8259.h
    M include/hw/nvram/fw_cfg.h
    M include/hw/pci/pcie.h
    M include/hw/pci/pcie_aer.h
    M include/hw/pci/pcie_sriov.h
    M include/hw/qdev-core.h
    M include/hw/s390x/adapter.h
    M include/monitor/hmp-target.h
    M include/net/announce.h
    M include/qemu/bitmap.h
    M include/qemu/coroutine.h
    M include/qemu/lockable.h
    M include/qemu/option.h
    M include/qemu/typedefs.h
    M include/sysemu/kvm.h
    M include/sysemu/numa.h
    M meson.build
    M migration/migration.h
    M migration/postcopy-ram.c
    M qga/commands-posix.c
    M stubs/target-monitor-defs.c
    M system/physmem.c
    M target/Kconfig
    M target/arm/Kconfig
    M target/i386/Kconfig
    M target/i386/cpu.c
    M target/i386/tcg/translate.c
    M target/ppc/Kconfig
    M target/ppc/kvm.c
    M tests/qtest/m48t59-test.c

  Log Message:
  -----------
  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

* target/i386: Introduce SapphireRapids-v3 to add missing features
* switch boards to "default y"
* allow building emulators without any board
* configs: list "implied" device groups in the default configs
* remove unnecessary declarations from typedefs.h
* target/i386: Give IRQs a chance when resetting HF_INHIBIT_IRQ_MASK

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmY1ILsUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroNtIwf+MEehq2HudZvsK1M8FrvNmkB/AssO
# x4tqL8DlTus23mQDBu9+rANTB93ManJdK9ybtf6NfjEwK+R8RJslLVnuy/qT+aQX
# PD208L88fjZg17G8uyawwvD1VmqWzHFSN14ShmKzqB2yPXXo/1cJ30w78DbD50yC
# 6rw/xbC5j195CwE2u8eBcIyY4Hh2PUYEE4uyHbYVr57cMjfmmA5Pg4I4FJrpLrF3
# eM2Avl/4pIbsW3zxXVB8QbAkgypxZErk3teDK1AkPJnlnBYM1jGKbt/GdKe7vcHR
# V/o+7NlcbS3oHVItQ2gP3m91stjFq+NhixaZpa0VlmuqayBa3xNGl0G6OQ==
# =ZbNW
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 03 May 2024 10:36:59 AM PDT
# gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg:                issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [full]

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu: (46 commits)
  qga/commands-posix: fix typo in qmp_guest_set_user_password
  migration: do not include coroutine_int.h
  kvm: move target-dependent interrupt routing out of kvm-all.c
  pci: remove some types from typedefs.h
  tcg: remove CPU* types from typedefs.h
  display: remove GraphicHwOps from typedefs.h
  qapi/machine: remove types from typedefs.h
  monitor: remove MonitorDef from typedefs.h
  migration: remove PostcopyDiscardState from typedefs.h
  lockable: remove QemuLockable from typedefs.h
  intc: remove PICCommonState from typedefs.h
  qemu-option: remove QemuOpt from typedefs.h
  net: remove AnnounceTimer from typedefs.h
  numa: remove types from typedefs.h
  qdev-core: remove DeviceListener from typedefs.h
  fw_cfg: remove useless declarations from typedefs.h
  build: do not build virtio-vga-gl if virgl/opengl not available
  bitmap: Use g_try_new0/g_new0/g_renew
  target/i386: Introduce SapphireRapids-v3 to add missing features
  docs: document new convention for Kconfig board symbols
  ...

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


Compare: https://github.com/qemu/qemu/compare/248f6f62df07...d4c453f64824

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications



reply via email to

[Prev in Thread] Current Thread [Next in Thread]