qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] e65ecb: hw/arm/sbsa-ref: set 'slots' property


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] e65ecb: hw/arm/sbsa-ref: set 'slots' property of xhci
Date: Mon, 17 Jul 2023 07:50:18 -0700

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: e65ecb665c88a7d61e5d21253c9672dedd72f84b
      
https://github.com/qemu/qemu/commit/e65ecb665c88a7d61e5d21253c9672dedd72f84b
  Author: Yuquan Wang <wangyuquan1236@phytium.com.cn>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

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

  Log Message:
  -----------
  hw/arm/sbsa-ref: set 'slots' property of xhci

This extends the slots of xhci to 64, since the default xhci_sysbus
just supports one slot.

Signed-off-by: Wang Yuquan <wangyuquan1236@phytium.com.cn>
Signed-off-by: Chen Baozi <chenbaozi@phytium.com.cn>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Tested-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Message-id: 20230710063750.473510-2-wangyuquan1236@phytium.com.cn
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: aab746106c5afcf940bd7a146a099cd485dfe6e5
      
https://github.com/qemu/qemu/commit/aab746106c5afcf940bd7a146a099cd485dfe6e5
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Remove pointless NULL check in clock_adjtime handling

In the code for TARGET_NR_clock_adjtime, we set the pointer phtx to
the address of the local variable htx.  This means it can never be
NULL, but later in the code we check it for NULL anyway.  Coverity
complains about this (CID 1507683) because the NULL check comes after
a call to clock_adjtime() that assumes it is non-NULL.

Since phtx is always &htx, and is used only in three places, it's not
really necessary.  Remove it, bringing the code structure in to line
with that for TARGET_NR_clock_adjtime64, which already uses a simple
'&htx' when it wants a pointer to 'htx'.

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>
Message-id: 20230623144410.1837261-1-peter.maydell@linaro.org


  Commit: 34eed551273cb42dbbff4d8fceb7b3576436aff3
      
https://github.com/qemu/qemu/commit/34eed551273cb42dbbff4d8fceb7b3576436aff3
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M target/arm/ptw.c

  Log Message:
  -----------
  target/arm/ptw.c: Add comments to S1Translate struct fields

Add comments to the in_* fields in the S1Translate struct
that explain what they're doing.

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


  Commit: 3f74da440ddad65dee5a22d63b2048a5ee16a5e2
      
https://github.com/qemu/qemu/commit/3f74da440ddad65dee5a22d63b2048a5ee16a5e2
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M target/arm/ptw.c

  Log Message:
  -----------
  target/arm: Fix S1_ptw_translate() debug path

In commit fe4a5472ccd6 we rearranged the logic in S1_ptw_translate()
so that the debug-access "call get_phys_addr_*" codepath is used both
when S1 is doing ptw reads from stage 2 and when it is doing ptw
reads from physical memory.  However, we didn't update the
calculation of s2ptw->in_space and s2ptw->in_secure to account for
the "ptw reads from physical memory" case.  This meant that debug
accesses when in Secure state broke.

Create a new function S2_security_space() which returns the
correct security space to use for the ptw load, and use it to
determine the correct .in_secure and .in_space fields for the
stage 2 lookup for the ptw load.

Reported-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Tested-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230710152130.3928330-3-peter.maydell@linaro.org
Fixes: fe4a5472ccd6 ("target/arm: Use get_phys_addr_with_struct in 
S1_ptw_translate")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: eeb9578c36e78af6ee661f491e3f8744b1e0b6fb
      
https://github.com/qemu/qemu/commit/eeb9578c36e78af6ee661f491e3f8744b1e0b6fb
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M target/arm/ptw.c

  Log Message:
  -----------
  target/arm/ptw.c: Account for FEAT_RME when applying {N}SW, SA bits

In get_phys_addr_twostage() the code that applies the effects of
VSTCR.{SA,SW} and VTCR.{NSA,NSW} only updates result->f.attrs.secure.
Now we also have f.attrs.space for FEAT_RME, we need to keep the two
in sync.

These bits only have an effect for Secure space translations, not
for Root, so use the input in_space field to determine whether to
apply them rather than the input is_secure. This doesn't actually
make a difference because Root translations are never two-stage,
but it's a little clearer.

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


  Commit: e60a7d0d4d89c8bca8a74a877e31abce50e848e3
      
https://github.com/qemu/qemu/commit/e60a7d0d4d89c8bca8a74a877e31abce50e848e3
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M accel/tcg/cpu-exec.c
    M accel/tcg/translate-all.c

  Log Message:
  -----------
  accel/tcg: Zero-pad PC in TCG CPU exec trace lines

In commit f0a08b0913befbd we changed the type of the PC from
target_ulong to vaddr.  In doing so we inadvertently dropped the
zero-padding on the PC in trace lines (the second item inside the []
in these lines).  They used to look like this on AArch64, for
instance:

Trace 0: 0x7f2260000100 [00000000/0000000040000000/00000061/ff200000]

and now they look like this:
Trace 0: 0x7f4f50000100 [00000000/40000000/00000061/ff200000]

and if the PC happens to be somewhere low like 0x5000
then the field is shown as /5000/.

This is because TARGET_FMT_lx is a "%08x" or "%016x" specifier,
depending on TARGET_LONG_SIZE, whereas VADDR_PRIx is just PRIx64
with no width specifier.

Restore the zero-padding by adding an 016 width specifier to
this tracing and a couple of others that were similarly recently
changed to use VADDR_PRIx without a width specifier.

We can't unfortunately restore the "32-bit guests are padded to
8 hex digits and 64-bit guests to 16 hex digits" behaviour so
easily.

Fixes: f0a08b0913befbd ("accel/tcg/cpu-exec.c: Widen pc to vaddr")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Message-id: 20230711165434.4123674-1-peter.maydell@linaro.org


  Commit: c2c1c4a35c7c2b1a4140b0942b9797c857e476a4
      
https://github.com/qemu/qemu/commit/c2c1c4a35c7c2b1a4140b0942b9797c857e476a4
  Author: Tong Ho <tong.ho@amd.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M hw/nvram/xlnx-efuse.c

  Log Message:
  -----------
  hw/nvram: Avoid unnecessary Xilinx eFuse backstore write

Add a check in the bit-set operation to write the backstore
only if the affected bit is 0 before.

With this in place, there will be no need for callers to
do the checking in order to avoid unnecessary writes.

Signed-off-by: Tong Ho <tong.ho@amd.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 9c18a9234bab9d5e903f897b30fb4a37888aebfc
      
https://github.com/qemu/qemu/commit/9c18a9234bab9d5e903f897b30fb4a37888aebfc
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M hw/display/virtio-gpu.c

  Log Message:
  -----------
  virtio-gpu: fix potential divide-by-zero regression

Commit 9462ff4695aa0 ("virtio-gpu/win32: allocate shareable 2d
resources/images") introduces a division, which can lead to crashes when
"height" is 0.

Fixes: https://gitlab.com/qemu-project/qemu/-/issues/1744
Reviewed-by: Alexander Bulekov <alxndr@bu.edu>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>


  Commit: d921fea338c1059a27ce7b75309d7a2e485f710b
      
https://github.com/qemu/qemu/commit/d921fea338c1059a27ce7b75309d7a2e485f710b
  Author: Mauro Matteo Cascella <mcascell@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M ui/vnc-clipboard.c

  Log Message:
  -----------
  ui/vnc-clipboard: fix infinite loop in inflate_buffer (CVE-2023-3255)

A wrong exit condition may lead to an infinite loop when inflating a
valid zlib buffer containing some extra bytes in the `inflate_buffer`
function. The bug only occurs post-authentication. Return the buffer
immediately if the end of the compressed data has been reached
(Z_STREAM_END).

Fixes: CVE-2023-3255
Fixes: 0bf41cab ("ui/vnc: clipboard support")
Reported-by: Kevin Denis <kevin.denis@synacktiv.com>
Signed-off-by: Mauro Matteo Cascella <mcascell@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Tested-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230704084210.101822-1-mcascell@redhat.com>


  Commit: 83b4b236ed54dab35f1b821ee2b6f3101c45c8cc
      
https://github.com/qemu/qemu/commit/83b4b236ed54dab35f1b821ee2b6f3101c45c8cc
  Author: Dongwon Kim <dongwon.kim@intel.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M ui/gtk-egl.c
    M ui/gtk-gl-area.c

  Log Message:
  -----------
  ui/gtk: Make sure the right EGL context is currently bound

Observed a wrong context is bound when changing the scanout mode.
To prevent problem, it is needed to make sure to bind the right
context in gtk_egl_set_scanout_mode/gtk_gl_area_set_scanout_mode
as well as unbind one in the end of gd_egl_update/gd_gl_area_update.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230628191504.17185-1-dongwon.kim@intel.com>


  Commit: 0d0be87659b06ef7ce07ad07376086bd28e4d71b
      
https://github.com/qemu/qemu/commit/0d0be87659b06ef7ce07ad07376086bd28e4d71b
  Author: Dongwon Kim <dongwon.kim@intel.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M hw/display/virtio-gpu.c
    M ui/console.c

  Log Message:
  -----------
  virtio-gpu: replace the surface with null surface when resetting

The primary guest scanout shows the booting screen right after reboot
but additional guest displays (i.e. max_ouptuts > 1) will keep displaying
the old frames until the guest virtio gpu driver gets initialized, which
could cause some confusion. A better way is to to replace the surface with
a place holder that tells the display is not active during the reset of
virtio-gpu device.

And to immediately update the surface with the place holder image after
the switch, displaychangelistener_gfx_switch needs to be called with
'update == TRUE' in dpy_gfx_replace_surface when the new surface is NULL.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230627224451.11739-1-dongwon.kim@intel.com>


  Commit: 9ac06df8b684e6409ebc7af6337500e7484e28b3
      
https://github.com/qemu/qemu/commit/9ac06df8b684e6409ebc7af6337500e7484e28b3
  Author: Dongwon Kim <dongwon.kim@intel.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M hw/display/virtio-gpu-udmabuf.c
    M include/ui/console.h
    M ui/dbus-listener.c
    M ui/egl-helpers.c
    M ui/gtk-egl.c
    M ui/gtk-gl-area.c

  Log Message:
  -----------
  virtio-gpu-udmabuf: correct naming of QemuDmaBuf size properties

Replace 'width' and 'height' in QemuDmaBuf with 'backing_widht'
and 'backing_height' as these commonly indicate the size of the
whole surface (e.g. guest's Xorg extended display). Then use
'width' and 'height' for sub region in there (e.g. guest's
scanouts).

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230713040444.32267-1-dongwon.kim@intel.com>


  Commit: 92b58156e745b01a20861a872e327693a7e729b1
      
https://github.com/qemu/qemu/commit/92b58156e745b01a20861a872e327693a7e729b1
  Author: Dongwon Kim <dongwon.kim@intel.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M ui/gtk-egl.c
    M ui/gtk-gl-area.c

  Log Message:
  -----------
  ui/gtk: set scanout-mode right before scheduling draw

Setting scanout mode is better to be done very last minute
right because the mode can be reset anytime after it is set in
dpy_gl_scanout_texture by any asynchronouse dpy_refresh call,
which eventually cancels drawing of the guest scanout texture.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230706183355.29361-1-dongwon.kim@intel.com>


  Commit: 1be878eb97abf8d43c9c5868bca69862ccae5da3
      
https://github.com/qemu/qemu/commit/1be878eb97abf8d43c9c5868bca69862ccae5da3
  Author: Dongwon Kim <dongwon.kim@intel.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M ui/gtk-egl.c
    M ui/gtk-gl-area.c

  Log Message:
  -----------
  ui/gtk: skip refresh if new dmabuf has been submitted

Skip refresh if a new dmabuf (guest scanout frame) has already been
submitted and ready to be drawn because the scanout will be updated
with new frame anyway.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230706183355.29361-2-dongwon.kim@intel.com>


  Commit: 6200e0ff5f921d7d2b6facaa99f85512dd08a958
      
https://github.com/qemu/qemu/commit/6200e0ff5f921d7d2b6facaa99f85512dd08a958
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M tests/lcitool/libvirt-ci

  Log Message:
  -----------
  libvirt-ci: update submodule to cover pipewire

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230506163735.3481387-2-marcandre.lureau@redhat.com>


  Commit: 62259d816c7cc61c59baa14aecaa3bdb3caa34eb
      
https://github.com/qemu/qemu/commit/62259d816c7cc61c59baa14aecaa3bdb3caa34eb
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M tests/docker/dockerfiles/alpine.docker
    M tests/docker/dockerfiles/centos8.docker
    M tests/docker/dockerfiles/debian-amd64-cross.docker
    M tests/docker/dockerfiles/debian-amd64.docker
    M tests/docker/dockerfiles/debian-arm64-cross.docker
    M tests/docker/dockerfiles/debian-armel-cross.docker
    M tests/docker/dockerfiles/debian-armhf-cross.docker
    M tests/docker/dockerfiles/debian-mips64el-cross.docker
    M tests/docker/dockerfiles/debian-mipsel-cross.docker
    M tests/docker/dockerfiles/debian-ppc64el-cross.docker
    M tests/docker/dockerfiles/debian-s390x-cross.docker
    M tests/docker/dockerfiles/fedora.docker
    M tests/docker/dockerfiles/opensuse-leap.docker
    M tests/docker/dockerfiles/ubuntu2204.docker
    M tests/lcitool/projects/qemu.yml

  Log Message:
  -----------
  tests/lcitool: add pipewire

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230506163735.3481387-3-marcandre.lureau@redhat.com>


  Commit: 20c512480522a035627d4f53e28bc7b0ecb779b2
      
https://github.com/qemu/qemu/commit/20c512480522a035627d4f53e28bc7b0ecb779b2
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c
    M audio/trace-events
    M meson.build
    M meson_options.txt
    M qapi/audio.json
    M qemu-options.hx
    M scripts/meson-buildoptions.sh

  Log Message:
  -----------
  audio/pw: Pipewire->PipeWire case fix for user-visible text

"PipeWire" is the correct case.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-4-marcandre.lureau@redhat.com>


  Commit: 2d216959e1e065ccb5523e4ce67b6f9ad47b17eb
      
https://github.com/qemu/qemu/commit/2d216959e1e065ccb5523e4ce67b6f9ad47b17eb
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: drop needless case statement

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-5-marcandre.lureau@redhat.com>


  Commit: 3b2876086b2c5a23a82d70eeb9f2b68c833c2809
      
https://github.com/qemu/qemu/commit/3b2876086b2c5a23a82d70eeb9f2b68c833c2809
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: needless check for NULL

g_clear_pointer() already checks for NULL.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-6-marcandre.lureau@redhat.com>


  Commit: 87048d20e64d5613ad08c59acfb0529d7f82ae70
      
https://github.com/qemu/qemu/commit/87048d20e64d5613ad08c59acfb0529d7f82ae70
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: trace during init before calling pipewire API

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-7-marcandre.lureau@redhat.com>


  Commit: 24a9095c13e34e95a89adbe7cb8e11179ff48f94
      
https://github.com/qemu/qemu/commit/24a9095c13e34e95a89adbe7cb8e11179ff48f94
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: add more details on error

PipeWire uses errno to report error details.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-8-marcandre.lureau@redhat.com>


  Commit: 92fd78689d0b06a00637e4e821a502b194d09328
      
https://github.com/qemu/qemu/commit/92fd78689d0b06a00637e4e821a502b194d09328
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: factorize some common code

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-9-marcandre.lureau@redhat.com>


  Commit: 0c57a05533d12a3788739666f67b425709f4a132
      
https://github.com/qemu/qemu/commit/0c57a05533d12a3788739666f67b425709f4a132
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: add more error reporting

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-10-marcandre.lureau@redhat.com>


  Commit: 6f1b280e44297713bbdfffc92add4a64241b43d6
      
https://github.com/qemu/qemu/commit/6f1b280e44297713bbdfffc92add4a64241b43d6
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: simplify error reporting in stream creation

create_stream() now reports on all error paths.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-11-marcandre.lureau@redhat.com>


  Commit: 8297b3d3d00e475d5b2ba042ed2077167d312492
      
https://github.com/qemu/qemu/commit/8297b3d3d00e475d5b2ba042ed2077167d312492
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: remove wrong comment

The stream is actually created connected.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-12-marcandre.lureau@redhat.com>


  Commit: 92f69a2c9bca26ee756c7cb932142664aca9c9c6
      
https://github.com/qemu/qemu/commit/92f69a2c9bca26ee756c7cb932142664aca9c9c6
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c

  Log Message:
  -----------
  audio/pw: improve channel position code

Follow PulseAudio backend comment and code, and only implement the
channels QEMU actually supports at this point, and add the same comment
about limits and future mappings. Simplify a bit the code.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230506163735.3481387-13-marcandre.lureau@redhat.com>


  Commit: 66547f416a61e0cb711dc76821890242432ba193
      
https://github.com/qemu/qemu/commit/66547f416a61e0cb711dc76821890242432ba193
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M block/nvme.c

  Log Message:
  -----------
  block/nvme: invoke blk_io_plug_call() outside q->lock

blk_io_plug_call() is invoked outside a blk_io_plug()/blk_io_unplug()
section while opening the NVMe drive from:

  nvme_file_open() ->
  nvme_init() ->
  nvme_identify() ->
  nvme_admin_cmd_sync() ->
  nvme_submit_command() ->
  blk_io_plug_call()

blk_io_plug_call() immediately invokes the given callback when the
current thread is not plugged, as is the case during nvme_file_open().

Unfortunately, nvme_submit_command() calls blk_io_plug_call() with
q->lock still held:

    ...
    q->sq.tail = (q->sq.tail + 1) % NVME_QUEUE_SIZE;
    q->need_kick++;
    blk_io_plug_call(nvme_unplug_fn, q);
    qemu_mutex_unlock(&q->lock);
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^

nvme_unplug_fn() deadlocks trying to acquire q->lock because the lock is
already acquired by the same thread. The symptom is that QEMU hangs
during startup while opening the NVMe drive.

Fix this by moving the blk_io_plug_call() outside q->lock. This is safe
because no other thread runs code related to this queue and
blk_io_plug_call()'s internal state is immune to thread safety issues
since it is thread-local.

Reported-by: Lukáš Doktor <ldoktor@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Tested-by: Lukas Doktor <ldoktor@redhat.com>
Message-id: 20230712191628.252806-1-stefanha@redhat.com
Fixes: f2e590002bd6 ("block/nvme: convert to blk_io_plug_call() API")
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: f44ccac2c0c4c8dc8007b8647e50dcfb16fe7cce
      
https://github.com/qemu/qemu/commit/f44ccac2c0c4c8dc8007b8647e50dcfb16fe7cce
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M audio/pwaudio.c
    M audio/trace-events
    M hw/display/virtio-gpu-udmabuf.c
    M hw/display/virtio-gpu.c
    M include/ui/console.h
    M meson.build
    M meson_options.txt
    M qapi/audio.json
    M qemu-options.hx
    M scripts/meson-buildoptions.sh
    M tests/docker/dockerfiles/alpine.docker
    M tests/docker/dockerfiles/centos8.docker
    M tests/docker/dockerfiles/debian-amd64-cross.docker
    M tests/docker/dockerfiles/debian-amd64.docker
    M tests/docker/dockerfiles/debian-arm64-cross.docker
    M tests/docker/dockerfiles/debian-armel-cross.docker
    M tests/docker/dockerfiles/debian-armhf-cross.docker
    M tests/docker/dockerfiles/debian-mips64el-cross.docker
    M tests/docker/dockerfiles/debian-mipsel-cross.docker
    M tests/docker/dockerfiles/debian-ppc64el-cross.docker
    M tests/docker/dockerfiles/debian-s390x-cross.docker
    M tests/docker/dockerfiles/fedora.docker
    M tests/docker/dockerfiles/opensuse-leap.docker
    M tests/docker/dockerfiles/ubuntu2204.docker
    M tests/lcitool/libvirt-ci
    M tests/lcitool/projects/qemu.yml
    M ui/console.c
    M ui/dbus-listener.c
    M ui/egl-helpers.c
    M ui/gtk-egl.c
    M ui/gtk-gl-area.c
    M ui/vnc-clipboard.c

  Log Message:
  -----------
  Merge tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu into 
staging

ui & audio fixes

# -----BEGIN PGP SIGNATURE-----
#
# iQJQBAABCAA6FiEEh6m9kz+HxgbSdvYt2ujhCXWWnOUFAmS1N6IcHG1hcmNhbmRy
# ZS5sdXJlYXVAcmVkaGF0LmNvbQAKCRDa6OEJdZac5SYsD/44+FIoik9v478pZDTp
# CpaezX+DfsW1zee4Ana5eKJkrVld/xEa6i9/msfUHy12bha+kiJ4a6wLu3H4KRZc
# vX/t6sehG2wNcsV5wLhfcjsKzaNUkYpnxLhIZ0fOYXKA0fSBuM/Bsj6zzGTG6kQA
# nt/cK58r1wy63V7werZbA7BI8PF0opDUw5SrZqN0GeoN5clbdyLdcXvD50ibvkDf
# eOVjNQ3QH8IbihmgBVm1wUV8hTuvYRpBmeLJyk7NeR4bnPl3XGIAgtAY8hJL5LdY
# Bm+I3AuxMSskVcag/22QR8mGR0HhDbf3NZauw4ND3LhSctvNN5syaKHVnY5a9aGe
# QLVEV9pxXGfqzWQcsD2HmbupRoBihmp6+WsIpV8ZtuSfeD6slyObw+lqarSQL9b5
# 2C4UFmGCsCOk8rrczZRDp9IWbm23toc/QcQZtg/LhdlCr8nM+7m0XtyEY5WtT3U1
# 8rJEmjOHHqlD4cVBathc8+ZRjKr8HFRRo1ed6WKMoP6voTsw2fiR7I3Vdc7jO7h9
# A1lMiMoLdAXi0Q2VqbmBdLMgb4fXtLzYl2mcbzW0aEUm8uyUfDy2bkVIIUopu40M
# pROmLjaUzUVE3CruckBUCvoYZtJ5hBtvy3W2k8drBNylnP5B8tEqpxpPb+tSFk82
# xgT6oLp8En8asE293eaACbswuw==
# =W2Xa
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 17 Jul 2023 01:44:18 PM BST
# gpg:                using RSA key 87A9BD933F87C606D276F62DDAE8E10975969CE5
# gpg:                issuer "marcandre.lureau@redhat.com"
# gpg: Good signature from "Marc-André Lureau <marcandre.lureau@redhat.com>" 
[full]
# gpg:                 aka "Marc-André Lureau <marcandre.lureau@gmail.com>" 
[full]

* tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu:
  audio/pw: improve channel position code
  audio/pw: remove wrong comment
  audio/pw: simplify error reporting in stream creation
  audio/pw: add more error reporting
  audio/pw: factorize some common code
  audio/pw: add more details on error
  audio/pw: trace during init before calling pipewire API
  audio/pw: needless check for NULL
  audio/pw: drop needless case statement
  audio/pw: Pipewire->PipeWire case fix for user-visible text
  tests/lcitool: add pipewire
  libvirt-ci: update submodule to cover pipewire
  ui/gtk: skip refresh if new dmabuf has been submitted
  ui/gtk: set scanout-mode right before scheduling draw
  virtio-gpu-udmabuf: correct naming of QemuDmaBuf size properties
  virtio-gpu: replace the surface with null surface when resetting
  ui/gtk: Make sure the right EGL context is currently bound
  ui/vnc-clipboard: fix infinite loop in inflate_buffer (CVE-2023-3255)
  virtio-gpu: fix potential divide-by-zero regression

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


  Commit: 08572022e5b743f7f52ed99cd1f4e50f77ff0038
      
https://github.com/qemu/qemu/commit/08572022e5b743f7f52ed99cd1f4e50f77ff0038
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M accel/tcg/cpu-exec.c
    M accel/tcg/translate-all.c
    M hw/arm/sbsa-ref.c
    M hw/nvram/xlnx-efuse.c
    M linux-user/syscall.c
    M target/arm/ptw.c

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

target-arm queue:
 * hw/arm/sbsa-ref: set 'slots' property of xhci
 * linux-user: Remove pointless NULL check in clock_adjtime handling
 * ptw: Fix S1_ptw_translate() debug path
 * ptw: Account for FEAT_RME when applying {N}SW, SA bits
 * accel/tcg: Zero-pad PC in TCG CPU exec trace lines
 * hw/nvram: Avoid unnecessary Xilinx eFuse backstore write

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmS1OEUZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3syoEACBj2B+btKASbWs6c7iUF9R
# bsMhVVZbeNrW7try7fIjAcvRQV2X7cdqHMGeX0yP9M5EcqBfz4ptxDbxcmEsgm0h
# kZJudG8RuZ/gnw7wbwQ1TfJf4KgsBh49yZjlom2s8CgVStpbuFO4xz7ZucR65uhl
# PwLCgW0/DJR4SQTvDLnCOTTNbY/cuWCKK1CmuLMOE9IgozMNOxxW5wkryrvdllKs
# hYSCWM1jy9fJ4TRlhDJy8JI7+t4TEZN9ESwYGE6QDly8r3GoGMFj5Z9okUbGp3/V
# MYfkbz7l2/C5QxcpY5d0mJUR1HlP7McO7rWhtQjqmCPGpDVqMUu4/DClu6Q/2Ob3
# GRQcgztZ8a9wgVa6b4g1UBkqCnloT7WtU3wLVVmZGF3DO4k+oz53XPHb2zFtI3Xx
# pQ9LyABIoKCM5ql+/WaA3thtTC1qH6lZnjMBqVBx8+d0zKYWSG4wlnbihy70GOpw
# V5n0fQlTXr5WV4tZT/euP17odvnkictH7Vmj6zHUFkHdqHxwFwG0OCw1ZjBrMbzl
# 7kY9DxGA+5iKEZoTwHpxXYny70MnpdRIrUhpZ/4PNq68hzIAQ5Dqm29DtKjodM60
# M49CIo+O9E3+0xpcGPDtcuJ7bVPd/95o3usVjapDdBREGWcJsPS6PHK3MuAxgkHo
# B0y1egitacJYp3x91gYIRA==
# =JPpH
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 17 Jul 2023 01:47:01 PM BST
# 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]

* tag 'pull-target-arm-20230717' of 
https://git.linaro.org/people/pmaydell/qemu-arm:
  hw/nvram: Avoid unnecessary Xilinx eFuse backstore write
  accel/tcg: Zero-pad PC in TCG CPU exec trace lines
  target/arm/ptw.c: Account for FEAT_RME when applying {N}SW, SA bits
  target/arm: Fix S1_ptw_translate() debug path
  target/arm/ptw.c: Add comments to S1Translate struct fields
  linux-user: Remove pointless NULL check in clock_adjtime handling
  hw/arm/sbsa-ref: set 'slots' property of xhci

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


  Commit: 361d5397355276e3007825cc17217c1e4d4320f7
      
https://github.com/qemu/qemu/commit/361d5397355276e3007825cc17217c1e4d4320f7
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-07-17 (Mon, 17 Jul 2023)

  Changed paths:
    M block/nvme.c

  Log Message:
  -----------
  Merge tag 'block-pull-request' of https://gitlab.com/stefanha/qemu into 
staging

Pull request

Fix the hang in the nvme:// block driver during startup.

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCAAdFiEEhpWov9P5fNqsNXdanKSrs4Grc8gFAmS1QFoACgkQnKSrs4Gr
# c8i1KQgAqTW/rH+Mq9gC+MabLKXL8BW3KAp/lJqcaTrWRX+9O968E5RjF8fk5KzY
# CZGKGcFd2+r6poUaRrp2CcnDe9AU9r3NBfQIoVAnyWL8fwRBl5ERPZ3q6dmW63vX
# K8ckI9c0tHUNRuKpWiFCFlcEh7GGgl2pZhY1U50J1iaFTtvmDKl4Ls/2GqVUSiSY
# 4HbJ99qAYyZ/EUzbFhDPq4XFneqJzU0Gu4uL3bbVY+KlmGOp36W8wwPaKaD6yXWv
# mnv4DkoO3qlZ8tGegwk4SwePWN2Coec+KssMgYR1GWv0pbF8G4sX+UTeQin56Xny
# EY3lJy2z793lMjFVMDd7N8+uKAczsQ==
# =xvCy
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 17 Jul 2023 02:21:30 PM BST
# gpg:                using RSA key 8695A8BFD3F97CDAAC35775A9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" [full]
# gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>" [full]

* tag 'block-pull-request' of https://gitlab.com/stefanha/qemu:
  block/nvme: invoke blk_io_plug_call() outside q->lock

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


Compare: https://github.com/qemu/qemu/compare/ed8ad9728a9c...361d53973552



reply via email to

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