qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 0c49c9: target/i386: enumerate bit 56 of MSR_


From: Alex Bennée
Subject: [Qemu-commits] [qemu/qemu] 0c49c9: target/i386: enumerate bit 56 of MSR_IA32_VMX_BASIC
Date: Mon, 25 Sep 2023 08:35:31 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 0c49c9180c5498bcd55edc1bfb12b0466e08575c
      
https://github.com/qemu/qemu/commit/0c49c9180c5498bcd55edc1bfb12b0466e08575c
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M scripts/kvm/vmxcap
    M target/i386/cpu.c
    M target/i386/cpu.h

  Log Message:
  -----------
  target/i386: enumerate bit 56 of MSR_IA32_VMX_BASIC

On parts that enumerate IA32_VMX_BASIC MSR bit as 1, any exception vector
can be delivered with or without an error code if the other consistency
checks are satisfied.

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


  Commit: 3a2a1f97ea349745094e789e6b0768dbd92d0dcd
      
https://github.com/qemu/qemu/commit/3a2a1f97ea349745094e789e6b0768dbd92d0dcd
  Author: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/i386/cpu.c

  Log Message:
  -----------
  target/i386: Export GDS_NO bit to guests

Gather Data Sampling (GDS) is a side-channel attack using Gather
instructions. Some Intel processors will set ARCH_CAP_GDS_NO bit in
MSR IA32_ARCH_CAPABILITIES to report that they are not vulnerable to
GDS.

Make this bit available to guests.

Closes: 
https://lore.kernel.org/qemu-devel/CAMGffEmG6TNq0n3+4OJAgXc8J0OevY60KHZekXCBs3LoK9vehA@mail.gmail.com/
Reported-by: Jack Wang <jinpu.wang@ionos.com>
Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Tested-by: Jack Wang <jinpu.wang@ionos.com>
Tested-by: Daniel Sneddon <daniel.sneddon@linux.intel.com>
Message-ID: 
<fde42d81ce454477ca8e27d5429a190b7366fe86.1692074650.git.pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: e8eed838ec93314c164bf3416d80c9c893a2e8ee
      
https://github.com/qemu/qemu/commit/e8eed838ec93314c164bf3416d80c9c893a2e8ee
  Author: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M include/qemu/timer.h

  Log Message:
  -----------
  qemu/timer: Add host ticks function for RISC-V

Signed-off-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Message-ID: <20230911063223.742-1-zhiwei_liu@linux.alibaba.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 1321d84457a36cae0f59d2fcd5aff3af50a93b7d
      
https://github.com/qemu/qemu/commit/1321d84457a36cae0f59d2fcd5aff3af50a93b7d
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/m68k/m68k-semi.c

  Log Message:
  -----------
  target/m68k: Add URL to semihosting spec

The spec for m68k semihosting is documented in the libgloss
sources. Add a comment with the URL for it, as we already
have for nios2 semihosting.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230801154451.3505492-1-peter.maydell@linaro.org


  Commit: e8d684508efa5c438c89a351b601108a37d08698
      
https://github.com/qemu/qemu/commit/e8d684508efa5c438c89a351b601108a37d08698
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M docs/devel/loads-stores.rst

  Log Message:
  -----------
  docs/devel/loads-stores: Fix git grep regexes

The loads-and-stores documentation includes git grep regexes to find
occurrences of the various functions.  Some of these regexes have
errors, typically failing to escape the '?', '(' and ')' when they
should be metacharacters (since these are POSIX basic REs). We also
weren't consistent about whether to have a ':' on the end of the
line introducing the list of regexes in each section.

Fix the errors.

The following shell rune will complain about any REs in the
file which don't have any matches in the codebase:
 for re in $(sed -ne 's/ - ``\(\\<.*\)``/\1/p' docs/devel/loads-stores.rst); do 
git grep -q "$re" || echo "no matches for re $re"; done

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230904161703.3996734-1-peter.maydell@linaro.org


  Commit: 32b214384e1e1472ddfa875196c57f6620172301
      
https://github.com/qemu/qemu/commit/32b214384e1e1472ddfa875196c57f6620172301
  Author: Fabian Vogt <fvogt@suse.de>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/arm/boot.c

  Log Message:
  -----------
  hw/arm/boot: Set SCR_EL3.FGTEn when booting kernel

Just like d7ef5e16a17c sets SCR_EL3.HXEn for FEAT_HCX, this commit
handles SCR_EL3.FGTEn for FEAT_FGT:

When we direct boot a kernel on a CPU which emulates EL3, we need to
set up the EL3 system registers as the Linux kernel documentation
specifies:
    https://www.kernel.org/doc/Documentation/arm64/booting.rst

> For CPUs with the Fine Grained Traps (FEAT_FGT) extension present:
> - If EL3 is present and the kernel is entered at EL2:
>   - SCR_EL3.FGTEn (bit 27) must be initialised to 0b1.

Cc: qemu-stable@nongnu.org
Signed-off-by: Fabian Vogt <fvogt@suse.de>
Message-id: 4831384.GXAFRqVoOG@linux-e202.suse.de
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: e2e40a7790c33ce540d1047e4f780ac4b5c7c6f2
      
https://github.com/qemu/qemu/commit/e2e40a7790c33ce540d1047e4f780ac4b5c7c6f2
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Correct SME feature names reported in cpuinfo

Some of the names we use for CPU features in linux-user's dummy
/proc/cpuinfo don't match the strings in the real kernel in
arch/arm64/kernel/cpuinfo.c. Specifically, the SME related
features have an underscore in the HWCAP_FOO define name,
but (like the SVE ones) they do not have an underscore in the
string in cpuinfo. Correct the errors.

Fixes: a55b9e7226708 ("linux-user: Emulate /proc/cpuinfo on aarch64 and arm")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 23d7f14da4cc8cdea31f580f87c90889dcfbe815
      
https://github.com/qemu/qemu/commit/23d7f14da4cc8cdea31f580f87c90889dcfbe815
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Add missing arm and arm64 hwcap values

Our lists of Arm 32 and 64 bit hwcap values have lagged behind
the Linux kernel. Update them to include all the bits defined
as of upstream Linux git commit a48fa7efaf1161c1 (in the middle
of the kernel 6.6 dev cycle).

For 64-bit, we don't yet implement any of the features reported via
these hwcap bits.  For 32-bit we do in fact already implement them
all; we'll add the code to set them in a subsequent commit.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 429b7e0107ddbb1a8103b1cf5c69f6db8795fdc3
      
https://github.com/qemu/qemu/commit/429b7e0107ddbb1a8103b1cf5c69f6db8795fdc3
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Report previously missing arm32 hwcaps

Add the code to report the arm32 hwcaps we were previously missing:
 ss, ssbs, fphp, asimdhp, asimddp, asimdfhm, asimdbf16, i8mm

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 4d9eb296431cfb1dfcaf31fe18d3b1917bc95e6a
      
https://github.com/qemu/qemu/commit/4d9eb296431cfb1dfcaf31fe18d3b1917bc95e6a
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/cpu.h

  Log Message:
  -----------
  target/arm: Update AArch64 ID register field definitions

Update our AArch64 ID register field definitions from the 2023-06
system register XML release:
 https://developer.arm.com/documentation/ddi0601/2023-06/

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 5f7b71fb99dc98831d9ad077fe1a58a4b119e952
      
https://github.com/qemu/qemu/commit/5f7b71fb99dc98831d9ad077fe1a58a4b119e952
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/helper.c
    M tests/tcg/aarch64/sysregs.c

  Log Message:
  -----------
  target/arm: Update user-mode ID reg mask values

For user-only mode we reveal a subset of the AArch64 ID registers
to the guest, to emulate the kernel's trap-and-emulate-ID-regs
handling. Update the feature bit masks to match upstream kernel
commit a48fa7efaf1161c1c.

None of these features are yet implemented by QEMU, so this
doesn't yet have a behavioural change, but implementation of
FEAT_MOPS and FEAT_HBC is imminent.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 3039b090f2058949edf6a7f1c8e793bc309fa6de
      
https://github.com/qemu/qemu/commit/3039b090f2058949edf6a7f1c8e793bc309fa6de
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M docs/system/arm/emulation.rst
    M linux-user/elfload.c
    M target/arm/cpu.h
    M target/arm/tcg/a64.decode
    M target/arm/tcg/cpu64.c
    M target/arm/tcg/translate-a64.c

  Log Message:
  -----------
  target/arm: Implement FEAT_HBC

FEAT_HBC (Hinted conditional branches) provides a new instruction
BC.cond, which behaves exactly like the existing B.cond except
that it provides a hint to the branch predictor about the
likely behaviour of the branch.

Since QEMU does not implement branch prediction, we can treat
this identically to B.cond.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 0b5ad31d2a997c9b80e7e24aafce7f079fc67bbd
      
https://github.com/qemu/qemu/commit/0b5ad31d2a997c9b80e7e24aafce7f079fc67bbd
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/tcg/mte_helper.c

  Log Message:
  -----------
  target/arm: Remove unused allocation_tag_mem() argument

The allocation_tag_mem() function takes an argument tag_size,
but it never uses it. Remove the argument. In mte_probe_int()
in particular this also lets us delete the code computing
the value we were passing in.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>


  Commit: 903dbefc2b6918c10d12d9aafa0168cee8d287c7
      
https://github.com/qemu/qemu/commit/903dbefc2b6918c10d12d9aafa0168cee8d287c7
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/tcg/hflags.c

  Log Message:
  -----------
  target/arm: Don't skip MTE checks for LDRT/STRT at EL0

The LDRT/STRT "unprivileged load/store" instructions behave like
normal ones if executed at EL0. We handle this correctly for
the load/store semantics, but get the MTE checking wrong.

We always look at s->mte_active[is_unpriv] to see whether we should
be doing MTE checks, but in hflags.c when we set the TB flags that
will be used to fill the mte_active[] array we only set the
MTE0_ACTIVE bit if UNPRIV is true (i.e.  we are not at EL0).

This means that a LDRT at EL0 will see s->mte_active[1] as 0,
and will not do MTE checks even when MTE is enabled.

To avoid the translate-time code having to do an explicit check on
s->unpriv to see if it is OK to index into the mte_active[] array,
duplicate MTE_ACTIVE into MTE0_ACTIVE when UNPRIV is false.

(This isn't a very serious bug because generally nobody executes
LDRT/STRT at EL0, because they have no use there.)

Cc: qemu-stable@nongnu.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-2-peter.maydell@linaro.org


  Commit: dbc678f90a1dab0d2701b068dd7eab627869d045
      
https://github.com/qemu/qemu/commit/dbc678f90a1dab0d2701b068dd7eab627869d045
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/cpu.h
    M target/arm/helper.c

  Log Message:
  -----------
  target/arm: Implement FEAT_MOPS enable bits

FEAT_MOPS defines a handful of new enable bits:
 * HCRX_EL2.MSCEn, SCTLR_EL1.MSCEn, SCTLR_EL2.MSCen:
   define whether the new insns should UNDEF or not
 * HCRX_EL2.MCE2: defines whether memops exceptions from
   EL1 should be taken to EL1 or EL2

Since we don't sanitise what bits can be written for the SCTLR
registers, we only need to handle the new bits in HCRX_EL2, and
define SCTLR_MSCEN for the new SCTLR bit value.

The precedence of "HCRX bits acts as 0 if SCR_EL3.HXEn is 0" versus
"bit acts as 1 if EL2 disabled" is not clear from the register
definition text, but it is clear in the CheckMOPSEnabled()
pseudocode(), so we follow that.  We'll have to check whether other
bits we need to implement in future follow the same logic or not.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-3-peter.maydell@linaro.org


  Commit: 81466e4bad85b99493adb4535b16e8733ac1b72e
      
https://github.com/qemu/qemu/commit/81466e4bad85b99493adb4535b16e8733ac1b72e
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/tcg/translate-a64.c

  Log Message:
  -----------
  target/arm: Pass unpriv bool to get_a64_user_mem_index()

In every place that we call the get_a64_user_mem_index() function
we do it like this:
 memidx = a->unpriv ? get_a64_user_mem_index(s) : get_mem_index(s);
Refactor so the caller passes in the bool that says whether they
want the 'unpriv' or 'normal' mem_index rather than having to
do the ?: themselves.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20230912140434.1333369-4-peter.maydell@linaro.org


  Commit: 31aaaddecb36c17eeeb991e2124de5132df18af9
      
https://github.com/qemu/qemu/commit/31aaaddecb36c17eeeb991e2124de5132df18af9
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/syndrome.h

  Log Message:
  -----------
  target/arm: Define syndrome function for MOPS exceptions

The FEAT_MOPS memory operations can raise a Memory Copy or Memory Set
exception if a copy or set instruction is executed when the CPU
register state is not correct for that instruction. Define the
usual syn_* function that constructs the syndrome register value
for these exceptions.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-5-peter.maydell@linaro.org


  Commit: aa03378bccb1138cb6a3d5a8c91b11feda036188
      
https://github.com/qemu/qemu/commit/aa03378bccb1138cb6a3d5a8c91b11feda036188
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/tcg/mte_helper.c

  Log Message:
  -----------
  target/arm: New function allocation_tag_mem_probe()

For the FEAT_MOPS operations, the existing allocation_tag_mem()
function almost does what we want, but it will take a watchpoint
exception even for an ra == 0 probe request, and it requires that the
caller guarantee that the memory is accessible.  For FEAT_MOPS we
want a function that will not take any kind of exception, and will
return NULL for the not-accessible case.

Rename allocation_tag_mem() to allocation_tag_mem_probe() and add an
extra 'probe' argument that lets us distinguish these cases;
allocation_tag_mem() is now a wrapper that always passes 'false'.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-6-peter.maydell@linaro.org


  Commit: 8163998920388d7fa8534185460320838046f089
      
https://github.com/qemu/qemu/commit/8163998920388d7fa8534185460320838046f089
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/internals.h
    M target/arm/tcg/mte_helper.c

  Log Message:
  -----------
  target/arm: Implement MTE tag-checking functions for FEAT_MOPS

The FEAT_MOPS instructions need a couple of helper routines that
check for MTE tag failures:
 * mte_mops_probe() checks whether there is going to be a tag
   error in the next up-to-a-page worth of data
 * mte_check_fail() is an existing function to record the fact
   of a tag failure, which we need to make global so we can
   call it from helper-a64.c

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-7-peter.maydell@linaro.org


  Commit: 0e92818887deef2300255300af57bb58a6af1ad4
      
https://github.com/qemu/qemu/commit/0e92818887deef2300255300af57bb58a6af1ad4
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/tcg/a64.decode
    M target/arm/tcg/helper-a64.c
    M target/arm/tcg/helper-a64.h
    M target/arm/tcg/translate-a64.c

  Log Message:
  -----------
  target/arm: Implement the SET* instructions

Implement the SET* instructions which collectively implement a
"memset" operation.  These come in a set of three, eg SETP
(prologue), SETM (main), SETE (epilogue), and each of those has
different flavours to indicate whether memory accesses should be
unpriv or non-temporal.

This commit does not include the "memset with tag setting"
SETG* instructions.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-8-peter.maydell@linaro.org


  Commit: 179e9a3baccc3918846c9fc3de2fd534a9a2f901
      
https://github.com/qemu/qemu/commit/179e9a3baccc3918846c9fc3de2fd534a9a2f901
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/cpu.h
    M target/arm/tcg/hflags.c
    M target/arm/tcg/translate-a64.c
    M target/arm/tcg/translate.h

  Log Message:
  -----------
  target/arm: Define new TB flag for ATA0

Currently the only tag-setting instructions always do so in the
context of the current EL, and so we only need one ATA bit in the TB
flags.  The FEAT_MOPS SETG instructions include ones which set tags
for a non-privileged access, so we now also need the equivalent "are
tags enabled?" information for EL0.

Add the new TB flag, and convert the existing 'bool ata' field in
DisasContext to a 'bool ata[2]' that can be indexed by the is_unpriv
bit in an instruction, similarly to mte[2].

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-9-peter.maydell@linaro.org


  Commit: 6087df574400659226861fa5ba47970f1fbd277b
      
https://github.com/qemu/qemu/commit/6087df574400659226861fa5ba47970f1fbd277b
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/internals.h
    M target/arm/tcg/a64.decode
    M target/arm/tcg/helper-a64.c
    M target/arm/tcg/helper-a64.h
    M target/arm/tcg/mte_helper.c
    M target/arm/tcg/translate-a64.c

  Log Message:
  -----------
  target/arm: Implement the SETG* instructions

The FEAT_MOPS SETG* instructions are very similar to the SET*
instructions, but as well as setting memory contents they also
set the MTE tags. They are architecturally required to operate
on tag-granule aligned regions only.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-10-peter.maydell@linaro.org


  Commit: 69c51dc3723bdcb8d020f812f0d25d17b466d959
      
https://github.com/qemu/qemu/commit/69c51dc3723bdcb8d020f812f0d25d17b466d959
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/internals.h
    M target/arm/tcg/mte_helper.c

  Log Message:
  -----------
  target/arm: Implement MTE tag-checking functions for FEAT_MOPS copies

The FEAT_MOPS memory copy operations need an extra helper routine
for checking for MTE tag checking failures beyond the ones we
already added for memory set operations:
 * mte_mops_probe_rev() does the same job as mte_mops_probe(), but
   it checks tags starting at the provided address and working
   backwards, rather than forwards

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-11-peter.maydell@linaro.org


  Commit: 5d7b37b5f675d9cee0c9c1f8b386b3daa3cc2d9a
      
https://github.com/qemu/qemu/commit/5d7b37b5f675d9cee0c9c1f8b386b3daa3cc2d9a
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M target/arm/tcg/a64.decode
    M target/arm/tcg/helper-a64.c
    M target/arm/tcg/helper-a64.h
    M target/arm/tcg/translate-a64.c

  Log Message:
  -----------
  target/arm: Implement the CPY* instructions

The FEAT_MOPS CPY* instructions implement memory copies. These
come in both "always forwards" (memcpy-style) and "overlap OK"
(memmove-style) flavours.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-12-peter.maydell@linaro.org


  Commit: 706a92fbfa3932020d232890d1caf648b8e9eff6
      
https://github.com/qemu/qemu/commit/706a92fbfa3932020d232890d1caf648b8e9eff6
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M docs/system/arm/emulation.rst
    M linux-user/elfload.c
    M target/arm/tcg/cpu64.c

  Log Message:
  -----------
  target/arm: Enable FEAT_MOPS for CPU 'max'

Enable FEAT_MOPS on the AArch64 'max' CPU, and add it to
the list of features we implement.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-13-peter.maydell@linaro.org


  Commit: d71c3d305980b38c6e6794da7401172ac0fec891
      
https://github.com/qemu/qemu/commit/d71c3d305980b38c6e6794da7401172ac0fec891
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M audio/jackaudio.c

  Log Message:
  -----------
  audio/jackaudio: Avoid dynamic stack allocation in qjack_client_init

Avoid a dynamic stack allocation in qjack_client_init(), by using
a g_autofree heap allocation instead.

(We stick with allocate + snprintf() because the JACK API requires
the name to be no more than its maximum size, so g_strdup_printf()
would require an extra truncation step.)

The codebase has very few VLAs, and if we can get rid of them all we
can make the compiler error on new additions.  This is a defensive
measure against security bugs where an on-stack dynamic allocation
isn't correctly size-checked (e.g.  CVE-2021-3527).

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com>
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Message-id: 20230818155846.1651287-2-peter.maydell@linaro.org


  Commit: 07ffc4b90f0c2b4ec13ba804fdffc56d49dff93c
      
https://github.com/qemu/qemu/commit/07ffc4b90f0c2b4ec13ba804fdffc56d49dff93c
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M audio/jackaudio.c

  Log Message:
  -----------
  audio/jackaudio: Avoid dynamic stack allocation in qjack_process()

Avoid a dynamic stack allocation in qjack_process().  Since this
function is a JACK process callback, we are not permitted to malloc()
here, so we allocate a working buffer in qjack_client_init() instead.

The codebase has very few VLAs, and if we can get rid of them all we
can make the compiler error on new additions.  This is a defensive
measure against security bugs where an on-stack dynamic allocation
isn't correctly size-checked (e.g.  CVE-2021-3527).

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com>
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Message-id: 20230818155846.1651287-3-peter.maydell@linaro.org


  Commit: 058262e0a8b23b7b45003749efe5246294195324
      
https://github.com/qemu/qemu/commit/058262e0a8b23b7b45003749efe5246294195324
  Author: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/arm/sbsa-ref.c

  Log Message:
  -----------
  sbsa-ref: add non-secure EL2 virtual timer

Armv8.1+ cpus have Virtual Host Extension (VHE) which added non-secure
EL2 virtual timer.

This change adds it to fullfil Arm BSA (Base System Architecture)
requirements.

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Message-id: 20230913140610.214893-2-marcin.juszkiewicz@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 3c407ec67f94f8dc189f3e47a6419431d15ff084
      
https://github.com/qemu/qemu/commit/3c407ec67f94f8dc189f3e47a6419431d15ff084
  Author: Viktor Prutyanov <viktor@daynix.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M contrib/elf2dmp/main.c

  Log Message:
  -----------
  elf2dmp: replace PE export name check with PDB name check

PE export name check introduced in d399d6b179 isn't reliable enough,
because a page with the export directory may be not present for some
reason. On the other hand, elf2dmp retrieves the PDB name in any case.
It can be also used to check that a PE image is the kernel image. So,
check PDB name when searching for Windows kernel image.

Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2165917

Signed-off-by: Viktor Prutyanov <viktor@daynix.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20230915170153.10959-2-viktor@daynix.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: d5c27a53d51175a2b89208b050488aaba74de131
      
https://github.com/qemu/qemu/commit/d5c27a53d51175a2b89208b050488aaba74de131
  Author: Viktor Prutyanov <viktor@daynix.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M contrib/elf2dmp/addrspace.c
    M contrib/elf2dmp/addrspace.h
    M contrib/elf2dmp/main.c

  Log Message:
  -----------
  elf2dmp: introduce physical block alignment

Physical memory ranges may not be aligned to page size in QEMU ELF, but
DMP can only contain page-aligned runs. So, align them.

Signed-off-by: Viktor Prutyanov <viktor@daynix.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20230915170153.10959-3-viktor@daynix.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 9b7dcd8ff4e5a0b6a976027f6d78c0b55c30607d
      
https://github.com/qemu/qemu/commit/9b7dcd8ff4e5a0b6a976027f6d78c0b55c30607d
  Author: Viktor Prutyanov <viktor@daynix.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M contrib/elf2dmp/main.c

  Log Message:
  -----------
  elf2dmp: introduce merging of physical memory runs

DMP supports 42 physical memory runs at most. So, merge adjacent
physical memory ranges from QEMU ELF when possible to minimize total
number of runs.

Signed-off-by: Viktor Prutyanov <viktor@daynix.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20230915170153.10959-4-viktor@daynix.com
[PMM: fixed format string for printing size_t values]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: df7a75564e72b61213d5355c9ba8215244bb83bd
      
https://github.com/qemu/qemu/commit/df7a75564e72b61213d5355c9ba8215244bb83bd
  Author: Viktor Prutyanov <viktor@daynix.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M contrib/elf2dmp/qemu_elf.c
    M contrib/elf2dmp/qemu_elf.h

  Log Message:
  -----------
  elf2dmp: use Linux mmap with MAP_NORESERVE when possible

Glib's g_mapped_file_new maps file with PROT_READ|PROT_WRITE and
MAP_PRIVATE. This leads to premature physical memory allocation of dump
file size on Linux hosts and may fail. On Linux, mapping the file with
MAP_NORESERVE limits the allocation by available memory.

Signed-off-by: Viktor Prutyanov <viktor@daynix.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20230915170153.10959-5-viktor@daynix.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 231f6a7d66254a58bedbee458591b780e0a507b1
      
https://github.com/qemu/qemu/commit/231f6a7d66254a58bedbee458591b780e0a507b1
  Author: Viktor Prutyanov <viktor@daynix.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M contrib/elf2dmp/pdb.c
    M contrib/elf2dmp/pdb.h

  Log Message:
  -----------
  elf2dmp: rework PDB_STREAM_INDEXES::segments obtaining

PDB for Windows 11 kernel has slightly different structure compared to
previous versions. Since elf2dmp don't use the other fields, copy only
'segments' field from PDB_STREAM_INDEXES.

Signed-off-by: Viktor Prutyanov <viktor@daynix.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20230915170153.10959-6-viktor@daynix.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 38e476e88e7d5294c194d36d33e12f3d936a7e6a
      
https://github.com/qemu/qemu/commit/38e476e88e7d5294c194d36d33e12f3d936a7e6a
  Author: Martin Kletzander <mkletzan@redhat.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M hw/input/tsc210x.c

  Log Message:
  -----------
  hw/input/tsc210x: Extract common init code into new function

This deduplicates several lines and will make future changes more
concise.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: 
<1d75877cf4cc2a38f87633ff16f9fea3e1bb0c03.1650874791.git.mkletzan@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b7639b7dd05de6d4f5ac2a30bb4a7a789286992f
      
https://github.com/qemu/qemu/commit/b7639b7dd05de6d4f5ac2a30bb4a7a789286992f
  Author: Martin Kletzander <mkletzan@redhat.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M hw/audio/hda-codec.c
    M hw/audio/intel-hda.c
    M hw/audio/intel-hda.h

  Log Message:
  -----------
  hw/audio: Simplify hda audio init

No return values are used anywhere, so switch the functions to be void
and add support for error reporting using errp for use in next patches.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: 
<cd1df4ad2a6fae969c4a02a77955c4a8c0d430b6.1650874791.git.mkletzan@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 79d3e56c2071d402fd55f135aea872d8fe24d269
      
https://github.com/qemu/qemu/commit/79d3e56c2071d402fd55f135aea872d8fe24d269
  Author: Martin Kletzander <mkletzan@redhat.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M hw/audio/lm4549.c
    M hw/audio/lm4549.h
    M hw/audio/pl041.c

  Log Message:
  -----------
  hw/audio/lm4549: Add errp error reporting to init function

This will be used in future commit.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: 
<be1bf295b3c6a3dee272b4b4e8115e37c2a772b5.1650874791.git.mkletzan@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: fac7e497ca3ee088330b19b915ed09e67fcfce4c
      
https://github.com/qemu/qemu/commit/fac7e497ca3ee088330b19b915ed09e67fcfce4c
  Author: Martin Kletzander <mkletzan@redhat.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M hw/display/xlnx_dp.c

  Log Message:
  -----------
  hw/display/xlnx_dp.c: Add audiodev property

There was no way to set this and we need that for it to be able to properly
initialise.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Message-ID: 
<16963256573fcbfa7720aa2fd000ba74a4055222.1650874791.git.mkletzan@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 50333482e16939cfeaed722e22f7b0798e5b3821
      
https://github.com/qemu/qemu/commit/50333482e16939cfeaed722e22f7b0798e5b3821
  Author: Martin Kletzander <mkletzan@redhat.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M tests/qtest/es1370-test.c
    M tests/qtest/fuzz/generic_fuzz_configs.h
    M tests/qtest/intel-hda-test.c

  Log Message:
  -----------
  tests/qtest: Specify audiodev= and -audiodev

This will enable removing deprecated default audiodev support.

I did not figure out how to make the audiodev represented as an
interface node, so this is a workaround.  I am not sure what would be
the proper way.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: 
<6e7f2808dd40679a415812767b88f2a411fc137f.1650874791.git.mkletzan@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: adf7f6b72fb6d10e00e93d04dfa33ce8c5e384c8
      
https://github.com/qemu/qemu/commit/adf7f6b72fb6d10e00e93d04dfa33ce8c5e384c8
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M docs/config/q35-emulated.cfg
    M docs/config/q35-virtio-graphical.cfg
    M softmmu/vl.c

  Log Message:
  -----------
  vl: recognize audiodev groups in configuration files

This is necessary for the q35 configuration tests to pass,
once audiodev becomes mandatory.

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


  Commit: c64023b0ba677cfa6b878e82ea8e18507a597396
      
https://github.com/qemu/qemu/commit/c64023b0ba677cfa6b878e82ea8e18507a597396
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M meson.build
    M meson_options.txt
    M scripts/meson-buildoptions.sh

  Log Message:
  -----------
  meson.build: Make keyutils independent from keyring

Commit 0db0fbb5cf ("Add conditional dependency for libkeyutils")
tried to provide a possibility for the user to disable keyutils
if not required by makeing it depend on the keyring feature. This
looked reasonable at a first glance (the unit test in tests/unit/
needs both), but the condition in meson.build fails if the feature
is meant to be detected automatically, and there is also another
spot in backends/meson.build where keyutils is used independently
from keyring. So let's remove the dependency on keyring again and
introduce a proper meson build option instead.

Cc: qemu-stable@nongnu.org
Fixes: 0db0fbb5cf ("Add conditional dependency for libkeyutils")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1842
Message-ID: <20230824094208.255279-1-thuth@redhat.com>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 0daaf2761f6d268ffaa2d01d450e202e127452b1
      
https://github.com/qemu/qemu/commit/0daaf2761f6d268ffaa2d01d450e202e127452b1
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M tests/qtest/netdev-socket.c

  Log Message:
  -----------
  tests/qtest/netdev-socket: Raise connection timeout to 120 seconds

The test still fails intermittently with a 60 second timeout in the
GitLab CI environment. Raise the timeout to 120 seconds.

  576/839 ERROR:../tests/qtest/netdev-socket.c:293:test_stream_unix:
   assertion failed (resp == expect):
   ("st0: index=0,type=stream,connection error\r\n" == "st0: 
index=0,type=stream,unix:/tmp/netdev-socket.UW5IA2/stream_unix\r\n") ERROR
  576/839 qemu:qtest+qtest-sh4 / qtest-sh4/netdev-socket
                              ERROR          62.85s   killed by signal 6 SIGABRT
  >>> MALLOC_PERTURB_=249 QTEST_QEMU_BINARY=./qemu-system-sh4
   QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
   
G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/-LCfcJ2T/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
   QTEST_QEMU_IMG=./qemu-img 
/home/gitlab-runner/builds/-LCfcJ2T/0/qemu-project/qemu/build/tests/qtest/netdev-socket
 --tap -k
  ――――――――――――――――――――――――――――――――――――― ✀  ―――――――――――――――――――――――――――――――――――――
  stderr:
  **
  ERROR:../tests/qtest/netdev-socket.c:293:test_stream_unix: assertion failed 
(resp == expect): ("st0: index=0,type=stream,connection error\r\n" == "st0: 
index=0,type=stream,unix:/tmp/netdev-socket.UW5IA2/stream_unix\r\n")
  (test program exited with status code -6)

Buglink: https://gitlab.com/qemu-project/qemu/-/issues/1881
Fixes: 417296c8d858 ("tests/qtest/netdev-socket: Raise connection timeout to 60 
seconds")
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Message-ID: <20230912133310.60583-1-stefanha@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 926bef1d82bb9eb7a752aa128d9e70b808906243
      
https://github.com/qemu/qemu/commit/926bef1d82bb9eb7a752aa128d9e70b808906243
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

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

  Log Message:
  -----------
  tests/qtest/m48t59-test: Silence compiler warning with -Wshadow

When compiling this file with -Wshadow=local , we get:

../tests/qtest/m48t59-test.c: In function ‘bcd_check_time’:
../tests/qtest/m48t59-test.c:195:17: warning: declaration of ‘s’
 shadows a previous local [-Wshadow=local]
  195 |         long t, s;
      |                 ^
../tests/qtest/m48t59-test.c:158:17: note: shadowed declaration is here
  158 |     QTestState *s = m48t59_qtest_start();
      |                 ^

Rename the QTestState variable to "qts" which is the common
naming for such a variable in other tests.

Reported-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20230922163742.149444-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 02e8828aa75376c8bb3e694d89e31b3ac8dd29df
      
https://github.com/qemu/qemu/commit/02e8828aa75376c8bb3e694d89e31b3ac8dd29df
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M tests/qtest/netdev-socket.c

  Log Message:
  -----------
  tests/qtest/netdev-socket: Do not test multicast on Darwin

Do not run this test on Darwin, otherwise we get:

  qemu-system-arm: -netdev 
dgram,id=st0,remote.type=inet,remote.host=230.0.0.1,remote.port=1234:
   can't add socket to multicast group 230.0.0.1: Can't assign requested address
  Broken pipe
  ../../tests/qtest/libqtest.c:191: kill_qemu() tried to terminate QEMU
   process but encountered exit status 1 (expected 0)
  Abort trap: 6

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20230918062549.2363-1-philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 4032f04c638ff852fa6f2d274f8dc2402b965ca9
      
https://github.com/qemu/qemu/commit/4032f04c638ff852fa6f2d274f8dc2402b965ca9
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M hw/mips/jazz.c

  Log Message:
  -----------
  hw/mips/jazz: Move the NIC init code into a separate function

The mips_jazz_init() function is already quite big, so moving
away some code here can help to make it more understandable.
Additionally, by moving this code into a separate function, the
next patch (that will refactor the for-loop around the NIC init
code) will be much shorter and easier to understand.

Message-ID: <20230913160922.355640-2-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: c9daa685cb69dddfe8082f09fd26728e98a66102
      
https://github.com/qemu/qemu/commit/c9daa685cb69dddfe8082f09fd26728e98a66102
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M hw/mips/jazz.c

  Log Message:
  -----------
  hw/mips/jazz: Simplify the NIC setup code

The for-loop does not make much sense here - it is always left after
the first iteration, so we can also check for nb_nics == 1 instead
which is way easier to understand.

Also, the checks for nd->model are superfluous since the code in
mips_jazz_init_net() calls qemu_check_nic_model() that already
takes care of this (i.e. initializing nd->model if it has not been
set yet, and checking whether it is the "help" option or the
supported NIC model).

Message-ID: <20230913160922.355640-3-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: b821109583a035a17fa5b89c0ebd8917d09cc82d
      
https://github.com/qemu/qemu/commit/b821109583a035a17fa5b89c0ebd8917d09cc82d
  Author: Pavel Dovgalyuk <pavel.dovgalyuk@ispras.ru>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M tests/avocado/replay_linux.py

  Log Message:
  -----------
  tests/avocado: fix waiting for vm shutdown in replay_linux

This patch fixes the race condition in waiting for shutdown
of the replay linux test.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
Suggested-by: John Snow <jsnow@redhat.com>
Message-ID: <20230811070608.3383343-4-pavel.dovgalyuk@ispras.ru>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: bf94b63d76bafd452d536c3f45cdfdefb98045dc
      
https://github.com/qemu/qemu/commit/bf94b63d76bafd452d536c3f45cdfdefb98045dc
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M audio/jackaudio.c
    M contrib/elf2dmp/addrspace.c
    M contrib/elf2dmp/addrspace.h
    M contrib/elf2dmp/main.c
    M contrib/elf2dmp/pdb.c
    M contrib/elf2dmp/pdb.h
    M contrib/elf2dmp/qemu_elf.c
    M contrib/elf2dmp/qemu_elf.h
    M docs/devel/loads-stores.rst
    M docs/system/arm/emulation.rst
    M hw/arm/boot.c
    M hw/arm/sbsa-ref.c
    M linux-user/elfload.c
    M target/arm/cpu.h
    M target/arm/helper.c
    M target/arm/internals.h
    M target/arm/syndrome.h
    M target/arm/tcg/a64.decode
    M target/arm/tcg/cpu64.c
    M target/arm/tcg/helper-a64.c
    M target/arm/tcg/helper-a64.h
    M target/arm/tcg/hflags.c
    M target/arm/tcg/mte_helper.c
    M target/arm/tcg/translate-a64.c
    M target/arm/tcg/translate.h
    M target/m68k/m68k-semi.c
    M tests/tcg/aarch64/sysregs.c

  Log Message:
  -----------
  Merge tag 'pull-target-arm-20230921' of 
https://git.linaro.org/people/pmaydell/qemu-arm into staging

target-arm queue:
 * target/m68k: Add URL to semihosting spec
 * docs/devel/loads-stores: Fix git grep regexes
 * hw/arm/boot: Set SCR_EL3.FGTEn when booting kernel
 * linux-user: Correct SME feature names reported in cpuinfo
 * linux-user: Add missing arm32 hwcaps
 * Don't skip MTE checks for LDRT/STRT at EL0
 * Implement FEAT_HBC
 * Implement FEAT_MOPS
 * audio/jackaudio: Avoid dynamic stack allocation
 * sbsa-ref: add non-secure EL2 virtual timer
 * elf2dmp: improve Win2022, Win11 and large dumps

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmUMfwAZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3jvnD/0QE/oOxfr+wkDUkTasSwVc
# UNfhObMj3h8x2XApqXckXnckew97I7hh7OLk35p9Ncea7fb6CvGMZ/DJir7AG4aQ
# Anpd5g2Qo0AMfPIyvoJ5pgtqZ1aS/EpBfYixmjL/zY6+zNzoVzWG/KfL+XamW6ir
# 6U7EqcAUzfX0+Splcxs5WgCDI5nGtn0B42EwOMpmwsH4opfr6HTn8Rzbn9gIwKU7
# u82PaKAqWPYD0ev9NQra+VVTrrFS4SCcqkV+SoYu0Cg5vvBlgAVcx0Zz2objp9LC
# 96fOtFH4Rch611j87WiGvN+fxQawqYzAYdy2y+j0wwuonTH9G3PpdZZT0557NjeS
# rFpW2UQebDqZ3ZTDwhzefsVKc3emLZtEd+RFa/YcDtao0afKfbSHv5A2/pGHxzlv
# 8psKOOH82WXTOHwFKA2o0lXDAauzirY+1Avy0vozNzPCdErXPgMHY4tABU77PpER
# Pz17jJO9C1AGyQVF+o09ieJR2Du5Wb2LLcZP3+5Ctm0SNVmREKKNcMkhJiEM9snm
# PQBR7FNEbAuQAO2MDK70dWUcTNtOv4Q1jgTR+aYd2MrArxCmAA5Zd9gjeYDwv6XH
# n242ONDAhlG1fY5f5giE3vCrcV1FDbvHEn6GDVilgMrF3a3Iw30xUaATiO09hIfi
# XAwGwLtMsp21WDa5PsfZVw==
# =dalQ
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 21 Sep 2023 13:36:00 EDT
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org"
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [full]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [full]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" 
[full]
# gpg:                 aka "Peter Maydell <peter@archaic.org.uk>" [unknown]
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

* tag 'pull-target-arm-20230921' of 
https://git.linaro.org/people/pmaydell/qemu-arm: (30 commits)
  elf2dmp: rework PDB_STREAM_INDEXES::segments obtaining
  elf2dmp: use Linux mmap with MAP_NORESERVE when possible
  elf2dmp: introduce merging of physical memory runs
  elf2dmp: introduce physical block alignment
  elf2dmp: replace PE export name check with PDB name check
  sbsa-ref: add non-secure EL2 virtual timer
  audio/jackaudio: Avoid dynamic stack allocation in qjack_process()
  audio/jackaudio: Avoid dynamic stack allocation in qjack_client_init
  target/arm: Enable FEAT_MOPS for CPU 'max'
  target/arm: Implement the CPY* instructions
  target/arm: Implement MTE tag-checking functions for FEAT_MOPS copies
  target/arm: Implement the SETG* instructions
  target/arm: Define new TB flag for ATA0
  target/arm: Implement the SET* instructions
  target/arm: Implement MTE tag-checking functions for FEAT_MOPS
  target/arm: New function allocation_tag_mem_probe()
  target/arm: Define syndrome function for MOPS exceptions
  target/arm: Pass unpriv bool to get_a64_user_mem_index()
  target/arm: Implement FEAT_MOPS enable bits
  target/arm: Don't skip MTE checks for LDRT/STRT at EL0
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: 29578f575731dd9dfd715a34793fa3afbad1ebb2
      
https://github.com/qemu/qemu/commit/29578f575731dd9dfd715a34793fa3afbad1ebb2
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M docs/config/q35-emulated.cfg
    M docs/config/q35-virtio-graphical.cfg
    M hw/audio/hda-codec.c
    M hw/audio/intel-hda.c
    M hw/audio/intel-hda.h
    M hw/audio/lm4549.c
    M hw/audio/lm4549.h
    M hw/audio/pl041.c
    M hw/display/xlnx_dp.c
    M hw/input/tsc210x.c
    M include/qemu/timer.h
    M scripts/kvm/vmxcap
    M softmmu/vl.c
    M target/i386/cpu.c
    M target/i386/cpu.h
    M tests/qtest/es1370-test.c
    M tests/qtest/fuzz/generic_fuzz_configs.h
    M tests/qtest/intel-hda-test.c

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

* add host ticks function for RISC-V
* target/i386: Export GDS_NO bit
* target/i386: add support for bit 56 of MSR_IA32_VMX_BASIC
* first part of audiodev cleanups

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmUNtYUUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroN7Uwf9Fy4aE1PHzSNr2FqT4rUSYrT4N8cL
# QiPeB8JiJUnl73TcCkTwi7S/Az+37okv+Qsr7eh1wdarY8DOYir9dGJU3TGzICSw
# cgPImb99rhBc2kEmwciCWGlhXIMD8WNN64EanPPg5VeQYdzrorYwl7jCTMQMBR5H
# wtOq3f6FfYJonVwZ6YOmbioD2mFfoGBuiDcYmTTw440vrruKqHagbm5onD1SY9kR
# SM0/HXcYaKB6Ae9qNKhyR9h94KZzDUkCvcTLdFGtK90GBs4VxZVHQn6Dpkh5lPtT
# t0MbMv1mcO6ODzg9TxO3gUAgoklTy3gM2wISXo5C9NGuxmF2svwkuQl5pg==
# =CuIa
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 22 Sep 2023 11:40:53 EDT
# 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]
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu:
  vl: recognize audiodev groups in configuration files
  tests/qtest: Specify audiodev= and -audiodev
  hw/display/xlnx_dp.c: Add audiodev property
  hw/audio/lm4549: Add errp error reporting to init function
  hw/audio: Simplify hda audio init
  hw/input/tsc210x: Extract common init code into new function
  qemu/timer: Add host ticks function for RISC-V
  target/i386: Export GDS_NO bit to guests
  target/i386: enumerate bit 56 of MSR_IA32_VMX_BASIC

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: 494a6a2cf7f775d2c20fd6df9601e30606cc2014
      
https://github.com/qemu/qemu/commit/494a6a2cf7f775d2c20fd6df9601e30606cc2014
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M hw/mips/jazz.c
    M meson.build
    M meson_options.txt
    M scripts/meson-buildoptions.sh
    M tests/avocado/replay_linux.py
    M tests/qtest/m48t59-test.c
    M tests/qtest/netdev-socket.c

  Log Message:
  -----------
  Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into 
staging

* Make keyutils independent from keyring in meson.build
* Simplify the NIC init code of the jazz machine a little bit
* Minor qtest and avocado fixes

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmURS8gRHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbVn4A/+NQKFZcN7gVn5JXkK7kf6i01LNmAoqjj9
# QeQL+WCoNC68OApw7DxIEnpBYT0G42NTHHx4SYeOvzJUzCpeWcxYzQUz58ObZML7
# +OKsiOsaHu3/qOuihBCn43et6moLdDCWbee5Zr6JQv/Fjn3q3nEQZnJDWdw8vm1v
# csYQJZOD6HelLVMmbLfl1szzrykDTT53NhPncH/SjPz6we17sKqHqmT6LBUIsXcV
# u2LaowppKmT7Ooexu6SmsCagLhtWuYo1iGGcRqoojtRWo7eZtWLrAy2DJpyFkPBW
# AIYBfntRISZv4eBGCxcVfvODD/Q4OXHuYTfGzD3m+ELJ6hUk/+d4/aHJ2hm+KEm+
# AD0IpDtimaEmyQTPlaWHhhEur/82JZ+zYlxUMPf3+hglB/rbr6fhA0SMAV6nwR0r
# N8jnB8UCml9oDxJVvDZyrcPMGFs1xlr5FVSHHEoL338SvSfjG3NOEtcNao9n6A8d
# rO2CfPzI7peQhKWAzJL+qpnmenyIniH23tFnf2mpOZ0g45ZWtJeT0CXL3aQO3XAZ
# m56pkM0d/etAHHRoLQ5D/iKZpwiTRLjdzsJ0gMAQsIuRlG/j5h+zou0vUMgm6F8F
# igRHLxytlywZBTCABm2XIlKmaJp8hQlVQMpKsv/BwzTvzzk0GGS5d1qzzFt5WWR7
# 4rSalTn5Xuw=
# =FioB
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 25 Sep 2023 04:58:48 EDT
# gpg:                using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg:                issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full]
# gpg:                 aka "Thomas Huth <thuth@redhat.com>" [full]
# gpg:                 aka "Thomas Huth <huth@tuxfamily.org>" [full]
# gpg:                 aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3  EAB9 2ED9 D774 FE70 2DB5

* tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu:
  tests/avocado: fix waiting for vm shutdown in replay_linux
  hw/mips/jazz: Simplify the NIC setup code
  hw/mips/jazz: Move the NIC init code into a separate function
  tests/qtest/netdev-socket: Do not test multicast on Darwin
  tests/qtest/m48t59-test: Silence compiler warning with -Wshadow
  tests/qtest/netdev-socket: Raise connection timeout to 120 seconds
  meson.build: Make keyutils independent from keyring

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


Compare: https://github.com/qemu/qemu/compare/b55e4b9c0525...494a6a2cf7f7



reply via email to

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