[PULL 00/53] Misc patches for QEMU 5.1 soft freeze

Paolo Bonzini posted 53 patches 3 years, 8 months ago
Test FreeBSD passed
Test docker-quick@centos7 passed
Test checkpatch failed
Test docker-mingw@fedora passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20200706164155.24696-1-pbonzini@redhat.com
Maintainers: Richard Henderson <rth@twiddle.net>, Peter Lieven <pl@kamp.de>, Roman Bolshakov <r.bolshakov@yadro.com>, Eduardo Habkost <ehabkost@redhat.com>, "Daniel P. Berrangé" <berrange@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Max Reitz <mreitz@redhat.com>, Ronnie Sahlberg <ronniesahlberg@gmail.com>, Marcelo Tosatti <mtosatti@redhat.com>, Laurent Vivier <lvivier@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Thomas Huth <thuth@redhat.com>, Markus Armbruster <armbru@redhat.com>, Kevin Wolf <kwolf@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>
There is a newer version of this series
Kconfig                                      |   4 +
Kconfig.host                                 |   7 -
MAINTAINERS                                  |  31 +-
Makefile                                     |  12 +-
Makefile.target                              |   7 +-
accel/Kconfig                                |   9 +
accel/kvm/kvm-all.c                          |  72 +--
accel/qtest.c                                |   6 +-
accel/stubs/tcg-stub.c                       |   7 +
accel/tcg/cpu-exec.c                         |  43 +-
accel/tcg/tcg-all.c                          |   7 +-
accel/tcg/translate-all.c                    |   3 +-
block/iscsi.c                                |  22 +-
chardev/char-socket.c                        |   3 +-
cpus-common.c                                |  18 +
dma-helpers.c                                |   4 +-
docs/replay.txt                              |   6 +-
exec.c                                       |  26 -
hw/core/null-machine.c                       |   5 +
hw/core/ptimer.c                             |   8 +-
hw/hyperv/hyperv.c                           |   2 +-
hw/i386/kvm/clock.c                          |   2 +-
hw/i386/kvm/i8254.c                          |   4 +-
hw/i386/kvm/ioapic.c                         |   2 +-
hw/i386/pc_sysfw.c                           |   5 +
hw/i386/x86.c                                |   1 +
hw/intc/arm_gic_kvm.c                        |   2 +-
hw/intc/openpic_kvm.c                        |   2 +-
hw/intc/xics_kvm.c                           |   2 +-
hw/s390x/s390-stattrib-kvm.c                 |   2 +-
include/exec/cpu-all.h                       |   4 +
include/exec/exec-all.h                      |   4 +-
include/hw/core/cpu.h                        |  37 --
include/qemu/error-report.h                  |   2 +
include/qemu/main-loop.h                     |   5 +
include/qemu/osdep.h                         |  21 +-
include/qemu/timer.h                         |  22 +-
include/qom/object.h                         |  26 +-
include/sysemu/cpu-throttle.h                |  68 +++
include/sysemu/cpu-timers.h                  |  81 +++
include/sysemu/cpus.h                        |  12 +-
include/sysemu/hvf.h                         |   2 +-
include/sysemu/hw_accel.h                    |  13 +
include/sysemu/kvm.h                         |   2 +-
include/sysemu/qtest.h                       |   2 +
include/sysemu/replay.h                      |   4 +-
migration/migration.c                        |   1 +
migration/ram.c                              |   1 +
qemu-options.hx                              |  12 +-
qom/object.c                                 |  21 +-
qom/object_interfaces.c                      |   7 +-
replay/replay.c                              |   6 +-
scripts/checkpatch.pl                        |   6 +-
scripts/tap-driver.pl                        |   2 +-
softmmu/Makefile.objs                        |  13 +
arch_init.c => softmmu/arch_init.c           |   0
balloon.c => softmmu/balloon.c               |   0
softmmu/cpu-throttle.c                       | 122 ++++
softmmu/cpu-timers.c                         | 284 +++++++++
cpus.c => softmmu/cpus.c                     | 851 +--------------------------
softmmu/icount.c                             | 499 ++++++++++++++++
ioport.c => softmmu/ioport.c                 |   0
memory.c => softmmu/memory.c                 |   0
memory_mapping.c => softmmu/memory_mapping.c |   0
qtest.c => softmmu/qtest.c                   |  34 +-
softmmu/timers-state.h                       |  69 +++
softmmu/vl.c                                 |  22 +-
stubs/Makefile.objs                          |   3 +-
stubs/clock-warp.c                           |   4 +-
stubs/cpu-get-clock.c                        |   3 +-
stubs/cpu-get-icount.c                       |  21 -
stubs/icount.c                               |  22 +
stubs/qemu-timer-notify-cb.c                 |   8 +
stubs/qtest.c                                |   5 +
target/alpha/translate.c                     |   3 +-
target/arm/helper.c                          |   7 +-
target/arm/kvm.c                             |  13 +-
target/arm/kvm32.c                           |   2 +-
target/arm/kvm64.c                           |  15 +-
target/i386/cpu.c                            |  13 +-
target/i386/cpu.h                            |  10 +
target/i386/excp_helper.c                    |   4 +-
target/i386/fpu_helper.c                     |  35 +-
target/i386/gdbstub.c                        |   1 +
target/i386/helper.c                         |   1 +
target/i386/helper.h                         |   1 +
target/i386/hvf/hvf.c                        | 137 +----
target/i386/hvf/vmx.h                        |  17 +-
target/i386/kvm.c                            | 143 +++--
target/i386/kvm_i386.h                       |   1 +
target/i386/machine.c                        |  31 +-
target/i386/monitor.c                        |  10 +-
target/i386/ops_sse.h                        |  28 +-
target/i386/sev-stub.c                       |   3 +-
target/i386/sev.c                            |  27 +-
target/i386/sev_i386.h                       |   2 +-
target/i386/svm.h                            |   1 +
target/i386/svm_helper.c                     |   7 +-
target/i386/translate.c                      |  36 +-
target/mips/kvm.c                            |   4 +-
target/ppc/kvm.c                             |  34 +-
target/riscv/csr.c                           |   8 +-
target/s390x/cpu_models.c                    |   3 +-
target/s390x/kvm.c                           |  30 +-
tests/Makefile.include                       |   2 +-
tests/ptimer-test-stubs.c                    |   7 +-
tests/qtest/qmp-cmd-test.c                   | 109 +++-
tests/tcg/i386/Makefile.target               |   4 +
tests/tcg/i386/test-i386-sse-exceptions.c    | 813 +++++++++++++++++++++++++
tests/test-timed-average.c                   |   2 +-
util/main-loop.c                             |   4 +-
util/qemu-error.c                            |   7 +
util/qemu-timer.c                            |  12 +-
113 files changed, 2817 insertions(+), 1415 deletions(-)
create mode 100644 Kconfig
create mode 100644 accel/Kconfig
create mode 100644 include/sysemu/cpu-throttle.h
create mode 100644 include/sysemu/cpu-timers.h
rename arch_init.c => softmmu/arch_init.c (100%)
rename balloon.c => softmmu/balloon.c (100%)
create mode 100644 softmmu/cpu-throttle.c
create mode 100644 softmmu/cpu-timers.c
rename cpus.c => softmmu/cpus.c (58%)
create mode 100644 softmmu/icount.c
rename ioport.c => softmmu/ioport.c (100%)
rename memory.c => softmmu/memory.c (100%)
rename memory_mapping.c => softmmu/memory_mapping.c (100%)
rename qtest.c => softmmu/qtest.c (95%)
create mode 100644 softmmu/timers-state.h
delete mode 100644 stubs/cpu-get-icount.c
create mode 100644 stubs/icount.c
create mode 100644 stubs/qemu-timer-notify-cb.c
create mode 100644 tests/tcg/i386/test-i386-sse-exceptions.c
[PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Paolo Bonzini 3 years, 8 months ago
The following changes since commit fc1bff958998910ec8d25db86cd2f53ff125f7ab:

  hw/misc/pca9552: Add missing TypeInfo::class_size field (2020-06-29 21:16:10 +0100)

are available in the Git repository at:

  git://github.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to 80270507070ec73ea82741ce24cb7909a9258ea3:

  scripts: improve message when TAP based tests fail (2020-07-06 12:14:25 -0400)

----------------------------------------------------------------
* Make checkpatch say 'qemu' instead of 'kernel' (Aleksandar)
* Fix PSE guests with emulated NPT (Alexander B. #1)
* Fix leak (Alexander B. #2)
* HVF fixes (Roman, Cameron)
* New Sapphire Rapids CPUID bits (Cathy)
* cpus.c and softmmu/ cleanups (Claudio)
* TAP driver tweaks (Daniel, Havard)
* object-add bugfix and testcases (Eric A.)
* Fix Coverity MIN_CONST and MAX_CONST (Eric B.)
* SSE fixes (Joseph)
* "-msg guest-name" option (Mario)
* support for AMD nested live migration (myself)
* Small i386 TCG fixes (myself)
* improved error reporting for Xen (myself)
* fix "-cpu host -overcommit cpu-pm=on" (myself)
* Add accel/Kconfig (Philippe)
* KVM API cleanup (Philippe)
* iscsi sense handling fixes (Yongji)
* Misc bugfixes

----------------------------------------------------------------
Aleksandar Markovic (1):
      checkpatch: Change occurences of 'kernel' to 'qemu' in user messages

Alexander Boettcher (1):
      tcg/svm: use host cr4 during NPT page table walk

Alexander Bulekov (1):
      pc: fix leak in pc_system_flash_cleanup_unused

Cameron Esfahani (1):
      i386: hvf: Make long mode enter and exit clearer

Cathy Zhang (2):
      target/i386: Add SERIALIZE cpu feature
      target/i386: Enable TSX Suspend Load Address Tracking feature

Claudio Fontana (3):
      softmmu: move softmmu only files from root
      cpu-throttle: new module, extracted from cpus.c
      cpu-timers, icount: new modules

Daniel P. Berrangé (1):
      scripts: improve message when TAP based tests fail

Eric Auger (3):
      qom: Introduce object_property_try_add_child()
      tests/qmp-cmd-test: Add qmp/object-add-duplicate-id
      tests/qmp-cmd-test: Add qmp/object-add-failure-modes

Eric Blake (1):
      coverity: provide Coverity-friendly MIN_CONST and MAX_CONST

Havard Skinnemoen (1):
      tests: Inject test name also when the test fails

Joseph Myers (2):
      target/i386: set SSE FTZ in correct floating-point state
      target/i386: fix IEEE SSE floating-point exception raising

Luwei Kang (1):
      target/i386: Correct the warning message of Intel PT

Mario Smarduch (1):
      util/qemu-error: prepend guest name to error message to identify affected VM owner

Paolo Bonzini (7):
      KVM: add support for AMD nested live migration
      Makefile: simplify MINIKCONF rules
      target/i386: remove gen_io_end
      target/i386: implement undocumented "smsw r32" behavior
      KVM: x86: believe what KVM says about WAITPKG
      target/i386: sev: provide proper error reporting for query-sev-capabilities
      target/i386: sev: fail query-sev-capabilities if QEMU cannot use SEV

Philippe Mathieu-Daudé (16):
      hw/core/null-machine: Do not initialize unused chardev backends
      MAINTAINERS: Fix KVM path expansion glob
      MAINTAINERS: Add an 'overall' entry for accelerators
      MAINTAINERS: Cover the HAX accelerator stub
      Makefile: Remove dangerous EOL trailing backslash
      Makefile: Write MINIKCONF variables as one entry per line
      accel/Kconfig: Extract accel selectors into their own config
      accel/Kconfig: Add the TCG selector
      accel/tcg: Add stub for probe_access()
      cpus: Move CPU code from exec.c to cpus-common.c
      accel/kvm: Let kvm_check_extension use global KVM state
      accel/kvm: Simplify kvm_check_extension()
      accel/kvm: Simplify kvm_check_extension_list()
      target/i386/kvm: Simplify get_para_features()
      target/i386/kvm: Simplify kvm_get_mce_cap_supported()
      target/i386/kvm: Simplify kvm_get_supported_[feature]_msrs()

Roman Bolshakov (7):
      i386: hvf: Set env->eip in macvm_set_rip()
      i386: hvf: Move synchronize functions to sysemu
      i386: hvf: Add hvf_cpu_synchronize_pre_loadvm()
      i386: hvf: Move Guest LMA reset to macvm_set_cr0()
      i386: hvf: Don't duplicate register reset
      i386: hvf: Clean up synchronize functions
      MAINTAINERS: Add Cameron as HVF co-maintainer

Thomas Huth (1):
      softmmu/vl: Remove the check for colons in -accel parameters

Xie Yongji (2):
      iscsi: handle check condition status in retry loop
      iscsi: return -EIO when sense fields are meaningless

lichun (1):
      chardev/tcp: fix error message double free error

 Kconfig                                      |   4 +
 Kconfig.host                                 |   7 -
 MAINTAINERS                                  |  31 +-
 Makefile                                     |  12 +-
 Makefile.target                              |   7 +-
 accel/Kconfig                                |   9 +
 accel/kvm/kvm-all.c                          |  72 +--
 accel/qtest.c                                |   6 +-
 accel/stubs/tcg-stub.c                       |   7 +
 accel/tcg/cpu-exec.c                         |  43 +-
 accel/tcg/tcg-all.c                          |   7 +-
 accel/tcg/translate-all.c                    |   3 +-
 block/iscsi.c                                |  22 +-
 chardev/char-socket.c                        |   3 +-
 cpus-common.c                                |  18 +
 dma-helpers.c                                |   4 +-
 docs/replay.txt                              |   6 +-
 exec.c                                       |  26 -
 hw/core/null-machine.c                       |   5 +
 hw/core/ptimer.c                             |   8 +-
 hw/hyperv/hyperv.c                           |   2 +-
 hw/i386/kvm/clock.c                          |   2 +-
 hw/i386/kvm/i8254.c                          |   4 +-
 hw/i386/kvm/ioapic.c                         |   2 +-
 hw/i386/pc_sysfw.c                           |   5 +
 hw/i386/x86.c                                |   1 +
 hw/intc/arm_gic_kvm.c                        |   2 +-
 hw/intc/openpic_kvm.c                        |   2 +-
 hw/intc/xics_kvm.c                           |   2 +-
 hw/s390x/s390-stattrib-kvm.c                 |   2 +-
 include/exec/cpu-all.h                       |   4 +
 include/exec/exec-all.h                      |   4 +-
 include/hw/core/cpu.h                        |  37 --
 include/qemu/error-report.h                  |   2 +
 include/qemu/main-loop.h                     |   5 +
 include/qemu/osdep.h                         |  21 +-
 include/qemu/timer.h                         |  22 +-
 include/qom/object.h                         |  26 +-
 include/sysemu/cpu-throttle.h                |  68 +++
 include/sysemu/cpu-timers.h                  |  81 +++
 include/sysemu/cpus.h                        |  12 +-
 include/sysemu/hvf.h                         |   2 +-
 include/sysemu/hw_accel.h                    |  13 +
 include/sysemu/kvm.h                         |   2 +-
 include/sysemu/qtest.h                       |   2 +
 include/sysemu/replay.h                      |   4 +-
 migration/migration.c                        |   1 +
 migration/ram.c                              |   1 +
 qemu-options.hx                              |  12 +-
 qom/object.c                                 |  21 +-
 qom/object_interfaces.c                      |   7 +-
 replay/replay.c                              |   6 +-
 scripts/checkpatch.pl                        |   6 +-
 scripts/tap-driver.pl                        |   2 +-
 softmmu/Makefile.objs                        |  13 +
 arch_init.c => softmmu/arch_init.c           |   0
 balloon.c => softmmu/balloon.c               |   0
 softmmu/cpu-throttle.c                       | 122 ++++
 softmmu/cpu-timers.c                         | 284 +++++++++
 cpus.c => softmmu/cpus.c                     | 851 +--------------------------
 softmmu/icount.c                             | 499 ++++++++++++++++
 ioport.c => softmmu/ioport.c                 |   0
 memory.c => softmmu/memory.c                 |   0
 memory_mapping.c => softmmu/memory_mapping.c |   0
 qtest.c => softmmu/qtest.c                   |  34 +-
 softmmu/timers-state.h                       |  69 +++
 softmmu/vl.c                                 |  22 +-
 stubs/Makefile.objs                          |   3 +-
 stubs/clock-warp.c                           |   4 +-
 stubs/cpu-get-clock.c                        |   3 +-
 stubs/cpu-get-icount.c                       |  21 -
 stubs/icount.c                               |  22 +
 stubs/qemu-timer-notify-cb.c                 |   8 +
 stubs/qtest.c                                |   5 +
 target/alpha/translate.c                     |   3 +-
 target/arm/helper.c                          |   7 +-
 target/arm/kvm.c                             |  13 +-
 target/arm/kvm32.c                           |   2 +-
 target/arm/kvm64.c                           |  15 +-
 target/i386/cpu.c                            |  13 +-
 target/i386/cpu.h                            |  10 +
 target/i386/excp_helper.c                    |   4 +-
 target/i386/fpu_helper.c                     |  35 +-
 target/i386/gdbstub.c                        |   1 +
 target/i386/helper.c                         |   1 +
 target/i386/helper.h                         |   1 +
 target/i386/hvf/hvf.c                        | 137 +----
 target/i386/hvf/vmx.h                        |  17 +-
 target/i386/kvm.c                            | 143 +++--
 target/i386/kvm_i386.h                       |   1 +
 target/i386/machine.c                        |  31 +-
 target/i386/monitor.c                        |  10 +-
 target/i386/ops_sse.h                        |  28 +-
 target/i386/sev-stub.c                       |   3 +-
 target/i386/sev.c                            |  27 +-
 target/i386/sev_i386.h                       |   2 +-
 target/i386/svm.h                            |   1 +
 target/i386/svm_helper.c                     |   7 +-
 target/i386/translate.c                      |  36 +-
 target/mips/kvm.c                            |   4 +-
 target/ppc/kvm.c                             |  34 +-
 target/riscv/csr.c                           |   8 +-
 target/s390x/cpu_models.c                    |   3 +-
 target/s390x/kvm.c                           |  30 +-
 tests/Makefile.include                       |   2 +-
 tests/ptimer-test-stubs.c                    |   7 +-
 tests/qtest/qmp-cmd-test.c                   | 109 +++-
 tests/tcg/i386/Makefile.target               |   4 +
 tests/tcg/i386/test-i386-sse-exceptions.c    | 813 +++++++++++++++++++++++++
 tests/test-timed-average.c                   |   2 +-
 util/main-loop.c                             |   4 +-
 util/qemu-error.c                            |   7 +
 util/qemu-timer.c                            |  12 +-
 113 files changed, 2817 insertions(+), 1415 deletions(-)
 create mode 100644 Kconfig
 create mode 100644 accel/Kconfig
 create mode 100644 include/sysemu/cpu-throttle.h
 create mode 100644 include/sysemu/cpu-timers.h
 rename arch_init.c => softmmu/arch_init.c (100%)
 rename balloon.c => softmmu/balloon.c (100%)
 create mode 100644 softmmu/cpu-throttle.c
 create mode 100644 softmmu/cpu-timers.c
 rename cpus.c => softmmu/cpus.c (58%)
 create mode 100644 softmmu/icount.c
 rename ioport.c => softmmu/ioport.c (100%)
 rename memory.c => softmmu/memory.c (100%)
 rename memory_mapping.c => softmmu/memory_mapping.c (100%)
 rename qtest.c => softmmu/qtest.c (95%)
 create mode 100644 softmmu/timers-state.h
 delete mode 100644 stubs/cpu-get-icount.c
 create mode 100644 stubs/icount.c
 create mode 100644 stubs/qemu-timer-notify-cb.c
 create mode 100644 tests/tcg/i386/test-i386-sse-exceptions.c
-- 
2.26.2


Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Peter Maydell 3 years, 8 months ago
On Mon, 6 Jul 2020 at 17:48, Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> The following changes since commit fc1bff958998910ec8d25db86cd2f53ff125f7ab:
>
>   hw/misc/pca9552: Add missing TypeInfo::class_size field (2020-06-29 21:16:10 +0100)
>
> are available in the Git repository at:
>
>   git://github.com/bonzini/qemu.git tags/for-upstream
>
> for you to fetch changes up to 80270507070ec73ea82741ce24cb7909a9258ea3:
>
>   scripts: improve message when TAP based tests fail (2020-07-06 12:14:25 -0400)
>
> ----------------------------------------------------------------
> * Make checkpatch say 'qemu' instead of 'kernel' (Aleksandar)
> * Fix PSE guests with emulated NPT (Alexander B. #1)
> * Fix leak (Alexander B. #2)
> * HVF fixes (Roman, Cameron)
> * New Sapphire Rapids CPUID bits (Cathy)
> * cpus.c and softmmu/ cleanups (Claudio)
> * TAP driver tweaks (Daniel, Havard)
> * object-add bugfix and testcases (Eric A.)
> * Fix Coverity MIN_CONST and MAX_CONST (Eric B.)
> * SSE fixes (Joseph)
> * "-msg guest-name" option (Mario)
> * support for AMD nested live migration (myself)
> * Small i386 TCG fixes (myself)
> * improved error reporting for Xen (myself)
> * fix "-cpu host -overcommit cpu-pm=on" (myself)
> * Add accel/Kconfig (Philippe)
> * KVM API cleanup (Philippe)
> * iscsi sense handling fixes (Yongji)
> * Misc bugfixes

Hi; various build or test failures (5 total):

1) OSX:

/Users/pm215/src/qemu-for-merges/ui/cocoa.m:1478:9: error: implicit
declaration of function 'cpu_throttle_set' is invalid in C99 [-
Werror,-Wimplicit-function-declaration]
        cpu_throttle_set(throttle_pct);
        ^

2) aarch64 and aarch32 linux:

/home/pm/qemu/target/arm/kvm.c: In function ‘kvm_arch_init’:
/home/pm/qemu/target/arm/kvm.c:248:29: error: passing argument 1 of
‘kvm_check_extension’ makes integer from pointer without a cast
 [-Werror=int-conversion]
  248 |     if (kvm_check_extension(s, KVM_CAP_ARM_NISV_TO_USER)) {
      |                             ^
      |                             |
      |                             KVMState * {aka struct KVMState *}
In file included from /home/pm/qemu/target/arm/kvm.c:23:
/home/pm/qemu/include/sysemu/kvm.h:439:38: note: expected ‘unsigned
int’ but argument is of type ‘KVMState *’ {aka ‘struct KVMState
 *’}
  439 | int kvm_check_extension(unsigned int extension);
      |                         ~~~~~~~~~~~~~^~~~~~~~~
/home/pm/qemu/target/arm/kvm.c:248:9: error: too many arguments to
function ‘kvm_check_extension’
  248 |     if (kvm_check_extension(s, KVM_CAP_ARM_NISV_TO_USER)) {
      |         ^~~~~~~~~~~~~~~~~~~
In file included from /home/pm/qemu/target/arm/kvm.c:23:
/home/pm/qemu/include/sysemu/kvm.h:439:5: note: declared here
  439 | int kvm_check_extension(unsigned int extension);
      |     ^~~~~~~~~~~~~~~~~~~
/home/pm/qemu/target/arm/kvm.c:253:59: error: passing argument 1 of
‘kvm_check_extension’ makes integer from pointer without a cast
 [-Werror=int-conversion]
  253 |             cap_has_inject_ext_dabt = kvm_check_extension(s,
      |                                                           ^
      |                                                           |
      |
KVMState * {aka struct KVMState *}
In file included from /home/pm/qemu/target/arm/kvm.c:23:
/home/pm/qemu/include/sysemu/kvm.h:439:38: note: expected ‘unsigned
int’ but argument is of type ‘KVMState *’ {aka ‘struct KVMState
 *’}
  439 | int kvm_check_extension(unsigned int extension);
      |                         ~~~~~~~~~~~~~^~~~~~~~~
/home/pm/qemu/target/arm/kvm.c:253:39: error: too many arguments to
function ‘kvm_check_extension’
  253 |             cap_has_inject_ext_dabt = kvm_check_extension(s,
      |                                       ^~~~~~~~~~~~~~~~~~~
In file included from /home/pm/qemu/target/arm/kvm.c:23:
/home/pm/qemu/include/sysemu/kvm.h:439:5: note: declared here
  439 | int kvm_check_extension(unsigned int extension);
      |     ^~~~~~~~~~~~~~~~~~~

3) PPC64 had a failure on iotest 030 (though I think this may
be an intermittent in master):

  TEST    iotest-qcow2: 030 [fail]
QEMU          --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64"
-nodefaults -display none -accel qtest
QEMU_IMG      -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
QEMU_IO       --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
writeback --aio threads -f qcow2
QEMU_NBD      -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
IMGFMT        -- qcow2 (compat=1.1)
IMGPROTO      -- file
PLATFORM      -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
TEST_DIR      -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
SOCK_DIR      -- /tmp/tmp.icAW30swbG
SOCKET_SCM_HELPER --
/home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper

--- /home/pm215/qemu/tests/qemu-iotests/030.out 2019-07-15
15:12:04.941863802 +0000
+++ /home/pm215/qemu/build/all/tests/qemu-iotests/030.out.bad
2020-07-07 18:01:06.975652394 +0000
@@ -1,5 +1,17 @@
-...........................
+.............F.............
+======================================================================
+FAIL: test_stream_parallel (__main__.TestParallelOps)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "030", line 246, in test_stream_parallel
+    self.assert_qmp(result, 'return', {})
+  File "/home/pm215/qemu/tests/qemu-iotests/iotests.py", line 848, in
assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/pm215/qemu/tests/qemu-iotests/iotests.py", line 822, in dictpath
+    self.fail(f'failed path traversal for "{path}" in "{d}"')
+AssertionError: failed path traversal for "return" in "{'error':
{'class': 'DeviceNotActive', 'desc': "Block job 'stream-node8' not
found"}}"
+
 ----------------------------------------------------------------------
 Ran 27 tests

-OK
+FAILED (failures=1)

4) s390x failed on iotest 267:

  TEST    iotest-qcow2: 267 [fail]
QEMU          --
"/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../s390x-softmmu/qemu-system-s390x"
-nodefaults -display none -accel qtest
QEMU_IMG      -- "/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../qemu-img"
QEMU_IO       --
"/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../qemu-io"
--cache writeback --aio threads -f qcow2
QEMU_NBD      -- "/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
IMGFMT        -- qcow2 (compat=1.1)
IMGPROTO      -- file
PLATFORM      -- Linux/s390x qemu01 4.15.0-72-generic
TEST_DIR      -- /home/ubuntu/qemu/build/all/tests/qemu-iotests/scratch
SOCK_DIR      -- /tmp/tmp.REW8Sy64t9
SOCKET_SCM_HELPER --
/home/ubuntu/qemu/build/all/tests/qemu-iotests/socket_scm_helper

--- /home/ubuntu/qemu/tests/qemu-iotests/267.out        2019-12-19
08:32:33.382319918 -0500
+++ /home/ubuntu/qemu/build/all/tests/qemu-iotests/267.out.bad
2020-07-07 14:15:44.173300793 -0400
@@ -137,6 +137,9 @@
 ID        TAG                 VM SIZE                DATE       VM CLOCK
 --        snap0                  SIZE yyyy-mm-dd hh:mm:ss   00:00:00.000
 (qemu) loadvm snap0
+Unexpected storage key flag data: 0
+error while loading state for instance 0x0 of device 's390-skeys'
+Error: Error -22 while loading VM state
 (qemu) quit

 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728
backing_file=TEST_DIR/t.IMGFMT.base

5) And a link error on x86-64 Linux:

  LINK    x86_64-softmmu/qemu-system-x86_64
softmmu/cpus.o: In function `tcg_get_icount_limit':
/home/petmay01/linaro/qemu-for-merges/softmmu/cpus.c:563: undefined
reference to `icount_round'
softmmu/cpus.o: In function `process_icount_data':
/home/petmay01/linaro/qemu-for-merges/softmmu/cpus.c:618: undefined
reference to `icount_update'
target/i386/helper.o: In function `x86_cpu_dump_state':
/home/petmay01/linaro/qemu-for-merges/target/i386/helper.c:547:
undefined reference to `update_mxcsr_from_sse_status'
target/i386/gdbstub.o: In function `x86_cpu_gdb_read_register':
/home/petmay01/linaro/qemu-for-merges/target/i386/gdbstub.c:187:
undefined reference to `update_mxcsr_from_sse_status'
collect2: error: ld returned 1 exit status
Makefile:205: recipe for target 'qemu-system-x86_64' failed

thanks
-- PMM

Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Peter Maydell 3 years, 8 months ago
On Tue, 7 Jul 2020 at 19:37, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Mon, 6 Jul 2020 at 17:48, Paolo Bonzini <pbonzini@redhat.com> wrote:
> >
> > The following changes since commit fc1bff958998910ec8d25db86cd2f53ff125f7ab:
> >
> >   hw/misc/pca9552: Add missing TypeInfo::class_size field (2020-06-29 21:16:10 +0100)
> >
> > are available in the Git repository at:
> >
> >   git://github.com/bonzini/qemu.git tags/for-upstream
> >
> > for you to fetch changes up to 80270507070ec73ea82741ce24cb7909a9258ea3:
> >
> >   scripts: improve message when TAP based tests fail (2020-07-06 12:14:25 -0400)
> >
> > ----------------------------------------------------------------
> > * Make checkpatch say 'qemu' instead of 'kernel' (Aleksandar)
> > * Fix PSE guests with emulated NPT (Alexander B. #1)
> > * Fix leak (Alexander B. #2)
> > * HVF fixes (Roman, Cameron)
> > * New Sapphire Rapids CPUID bits (Cathy)
> > * cpus.c and softmmu/ cleanups (Claudio)
> > * TAP driver tweaks (Daniel, Havard)
> > * object-add bugfix and testcases (Eric A.)
> > * Fix Coverity MIN_CONST and MAX_CONST (Eric B.)
> > * SSE fixes (Joseph)
> > * "-msg guest-name" option (Mario)
> > * support for AMD nested live migration (myself)
> > * Small i386 TCG fixes (myself)
> > * improved error reporting for Xen (myself)
> > * fix "-cpu host -overcommit cpu-pm=on" (myself)
> > * Add accel/Kconfig (Philippe)
> > * KVM API cleanup (Philippe)
> > * iscsi sense handling fixes (Yongji)
> > * Misc bugfixes
>
> Hi; various build or test failures (5 total):

Also it broke my working tree, in the sense that when I
rolled back to current master incremental-rebuild didn't
work but instead failed with:

make: *** No rule to make target '/home/ubuntu/qemu/Kconfig', needed
by 'aarch64-softmmu/config-devices.mak'.  Stop.

thanks
-- PMM

Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Paolo Bonzini 3 years, 8 months ago
Il mar 7 lug 2020, 20:42 Peter Maydell <peter.maydell@linaro.org> ha
scritto:

> Also it broke my working tree, in the sense that when I
> rolled back to current master incremental-rebuild didn't
> work but instead failed with:
>
> make: *** No rule to make target '/home/ubuntu/qemu/Kconfig', needed
> by 'aarch64-softmmu/config-devices.mak'.  Stop.
>

The latter is unfortunately expected. I am curious about the s390 failure
and especially the x86 link failure which might be a semantic conflict. I
will try to reproduce them locally.

Paolo

>
> thanks
> -- PMM
>
>
Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Philippe Mathieu-Daudé 3 years, 8 months ago
On 7/7/20 8:37 PM, Peter Maydell wrote:
> On Mon, 6 Jul 2020 at 17:48, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>
>> The following changes since commit fc1bff958998910ec8d25db86cd2f53ff125f7ab:
>>
>>   hw/misc/pca9552: Add missing TypeInfo::class_size field (2020-06-29 21:16:10 +0100)
>>
>> are available in the Git repository at:
>>
>>   git://github.com/bonzini/qemu.git tags/for-upstream
>>
>> for you to fetch changes up to 80270507070ec73ea82741ce24cb7909a9258ea3:
>>
>>   scripts: improve message when TAP based tests fail (2020-07-06 12:14:25 -0400)
>>
>> ----------------------------------------------------------------
>> * Make checkpatch say 'qemu' instead of 'kernel' (Aleksandar)
>> * Fix PSE guests with emulated NPT (Alexander B. #1)
>> * Fix leak (Alexander B. #2)
>> * HVF fixes (Roman, Cameron)
>> * New Sapphire Rapids CPUID bits (Cathy)
>> * cpus.c and softmmu/ cleanups (Claudio)
>> * TAP driver tweaks (Daniel, Havard)
>> * object-add bugfix and testcases (Eric A.)
>> * Fix Coverity MIN_CONST and MAX_CONST (Eric B.)
>> * SSE fixes (Joseph)
>> * "-msg guest-name" option (Mario)
>> * support for AMD nested live migration (myself)
>> * Small i386 TCG fixes (myself)
>> * improved error reporting for Xen (myself)
>> * fix "-cpu host -overcommit cpu-pm=on" (myself)
>> * Add accel/Kconfig (Philippe)
>> * KVM API cleanup (Philippe)
>> * iscsi sense handling fixes (Yongji)
>> * Misc bugfixes
> 
> Hi; various build or test failures (5 total):

> 2) aarch64 and aarch32 linux:
> 
> /home/pm/qemu/target/arm/kvm.c: In function ‘kvm_arch_init’:
> /home/pm/qemu/target/arm/kvm.c:248:29: error: passing argument 1 of
> ‘kvm_check_extension’ makes integer from pointer without a cast
>  [-Werror=int-conversion]
>   248 |     if (kvm_check_extension(s, KVM_CAP_ARM_NISV_TO_USER)) {
>       |                             ^
>       |                             |
>       |                             KVMState * {aka struct KVMState *}

I was sure I tested that on ARM hosts, so I double checked and
this code is new, merged last Saturday in 1711bfa5f5 ("target/arm: kvm:
Handle misconfigured dabt injection"), so an unfortunate merge race
problem.

> 3) PPC64 had a failure on iotest 030 (though I think this may
> be an intermittent in master):
> 
>   TEST    iotest-qcow2: 030 [fail]
[...]
> +AssertionError: failed path traversal for "return" in "{'error':
> {'class': 'DeviceNotActive', 'desc': "Block job 'stream-node8' not
> found"}}"

So this is now more intermittent, and this has been reported on:
- Linux/x86
- FreeBSD/x86
- Linux/ppc64


Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Claudio Fontana 3 years, 8 months ago
On 7/7/20 8:37 PM, Peter Maydell wrote:
> On Mon, 6 Jul 2020 at 17:48, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>
>> The following changes since commit fc1bff958998910ec8d25db86cd2f53ff125f7ab:
>>
>>   hw/misc/pca9552: Add missing TypeInfo::class_size field (2020-06-29 21:16:10 +0100)
>>
>> are available in the Git repository at:
>>
>>   git://github.com/bonzini/qemu.git tags/for-upstream
>>
>> for you to fetch changes up to 80270507070ec73ea82741ce24cb7909a9258ea3:
>>
>>   scripts: improve message when TAP based tests fail (2020-07-06 12:14:25 -0400)
>>
>> ----------------------------------------------------------------
>> * Make checkpatch say 'qemu' instead of 'kernel' (Aleksandar)
>> * Fix PSE guests with emulated NPT (Alexander B. #1)
>> * Fix leak (Alexander B. #2)
>> * HVF fixes (Roman, Cameron)
>> * New Sapphire Rapids CPUID bits (Cathy)
>> * cpus.c and softmmu/ cleanups (Claudio)
>> * TAP driver tweaks (Daniel, Havard)
>> * object-add bugfix and testcases (Eric A.)
>> * Fix Coverity MIN_CONST and MAX_CONST (Eric B.)
>> * SSE fixes (Joseph)
>> * "-msg guest-name" option (Mario)
>> * support for AMD nested live migration (myself)
>> * Small i386 TCG fixes (myself)
>> * improved error reporting for Xen (myself)
>> * fix "-cpu host -overcommit cpu-pm=on" (myself)
>> * Add accel/Kconfig (Philippe)
>> * KVM API cleanup (Philippe)
>> * iscsi sense handling fixes (Yongji)
>> * Misc bugfixes
> 
> Hi; various build or test failures (5 total):
> 
> 1) OSX:
> 
> /Users/pm215/src/qemu-for-merges/ui/cocoa.m:1478:9: error: implicit
> declaration of function 'cpu_throttle_set' is invalid in C99 [-
> Werror,-Wimplicit-function-declaration]
>         cpu_throttle_set(throttle_pct);
>         ^
> 
> 2) aarch64 and aarch32 linux:
> 
> /home/pm/qemu/target/arm/kvm.c: In function ‘kvm_arch_init’:
> /home/pm/qemu/target/arm/kvm.c:248:29: error: passing argument 1 of
> ‘kvm_check_extension’ makes integer from pointer without a cast
>  [-Werror=int-conversion]
>   248 |     if (kvm_check_extension(s, KVM_CAP_ARM_NISV_TO_USER)) {
>       |                             ^
>       |                             |
>       |                             KVMState * {aka struct KVMState *}
> In file included from /home/pm/qemu/target/arm/kvm.c:23:
> /home/pm/qemu/include/sysemu/kvm.h:439:38: note: expected ‘unsigned
> int’ but argument is of type ‘KVMState *’ {aka ‘struct KVMState
>  *’}
>   439 | int kvm_check_extension(unsigned int extension);
>       |                         ~~~~~~~~~~~~~^~~~~~~~~
> /home/pm/qemu/target/arm/kvm.c:248:9: error: too many arguments to
> function ‘kvm_check_extension’
>   248 |     if (kvm_check_extension(s, KVM_CAP_ARM_NISV_TO_USER)) {
>       |         ^~~~~~~~~~~~~~~~~~~
> In file included from /home/pm/qemu/target/arm/kvm.c:23:
> /home/pm/qemu/include/sysemu/kvm.h:439:5: note: declared here
>   439 | int kvm_check_extension(unsigned int extension);
>       |     ^~~~~~~~~~~~~~~~~~~
> /home/pm/qemu/target/arm/kvm.c:253:59: error: passing argument 1 of
> ‘kvm_check_extension’ makes integer from pointer without a cast
>  [-Werror=int-conversion]
>   253 |             cap_has_inject_ext_dabt = kvm_check_extension(s,
>       |                                                           ^
>       |                                                           |
>       |
> KVMState * {aka struct KVMState *}
> In file included from /home/pm/qemu/target/arm/kvm.c:23:
> /home/pm/qemu/include/sysemu/kvm.h:439:38: note: expected ‘unsigned
> int’ but argument is of type ‘KVMState *’ {aka ‘struct KVMState
>  *’}
>   439 | int kvm_check_extension(unsigned int extension);
>       |                         ~~~~~~~~~~~~~^~~~~~~~~
> /home/pm/qemu/target/arm/kvm.c:253:39: error: too many arguments to
> function ‘kvm_check_extension’
>   253 |             cap_has_inject_ext_dabt = kvm_check_extension(s,
>       |                                       ^~~~~~~~~~~~~~~~~~~
> In file included from /home/pm/qemu/target/arm/kvm.c:23:
> /home/pm/qemu/include/sysemu/kvm.h:439:5: note: declared here
>   439 | int kvm_check_extension(unsigned int extension);
>       |     ^~~~~~~~~~~~~~~~~~~
> 
> 3) PPC64 had a failure on iotest 030 (though I think this may
> be an intermittent in master):
> 
>   TEST    iotest-qcow2: 030 [fail]
> QEMU          --
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64"
> -nodefaults -display none -accel qtest
> QEMU_IMG      -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
> QEMU_IO       --
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
> writeback --aio threads -f qcow2
> QEMU_NBD      -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
> IMGFMT        -- qcow2 (compat=1.1)
> IMGPROTO      -- file
> PLATFORM      -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
> TEST_DIR      -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
> SOCK_DIR      -- /tmp/tmp.icAW30swbG
> SOCKET_SCM_HELPER --
> /home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper
> 
> --- /home/pm215/qemu/tests/qemu-iotests/030.out 2019-07-15
> 15:12:04.941863802 +0000
> +++ /home/pm215/qemu/build/all/tests/qemu-iotests/030.out.bad
> 2020-07-07 18:01:06.975652394 +0000
> @@ -1,5 +1,17 @@
> -...........................
> +.............F.............
> +======================================================================
> +FAIL: test_stream_parallel (__main__.TestParallelOps)
> +----------------------------------------------------------------------
> +Traceback (most recent call last):
> +  File "030", line 246, in test_stream_parallel
> +    self.assert_qmp(result, 'return', {})
> +  File "/home/pm215/qemu/tests/qemu-iotests/iotests.py", line 848, in
> assert_qmp
> +    result = self.dictpath(d, path)
> +  File "/home/pm215/qemu/tests/qemu-iotests/iotests.py", line 822, in dictpath
> +    self.fail(f'failed path traversal for "{path}" in "{d}"')
> +AssertionError: failed path traversal for "return" in "{'error':
> {'class': 'DeviceNotActive', 'desc': "Block job 'stream-node8' not
> found"}}"
> +
>  ----------------------------------------------------------------------
>  Ran 27 tests
> 
> -OK
> +FAILED (failures=1)
> 
> 4) s390x failed on iotest 267:
> 
>   TEST    iotest-qcow2: 267 [fail]
> QEMU          --
> "/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../s390x-softmmu/qemu-system-s390x"
> -nodefaults -display none -accel qtest
> QEMU_IMG      -- "/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../qemu-img"
> QEMU_IO       --
> "/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../qemu-io"
> --cache writeback --aio threads -f qcow2
> QEMU_NBD      -- "/home/ubuntu/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
> IMGFMT        -- qcow2 (compat=1.1)
> IMGPROTO      -- file
> PLATFORM      -- Linux/s390x qemu01 4.15.0-72-generic
> TEST_DIR      -- /home/ubuntu/qemu/build/all/tests/qemu-iotests/scratch
> SOCK_DIR      -- /tmp/tmp.REW8Sy64t9
> SOCKET_SCM_HELPER --
> /home/ubuntu/qemu/build/all/tests/qemu-iotests/socket_scm_helper
> 
> --- /home/ubuntu/qemu/tests/qemu-iotests/267.out        2019-12-19
> 08:32:33.382319918 -0500
> +++ /home/ubuntu/qemu/build/all/tests/qemu-iotests/267.out.bad
> 2020-07-07 14:15:44.173300793 -0400
> @@ -137,6 +137,9 @@
>  ID        TAG                 VM SIZE                DATE       VM CLOCK
>  --        snap0                  SIZE yyyy-mm-dd hh:mm:ss   00:00:00.000
>  (qemu) loadvm snap0
> +Unexpected storage key flag data: 0
> +error while loading state for instance 0x0 of device 's390-skeys'
> +Error: Error -22 while loading VM state
>  (qemu) quit
> 
>  Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728
> backing_file=TEST_DIR/t.IMGFMT.base
> 
> 5) And a link error on x86-64 Linux:
> 
>   LINK    x86_64-softmmu/qemu-system-x86_64
> softmmu/cpus.o: In function `tcg_get_icount_limit':
> /home/petmay01/linaro/qemu-for-merges/softmmu/cpus.c:563: undefined
> reference to `icount_round'
> softmmu/cpus.o: In function `process_icount_data':
> /home/petmay01/linaro/qemu-for-merges/softmmu/cpus.c:618: undefined
> reference to `icount_update'
> target/i386/helper.o: In function `x86_cpu_dump_state':
> /home/petmay01/linaro/qemu-for-merges/target/i386/helper.c:547:
> undefined reference to `update_mxcsr_from_sse_status'
> target/i386/gdbstub.o: In function `x86_cpu_gdb_read_register':
> /home/petmay01/linaro/qemu-for-merges/target/i386/gdbstub.c:187:
> undefined reference to `update_mxcsr_from_sse_status'
> collect2: error: ld returned 1 exit status
> Makefile:205: recipe for target 'qemu-system-x86_64' failed
> 
> thanks
> -- PMM
> 

Hi Peter, Paolo,

I am trying to understand this failure (5), which is triggered by one of my patches,
containing clearly an issue that does not trigger here, although it is apparent to me (I did not provide all necessary stubs).

Could you provide the ./configure command line, config.status, compiler version?

Clearly it is something I have to fix, but would help to be able not to be "blind".

The patch introducing icount_round and icount_update is

"cpu-timers, icount: new modules",

and the issue stems I think from the fact that cpus.c references

icount_round() and icount_update() in code that is conditional on icount_enabled().

If the code is configured with --disable-tcg, in stubs/icount.c , icount_enabled is defined as always returning 0,
and my compiler takes that clue and elides all static functions conditional on that return value,

so I don't get any tcg_get_icount_limit() compiled in, and no errors.

I think that having comparable configure command line and compiler version/flags would help me pin down any related issue.

Thanks,

Claudio







Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Paolo Bonzini 3 years, 8 months ago
On 08/07/20 18:13, Claudio Fontana wrote:
> so I don't get any tcg_get_icount_limit() compiled in, and no
> errors.
> 
> I think that having comparable configure command line and compiler
> version/flags would help me pin down any related issue.

Are you using link-time optimization by chance?

Paolo


Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Claudio Fontana 3 years, 8 months ago
On 7/8/20 6:16 PM, Paolo Bonzini wrote:
> On 08/07/20 18:13, Claudio Fontana wrote:
>> so I don't get any tcg_get_icount_limit() compiled in, and no
>> errors.
>>
>> I think that having comparable configure command line and compiler
>> version/flags would help me pin down any related issue.
> 
> Are you using link-time optimization by chance?
> 
> Paolo
> 

Yes unfortunately, nothing I have willingly enabled, but I found traces of LTO in C++.

C++ is used to link the final qemu-system binary and on my system c++ has LTO:

c++ -v
Using built-in specs.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
OFFLOAD_TARGET_NAMES=hsa:nvptx-none
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none, --without-cuda-driver --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp --disable-libvtv --disable-libcc1 --disable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
gcc version 7.5.0 (SUSE Linux) 


I checked cc but did not think to check c++ . I will find a way to disable this thing and will correct the patch accordingly.

Thanks a lot, and sorry for the inconvenience!

Claudio



Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Paolo Bonzini 3 years, 8 months ago
On 08/07/20 18:45, Claudio Fontana wrote:
> C++ is used to link the final qemu-system binary and on my system c++ has LTO:
> 
> c++ -v
> Using built-in specs.
> COLLECT_GCC=c++
> COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
> OFFLOAD_TARGET_NAMES=hsa:nvptx-none
> Target: x86_64-suse-linux
> Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
> --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
> --enable-languages=c,c++,objc,fortran,obj-c++,ada,go
> --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none,
> --without-cuda-driver --enable-checking=release --disable-werror
> --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp
> --disable-libvtv --disable-libcc1 --disable-plugin
> --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
> Thread model: posix
> gcc version 7.5.0 (SUSE Linux) 
> 
> 
> I checked cc but did not think to check c++ . I will find a way to disable this thing and will correct the patch accordingly.

Having LTO support is not the same thing as having it enabled.  Are you
compiling and linking with "-flto"?

Paolo


Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Claudio Fontana 3 years, 8 months ago
On 7/8/20 6:55 PM, Paolo Bonzini wrote:
> On 08/07/20 18:45, Claudio Fontana wrote:
>> C++ is used to link the final qemu-system binary and on my system c++ has LTO:
>>
>> c++ -v
>> Using built-in specs.
>> COLLECT_GCC=c++
>> COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
>> OFFLOAD_TARGET_NAMES=hsa:nvptx-none
>> Target: x86_64-suse-linux
>> Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
>> --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
>> --enable-languages=c,c++,objc,fortran,obj-c++,ada,go
>> --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none,
>> --without-cuda-driver --enable-checking=release --disable-werror
>> --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp
>> --disable-libvtv --disable-libcc1 --disable-plugin
>> --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
>> Thread model: posix
>> gcc version 7.5.0 (SUSE Linux) 
>>
>>
>> I checked cc but did not think to check c++ . I will find a way to disable this thing and will correct the patch accordingly.
> 
> Having LTO support is not the same thing as having it enabled.  Are you
> compiling and linking with "-flto"?
> 
> Paolo
> 

no, the compilation and link stage do not show this explicit parameter. I am puzzled.

C




Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Claudio Fontana 3 years, 8 months ago
On 7/8/20 7:03 PM, Claudio Fontana wrote:
> On 7/8/20 6:55 PM, Paolo Bonzini wrote:
>> On 08/07/20 18:45, Claudio Fontana wrote:
>>> C++ is used to link the final qemu-system binary and on my system c++ has LTO:
>>>
>>> c++ -v
>>> Using built-in specs.
>>> COLLECT_GCC=c++
>>> COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
>>> OFFLOAD_TARGET_NAMES=hsa:nvptx-none
>>> Target: x86_64-suse-linux
>>> Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
>>> --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
>>> --enable-languages=c,c++,objc,fortran,obj-c++,ada,go
>>> --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none,
>>> --without-cuda-driver --enable-checking=release --disable-werror
>>> --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp
>>> --disable-libvtv --disable-libcc1 --disable-plugin
>>> --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
>>> Thread model: posix
>>> gcc version 7.5.0 (SUSE Linux) 
>>>
>>>
>>> I checked cc but did not think to check c++ . I will find a way to disable this thing and will correct the patch accordingly.
>>
>> Having LTO support is not the same thing as having it enabled.  Are you
>> compiling and linking with "-flto"?
>>
>> Paolo
>>
> 
> no, the compilation and link stage do not show this explicit parameter. I am puzzled.
> 
> C
> 

This is really weird, as I cannot reproduce it.

What I did notice is that all the code that directly or indirectly uses the functions is under an

if (0) (
)

since tcg_enabled is the constant 0.

By "indirectly" I mean that the static void qemu_tcg_cpu_thread_fn() function that calls those is referenced only by static void qemu_tcg_init_vcpu(), which is called only under an if (0),
ie if (tcg_enabled()).

For me this builds with --disable-tcg and with --enable-tcg .

Maybe the issue is actually the name clash of the stub and the module?

I admit I am not familiar with the rationale of why the stubs are all built regardless, could we have that icount.o from stubs/ is replacing softmmu/icount.o to cause this?

Thanks,

Claudio




Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Claudio Fontana 3 years, 8 months ago
On 7/8/20 8:25 PM, Claudio Fontana wrote:
> On 7/8/20 7:03 PM, Claudio Fontana wrote:
>> On 7/8/20 6:55 PM, Paolo Bonzini wrote:
>>> On 08/07/20 18:45, Claudio Fontana wrote:
>>>> C++ is used to link the final qemu-system binary and on my system c++ has LTO:
>>>>
>>>> c++ -v
>>>> Using built-in specs.
>>>> COLLECT_GCC=c++
>>>> COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
>>>> OFFLOAD_TARGET_NAMES=hsa:nvptx-none
>>>> Target: x86_64-suse-linux
>>>> Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
>>>> --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
>>>> --enable-languages=c,c++,objc,fortran,obj-c++,ada,go
>>>> --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none,
>>>> --without-cuda-driver --enable-checking=release --disable-werror
>>>> --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp
>>>> --disable-libvtv --disable-libcc1 --disable-plugin
>>>> --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
>>>> Thread model: posix
>>>> gcc version 7.5.0 (SUSE Linux) 
>>>>
>>>>
>>>> I checked cc but did not think to check c++ . I will find a way to disable this thing and will correct the patch accordingly.
>>>
>>> Having LTO support is not the same thing as having it enabled.  Are you
>>> compiling and linking with "-flto"?
>>>
>>> Paolo
>>>
>>
>> no, the compilation and link stage do not show this explicit parameter. I am puzzled.
>>
>> C
>>
> 
> This is really weird, as I cannot reproduce it.
> 
> What I did notice is that all the code that directly or indirectly uses the functions is under an
> 
> if (0) (
> )
> 
> since tcg_enabled is the constant 0.
> 
> By "indirectly" I mean that the static void qemu_tcg_cpu_thread_fn() function that calls those is referenced only by static void qemu_tcg_init_vcpu(), which is called only under an if (0),
> ie if (tcg_enabled()).
> 
> For me this builds with --disable-tcg and with --enable-tcg .
> 
> Maybe the issue is actually the name clash of the stub and the module?
> 
> I admit I am not familiar with the rationale of why the stubs are all built regardless, could we have that icount.o from stubs/ is replacing softmmu/icount.o to cause this?
> 
> Thanks,
> 
> Claudio
> 
> 

So I guess if you could Peter, are you building there with --disable-tcg or with --enable-tcg  when you got that error?

Ciao,

Claudio


Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Paolo Bonzini 3 years, 8 months ago
Il mer 8 lug 2020, 20:25 Claudio Fontana <cfontana@suse.de> ha scritto:

> What I did notice is that all the code that directly or indirectly uses
> the functions is under an
>
> if (0) (
> )
>
> since tcg_enabled is the constant 0.
>
> By "indirectly" I mean that the static void qemu_tcg_cpu_thread_fn()
> function that calls those is referenced only by static void
> qemu_tcg_init_vcpu(), which is called only under an if (0),
> ie if (tcg_enabled()).
>

Maybe my compiler is older.

I admit I am not familiar with the rationale of why the stubs are all built
> regardless, could we have that icount.o from stubs/ is replacing
> softmmu/icount.o to cause this?
>

No, stubs are in a static library and therefore are always overridden by
symbols in the executable's .o files.

Paolo


> Thanks,
>
> Claudio
>
>
>
>
Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Claudio Fontana 3 years, 8 months ago
On 7/8/20 8:41 PM, Paolo Bonzini wrote:
> 
> 
> Il mer 8 lug 2020, 20:25 Claudio Fontana <cfontana@suse.de <mailto:cfontana@suse.de>> ha scritto:
> 
>     What I did notice is that all the code that directly or indirectly uses the functions is under an
> 
>     if (0) (
>     )
> 
>     since tcg_enabled is the constant 0.
> 
>     By "indirectly" I mean that the static void qemu_tcg_cpu_thread_fn() function that calls those is referenced only by static void qemu_tcg_init_vcpu(), which is called only under an if (0),
>     ie if (tcg_enabled()).
> 
> 
> Maybe my compiler is older.
> 
>     I admit I am not familiar with the rationale of why the stubs are all built regardless, could we have that icount.o from stubs/ is replacing softmmu/icount.o to cause this?
> 
> 
> No, stubs are in a static library and therefore are always overridden by symbols in the executable's .o files.
> 
> Paolo
> 
> 

Hi Paolo,

which compiler, linker, binutils etc are you using?

I am using

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper
OFFLOAD_TARGET_NAMES=hsa:nvptx-none
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none, --without-cuda-driver --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp --disable-libvtv --disable-libcc1 --disable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
gcc version 7.5.0 (SUSE Linux) 


$ ld -v
GNU ld (GNU Binutils; openSUSE Leap 15.1) 2.32.0.20190909-lp151.3.3

anything else that we could use to find the real problem?

Of course I can try a blind fix, where I suggest to explicitly provide the stubs,
or you can apply the workaround you already suggested if you want,
but currently I do not have any way to ensure that what I build is ok,
since apparently the local build or any of the CI (travis, cirrus) is not sufficient to capture this.

So getting to the bottom of the issue would be important going forward I think so I can ensure better input from my side.

In general, the way current code is relying on the compiler to (maybe) compile out code that calls undefined symbols,
using #define tcg_enabled 0 , and then having the undefined function calls in the code, seems less preferable than solving the problem explicitly
with proper refactoring or with explicit stubs until proper refactoring is complete..

Thanks,

Claudio

 

Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by Paolo Bonzini 3 years, 8 months ago
On 09/07/20 08:59, Claudio Fontana wrote:
> anything else that we could use to find the real problem?

I'm using

$ gcc -v
...
gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)
$ ld -v
GNU ld version 2.30-68.el8

> Of course I can try a blind fix, where I suggest to explicitly provide the stubs,
> or you can apply the workaround you already suggested if you want,
> but currently I do not have any way to ensure that what I build is ok,
> since apparently the local build or any of the CI (travis, cirrus) is not sufficient to capture this.

No problem, I can test it myself on my machine when applying the patch.

Paolo


Re: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Posted by no-reply@patchew.org 3 years, 8 months ago
Patchew URL: https://patchew.org/QEMU/20200706164155.24696-1-pbonzini@redhat.com/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Subject: [PULL 00/53] Misc patches for QEMU 5.1 soft freeze
Type: series
Message-id: 20200706164155.24696-1-pbonzini@redhat.com

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 - [tag update]      patchew/20200630133912.9428-1-f4bug@amsat.org -> patchew/20200630133912.9428-1-f4bug@amsat.org
 - [tag update]      patchew/20200704144943.18292-1-f4bug@amsat.org -> patchew/20200704144943.18292-1-f4bug@amsat.org
 * [new tag]         patchew/20200706164155.24696-1-pbonzini@redhat.com -> patchew/20200706164155.24696-1-pbonzini@redhat.com
Switched to a new branch 'test'
7f86007 scripts: improve message when TAP based tests fail
7248fcd target/i386: Enable TSX Suspend Load Address Tracking feature
866c9c9 target/i386: Add SERIALIZE cpu feature
167c040 target/i386/kvm: Simplify kvm_get_supported_[feature]_msrs()
c84e280 target/i386/kvm: Simplify kvm_get_mce_cap_supported()
4307708 target/i386/kvm: Simplify get_para_features()
35ba753 accel/kvm: Simplify kvm_check_extension_list()
658563b accel/kvm: Simplify kvm_check_extension()
7c2d8c7 accel/kvm: Let kvm_check_extension use global KVM state
4f09921 softmmu/vl: Remove the check for colons in -accel parameters
aae19bd cpu-timers, icount: new modules
d4c3bd1 cpu-throttle: new module, extracted from cpus.c
3f0a1ca softmmu: move softmmu only files from root
0f5f394 pc: fix leak in pc_system_flash_cleanup_unused
d14fbbb cpus: Move CPU code from exec.c to cpus-common.c
6b5e15e target/i386: Correct the warning message of Intel PT
06d34e2 checkpatch: Change occurences of 'kernel' to 'qemu' in user messages
a797e70 iscsi: return -EIO when sense fields are meaningless
483b353 iscsi: handle check condition status in retry loop
45968d9 target/i386: sev: fail query-sev-capabilities if QEMU cannot use SEV
3991cda target/i386: sev: provide proper error reporting for query-sev-capabilities
56fee26 KVM: x86: believe what KVM says about WAITPKG
c2cad97 target/i386: implement undocumented "smsw r32" behavior
0820d30 target/i386: remove gen_io_end
a808c08e Makefile: simplify MINIKCONF rules
492710d accel/tcg: Add stub for probe_access()
9968331 accel/Kconfig: Add the TCG selector
15af609 accel/Kconfig: Extract accel selectors into their own config
f2c9a72 Makefile: Write MINIKCONF variables as one entry per line
e34b354 Makefile: Remove dangerous EOL trailing backslash
e8ca3d5 MAINTAINERS: Cover the HAX accelerator stub
5cf8ecc MAINTAINERS: Add an 'overall' entry for accelerators
828b5c8 MAINTAINERS: Fix KVM path expansion glob
2b33834 MAINTAINERS: Add Cameron as HVF co-maintainer
f83bafe i386: hvf: Clean up synchronize functions
5546118 i386: hvf: Don't duplicate register reset
0100693 i386: hvf: Move Guest LMA reset to macvm_set_cr0()
50ad1f9 i386: hvf: Make long mode enter and exit clearer
7391fcc i386: hvf: Add hvf_cpu_synchronize_pre_loadvm()
d9b7a7b i386: hvf: Move synchronize functions to sysemu
76f44ff i386: hvf: Set env->eip in macvm_set_rip()
4a75f22 coverity: provide Coverity-friendly MIN_CONST and MAX_CONST
8928cb9 KVM: add support for AMD nested live migration
89f8144 target/i386: fix IEEE SSE floating-point exception raising
9140f0b target/i386: set SSE FTZ in correct floating-point state
d38f9f1 hw/core/null-machine: Do not initialize unused chardev backends
c9a48de tests/qmp-cmd-test: Add qmp/object-add-failure-modes
704157d tests/qmp-cmd-test: Add qmp/object-add-duplicate-id
ddc8b9c qom: Introduce object_property_try_add_child()
82cfec7 util/qemu-error: prepend guest name to error message to identify affected VM owner
af648d9 tests: Inject test name also when the test fails
033c1b7 tcg/svm: use host cr4 during NPT page table walk

=== OUTPUT BEGIN ===
1/52 Checking commit 033c1b717196 (tcg/svm: use host cr4 during NPT page table walk)
2/52 Checking commit af648d9d91aa (tests: Inject test name also when the test fails)
3/52 Checking commit 82cfec7d2eab (util/qemu-error: prepend guest name to error message to identify affected VM owner)
4/52 Checking commit ddc8b9c5389f (qom: Introduce object_property_try_add_child())
5/52 Checking commit 704157dd905c (tests/qmp-cmd-test: Add qmp/object-add-duplicate-id)
6/52 Checking commit c9a48de829c1 (tests/qmp-cmd-test: Add qmp/object-add-failure-modes)
7/52 Checking commit d38f9f107573 (hw/core/null-machine: Do not initialize unused chardev backends)
8/52 Checking commit 9140f0b9bb43 (target/i386: set SSE FTZ in correct floating-point state)
9/52 Checking commit 89f8144f4e84 (target/i386: fix IEEE SSE floating-point exception raising)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#312: 
new file mode 100644

ERROR: Use of volatile is usually wrong, please add a comment
#323: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:7:
+volatile float f_res;

ERROR: Use of volatile is usually wrong, please add a comment
#324: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:8:
+volatile double d_res;

ERROR: Use of volatile is usually wrong, please add a comment
#326: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:10:
+volatile float f_snan = __builtin_nansf("");

ERROR: Use of volatile is usually wrong, please add a comment
#327: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:11:
+volatile float f_half = 0.5f;

ERROR: Use of volatile is usually wrong, please add a comment
#328: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:12:
+volatile float f_third = 1.0f / 3.0f;

ERROR: Use of volatile is usually wrong, please add a comment
#329: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:13:
+volatile float f_nan = __builtin_nanl("");

ERROR: Use of volatile is usually wrong, please add a comment
#330: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:14:
+volatile float f_inf = __builtin_inff();

ERROR: Use of volatile is usually wrong, please add a comment
#331: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:15:
+volatile float f_ninf = -__builtin_inff();

ERROR: Use of volatile is usually wrong, please add a comment
#332: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:16:
+volatile float f_one = 1.0f;

ERROR: Use of volatile is usually wrong, please add a comment
#333: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:17:
+volatile float f_two = 2.0f;

ERROR: Use of volatile is usually wrong, please add a comment
#334: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:18:
+volatile float f_zero = 0.0f;

ERROR: Use of volatile is usually wrong, please add a comment
#335: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:19:
+volatile float f_nzero = -0.0f;

ERROR: Use of volatile is usually wrong, please add a comment
#336: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:20:
+volatile float f_min = FLT_MIN;

ERROR: spaces required around that '-' (ctx:VxV)
#337: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:21:
+volatile float f_true_min = 0x1p-149f;
                                 ^

ERROR: Use of volatile is usually wrong, please add a comment
#337: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:21:
+volatile float f_true_min = 0x1p-149f;

ERROR: Use of volatile is usually wrong, please add a comment
#338: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:22:
+volatile float f_max = FLT_MAX;

ERROR: Use of volatile is usually wrong, please add a comment
#339: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:23:
+volatile float f_nmax = -FLT_MAX;

ERROR: Use of volatile is usually wrong, please add a comment
#341: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:25:
+volatile double d_snan = __builtin_nans("");

ERROR: Use of volatile is usually wrong, please add a comment
#342: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:26:
+volatile double d_half = 0.5;

ERROR: Use of volatile is usually wrong, please add a comment
#343: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:27:
+volatile double d_third = 1.0 / 3.0;

ERROR: Use of volatile is usually wrong, please add a comment
#344: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:28:
+volatile double d_nan = __builtin_nan("");

ERROR: Use of volatile is usually wrong, please add a comment
#345: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:29:
+volatile double d_inf = __builtin_inf();

ERROR: Use of volatile is usually wrong, please add a comment
#346: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:30:
+volatile double d_ninf = -__builtin_inf();

ERROR: Use of volatile is usually wrong, please add a comment
#347: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:31:
+volatile double d_one = 1.0;

ERROR: Use of volatile is usually wrong, please add a comment
#348: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:32:
+volatile double d_two = 2.0;

ERROR: Use of volatile is usually wrong, please add a comment
#349: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:33:
+volatile double d_zero = 0.0;

ERROR: Use of volatile is usually wrong, please add a comment
#350: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:34:
+volatile double d_nzero = -0.0;

ERROR: Use of volatile is usually wrong, please add a comment
#351: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:35:
+volatile double d_min = DBL_MIN;

ERROR: spaces required around that '-' (ctx:VxV)
#352: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:36:
+volatile double d_true_min = 0x1p-1074;
                                  ^

ERROR: Use of volatile is usually wrong, please add a comment
#352: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:36:
+volatile double d_true_min = 0x1p-1074;

ERROR: Use of volatile is usually wrong, please add a comment
#353: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:37:
+volatile double d_max = DBL_MAX;

ERROR: Use of volatile is usually wrong, please add a comment
#354: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:38:
+volatile double d_nmax = -DBL_MAX;

ERROR: Use of volatile is usually wrong, please add a comment
#356: FILE: tests/tcg/i386/test-i386-sse-exceptions.c:40:
+volatile int32_t i32_max = INT32_MAX;

total: 33 errors, 1 warnings, 1033 lines checked

Patch 9/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

10/52 Checking commit 8928cb91c066 (KVM: add support for AMD nested live migration)
11/52 Checking commit 4a75f22d725a (coverity: provide Coverity-friendly MIN_CONST and MAX_CONST)
WARNING: architecture specific defines should be avoided
#59: FILE: include/qemu/osdep.h:269:
+#ifdef __COVERITY__

total: 0 errors, 1 warnings, 43 lines checked

Patch 11/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
12/52 Checking commit 76f44ffc910f (i386: hvf: Set env->eip in macvm_set_rip())
13/52 Checking commit d9b7a7b91271 (i386: hvf: Move synchronize functions to sysemu)
14/52 Checking commit 7391fccb4503 (i386: hvf: Add hvf_cpu_synchronize_pre_loadvm())
15/52 Checking commit 50ad1f938adf (i386: hvf: Make long mode enter and exit clearer)
16/52 Checking commit 0100693ac7a2 (i386: hvf: Move Guest LMA reset to macvm_set_cr0())
17/52 Checking commit 554611882eb3 (i386: hvf: Don't duplicate register reset)
18/52 Checking commit f83bafef5a99 (i386: hvf: Clean up synchronize functions)
19/52 Checking commit 2b3383479e0d (MAINTAINERS: Add Cameron as HVF co-maintainer)
20/52 Checking commit 828b5c8302e9 (MAINTAINERS: Fix KVM path expansion glob)
21/52 Checking commit 5cf8ecc8f350 (MAINTAINERS: Add an 'overall' entry for accelerators)
22/52 Checking commit e8ca3d539b13 (MAINTAINERS: Cover the HAX accelerator stub)
23/52 Checking commit e34b3545f9a6 (Makefile: Remove dangerous EOL trailing backslash)
24/52 Checking commit f2c9a722a19c (Makefile: Write MINIKCONF variables as one entry per line)
25/52 Checking commit 15af6093c279 (accel/Kconfig: Extract accel selectors into their own config)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#54: 
new file mode 100644

total: 0 errors, 1 warnings, 32 lines checked

Patch 25/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
26/52 Checking commit 9968331c3247 (accel/Kconfig: Add the TCG selector)
27/52 Checking commit 492710dfc756 (accel/tcg: Add stub for probe_access())
28/52 Checking commit a808c08ef0d8 (Makefile: simplify MINIKCONF rules)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#16: 
new file mode 100644

total: 0 errors, 1 warnings, 28 lines checked

Patch 28/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
29/52 Checking commit 0820d3077474 (target/i386: remove gen_io_end)
30/52 Checking commit c2cad9776a49 (target/i386: implement undocumented "smsw r32" behavior)
31/52 Checking commit 56fee26334f0 (KVM: x86: believe what KVM says about WAITPKG)
32/52 Checking commit 3991cda076dd (target/i386: sev: provide proper error reporting for query-sev-capabilities)
33/52 Checking commit 45968d9ca1b9 (target/i386: sev: fail query-sev-capabilities if QEMU cannot use SEV)
34/52 Checking commit 483b353452de (iscsi: handle check condition status in retry loop)
35/52 Checking commit a797e707f8ab (iscsi: return -EIO when sense fields are meaningless)
36/52 Checking commit 06d34e2e7bbb (checkpatch: Change occurences of 'kernel' to 'qemu' in user messages)
37/52 Checking commit 6b5e15e3daec (target/i386: Correct the warning message of Intel PT)
38/52 Checking commit d14fbbb355b8 (cpus: Move CPU code from exec.c to cpus-common.c)
39/52 Checking commit 0f5f394e08c5 (pc: fix leak in pc_system_flash_cleanup_unused)
40/52 Checking commit 3f0a1caeda2a (softmmu: move softmmu only files from root)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#123: 
rename from arch_init.c

total: 0 errors, 1 warnings, 83 lines checked

Patch 40/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
41/52 Checking commit d4c3bd176306 (cpu-throttle: new module, extracted from cpus.c)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#106: 
new file mode 100644

total: 0 errors, 1 warnings, 396 lines checked

Patch 41/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
42/52 Checking commit aae19bd9ead0 (cpu-timers, icount: new modules)
WARNING: line over 80 characters
#110: FILE: accel/tcg/cpu-exec.c:107:
+            qemu_printf("Warning: The guest is now late by %.1f to %.1f seconds\n",

WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#424: 
new file mode 100644

total: 0 errors, 2 warnings, 2430 lines checked

Patch 42/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
43/52 Checking commit 4f099211e22d (softmmu/vl: Remove the check for colons in -accel parameters)
44/52 Checking commit 7c2d8c7d13ca (accel/kvm: Let kvm_check_extension use global KVM state)
45/52 Checking commit 658563be1173 (accel/kvm: Simplify kvm_check_extension())
ERROR: space prohibited after that open parenthesis '('
#138: FILE: accel/kvm/kvm-all.c:2125:
+        kvm_check_extension( KVM_CAP_MANUAL_DIRTY_LOG_PROTECT2);

total: 1 errors, 0 warnings, 757 lines checked

Patch 45/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

46/52 Checking commit 35ba7530aa2c (accel/kvm: Simplify kvm_check_extension_list())
47/52 Checking commit 43077084eb85 (target/i386/kvm: Simplify get_para_features())
48/52 Checking commit c84e280ac321 (target/i386/kvm: Simplify kvm_get_mce_cap_supported())
49/52 Checking commit 167c0409c6dc (target/i386/kvm: Simplify kvm_get_supported_[feature]_msrs())
50/52 Checking commit 866c9c9b3cc2 (target/i386: Add SERIALIZE cpu feature)
51/52 Checking commit 7248fcd37ec6 (target/i386: Enable TSX Suspend Load Address Tracking feature)
WARNING: Block comments use a leading /* on a separate line
#32: FILE: target/i386/cpu.c:990:
+            "tsx-ldtrk", NULL, NULL /* pconfig */, NULL,

total: 0 errors, 1 warnings, 16 lines checked

Patch 51/52 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
52/52 Checking commit 7f86007e8aa6 (scripts: improve message when TAP based tests fail)
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20200706164155.24696-1-pbonzini@redhat.com/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com