qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] d2aea7: usb: Remove "-usbdevice ccid"


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] d2aea7: usb: Remove "-usbdevice ccid"
Date: Fri, 26 Mar 2021 05:59:36 -0700

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: d2aea775d4ab1a3d8fb92587881dc6fa55819f62
      
https://github.com/qemu/qemu/commit/d2aea775d4ab1a3d8fb92587881dc6fa55819f62
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M docs/system/removed-features.rst
    M hw/usb/dev-smartcard-reader.c
    M qemu-options.hx

  Log Message:
  -----------
  usb: Remove "-usbdevice ccid"

"-usbdevice ccid" was not documented and -usbdevice itself was marked
as deprecated before QEMU v6.0. And searching for "-usbdevice ccid"
in the internet does not show any useful results, so likely nobody
was using the ccid device via the -usbdevice option. Remove it now.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210311092829.1479051-1-thuth@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 0c27b9c5687fd276e26c3a95ca6d89f792fc7a1c
      
https://github.com/qemu/qemu/commit/0c27b9c5687fd276e26c3a95ca6d89f792fc7a1c
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M contrib/vhost-user-gpu/meson.build
    M contrib/vhost-user-gpu/virgl.c

  Log Message:
  -----------
  vhost-user-gpu: glFlush before notifying clients

For similar reasons as commit 3af1671852 ("spice: flush on GL update
before notifying client"), vhost-user-gpu must ensure the GL state is
flushed before sharing its rendering result.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210312100108.2706195-3-marcandre.lureau@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 96ee096a1332086285c98d92f750ea0c3cb32564
      
https://github.com/qemu/qemu/commit/96ee096a1332086285c98d92f750ea0c3cb32564
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M contrib/vhost-user-gpu/vhost-user-gpu.c
    M contrib/vhost-user-gpu/vugbm.c
    M contrib/vhost-user-gpu/vugbm.h

  Log Message:
  -----------
  vhost-user-gpu: fix vugbm_device_init fallback

vugbm implements GBM device wrapping, udmabuf and memory fallback.
However, the fallback/detection logic is flawed, as if "/dev/udmabuf"
failed to be opened, it will not initialize vugbm and crash later.

Rework the vugbm_device_init() logic to initialize correctly in all
cases.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210312100108.2706195-4-marcandre.lureau@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 59be75e7d8693b953c072487b1fb6cef2b7bb41a
      
https://github.com/qemu/qemu/commit/59be75e7d8693b953c072487b1fb6cef2b7bb41a
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M contrib/vhost-user-gpu/vhost-user-gpu.c

  Log Message:
  -----------
  vhost-user-gpu: fix cursor move/update

"move" is incorrectly initialized.

Fix it by using a switch statement and also treating unknown commands
with a fallback.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210312100108.2706195-5-marcandre.lureau@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 2da6e36b3390501b1e3f549a87a58871be447a94
      
https://github.com/qemu/qemu/commit/2da6e36b3390501b1e3f549a87a58871be447a94
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M hw/usb/hcd-ehci-sysbus.c

  Log Message:
  -----------
  hw/usb/hcd-ehci-sysbus: Free USBPacket on instance finalize()

When building with --enable-sanitizers we get:

  Direct leak of 32 byte(s) in 2 object(s) allocated from:
      #0 0x5618479ec7cf in malloc (qemu-system-aarch64+0x233b7cf)
      #1 0x7f675745f958 in g_malloc (/lib64/libglib-2.0.so.0+0x58958)
      #2 0x561847f02ca2 in usb_packet_init hw/usb/core.c:531:5
      #3 0x561848df4df4 in usb_ehci_init hw/usb/hcd-ehci.c:2575:5
      #4 0x561847c119ac in ehci_sysbus_init hw/usb/hcd-ehci-sysbus.c:73:5
      #5 0x56184a5bdab8 in object_init_with_type qom/object.c:375:9
      #6 0x56184a5bd955 in object_init_with_type qom/object.c:371:9
      #7 0x56184a5a2bda in object_initialize_with_type qom/object.c:517:5
      #8 0x56184a5a24d5 in object_initialize qom/object.c:536:5
      #9 0x56184a5a2f6c in object_initialize_child_with_propsv 
qom/object.c:566:5
      #10 0x56184a5a2e60 in object_initialize_child_with_props 
qom/object.c:549:10
      #11 0x56184a5a3a1e in object_initialize_child_internal qom/object.c:603:5
      #12 0x561849542d18 in npcm7xx_init hw/arm/npcm7xx.c:427:5

Similarly to commit d710e1e7bd3 ("usb: ehci: fix memory leak in
ehci"), fix by calling usb_ehci_finalize() to free the USBPacket.

Fixes: 7341ea075c0
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210323183701.281152-1-f4bug@amsat.org>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: d4c603d7be2e4173252c5b55e62d30ddd26edaca
      
https://github.com/qemu/qemu/commit/d4c603d7be2e4173252c5b55e62d30ddd26edaca
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M include/hw/s390x/css.h
    M include/hw/s390x/s390_flic.h
    M target/s390x/cpu.h

  Log Message:
  -----------
  s390x: move S390_ADAPTER_SUPPRESSIBLE

The definition S390_ADAPTER_SUPPRESSIBLE was moved to "cpu.h", per
suggestion of Thomas Huth. From interface design perspective, IMHO, not
a good thing as it belongs to the public interface of
css_register_io_adapters(). We did this because CONFIG_KVM requeires
NEED_CPU_H and Thomas, and other commenters did not like the
consequences of that.

Moving the interrupt related declarations to s390_flic.h was suggested
by Cornelia Huck.

Signed-off-by: Halil Pasic <pasic@linux.ibm.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Tested-by: Halil Pasic <pasic@linux.ibm.com>
Message-Id: <20210317095622.2839895-2-kraxel@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 2dd9d8cfb4f3bd30d9cdfc2edba5cb7ee5917f4b
      
https://github.com/qemu/qemu/commit/2dd9d8cfb4f3bd30d9cdfc2edba5cb7ee5917f4b
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M hw/s390x/virtio-ccw.c
    M hw/s390x/virtio-ccw.h

  Log Message:
  -----------
  s390x: add have_virtio_ccw

Introduce a symbol which can be used to prevent ccw modules
being loaded into system emulators without ccw support.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Tested-by: Halil Pasic <pasic@linux.ibm.com>
Message-Id: <20210317095622.2839895-3-kraxel@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: adcf33a504de29feb720736051dc32889314c9e6
      
https://github.com/qemu/qemu/commit/adcf33a504de29feb720736051dc32889314c9e6
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M hw/s390x/meson.build
    M hw/s390x/virtio-ccw-gpu.c
    M util/module.c

  Log Message:
  -----------
  s390x: modularize virtio-gpu-ccw

Since the virtio-gpu-ccw device depends on the hw-display-virtio-gpu
module, which provides the type virtio-gpu-device, packaging the
hw-display-virtio-gpu module as a separate package that may or may not
be installed along with the qemu package leads to problems. Namely if
the hw-display-virtio-gpu is absent, qemu continues to advertise
virtio-gpu-ccw, but it aborts not only when one attempts using
virtio-gpu-ccw, but also when libvirtd's capability probing tries
to instantiate the type to introspect it.

Let us thus introduce a module named hw-s390x-virtio-gpu-ccw that
is going to provide the virtio-gpu-ccw device. The hw-s390x prefix
was chosen because it is not a portable device.

With virtio-gpu-ccw built as a module, the correct way to package a
modularized qemu is to require that hw-display-virtio-gpu must be
installed whenever the module hw-s390x-virtio-gpu-ccw.

Signed-off-by: Halil Pasic <pasic@linux.ibm.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Tested-by: Halil Pasic <pasic@linux.ibm.com>
Message-Id: <20210317095622.2839895-4-kraxel@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: db0b034185824ac33e1a85ba62ab2030eb17b00d
      
https://github.com/qemu/qemu/commit/db0b034185824ac33e1a85ba62ab2030eb17b00d
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M hw/usb/hcd-ehci.c

  Log Message:
  -----------
  hw/usb/hcd-ehci: Fix crash when showing help of EHCI devices

QEMU crashes with certain targets when trying to show the help
output of EHCI devices:

$ ./qemu-system-aarch64 -device ich9-usb-ehci1,help
qemu-system-aarch64: ../../devel/qemu/softmmu/physmem.c:1154: phys_section_add:
 Assertion `map->sections_nb < TARGET_PAGE_SIZE' failed.
Aborted (core dumped)

This happens because the device is doing things at "instance_init" time
that should be done at "realize" time instead. So move the related code
to the realize() function instead. (NB: This now also matches the
memory_region_del_subregion() calls which are done in usb_ehci_unrealize(),
and not during finalize()).

Suggested-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210326095155.1994604-1-thuth@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 7b9a3c9f94bcac23c534bc9f42a9e914b433b299
      
https://github.com/qemu/qemu/commit/7b9a3c9f94bcac23c534bc9f42a9e914b433b299
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2021-03-26 (Fri, 26 Mar 2021)

  Changed paths:
    M contrib/vhost-user-gpu/meson.build
    M contrib/vhost-user-gpu/vhost-user-gpu.c
    M contrib/vhost-user-gpu/virgl.c
    M contrib/vhost-user-gpu/vugbm.c
    M contrib/vhost-user-gpu/vugbm.h
    M docs/system/removed-features.rst
    M hw/s390x/meson.build
    M hw/s390x/virtio-ccw-gpu.c
    M hw/s390x/virtio-ccw.c
    M hw/s390x/virtio-ccw.h
    M hw/usb/dev-smartcard-reader.c
    M hw/usb/hcd-ehci-sysbus.c
    M hw/usb/hcd-ehci.c
    M include/hw/s390x/css.h
    M include/hw/s390x/s390_flic.h
    M qemu-options.hx
    M target/s390x/cpu.h
    M util/module.c

  Log Message:
  -----------
  Merge remote-tracking branch 
'remotes/kraxel/tags/fixes-20210326-pull-request' into staging

fixes for usb, virtio-gpu and vhost-gpu

# gpg: Signature made Fri 26 Mar 2021 12:49:14 GMT
# gpg:                using RSA key A0328CFFB93A17A79901FE7D4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full]
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>" [full]
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/fixes-20210326-pull-request:
  hw/usb/hcd-ehci: Fix crash when showing help of EHCI devices
  s390x: modularize virtio-gpu-ccw
  s390x: add have_virtio_ccw
  s390x: move S390_ADAPTER_SUPPRESSIBLE
  hw/usb/hcd-ehci-sysbus: Free USBPacket on instance finalize()
  vhost-user-gpu: fix cursor move/update
  vhost-user-gpu: fix vugbm_device_init fallback
  vhost-user-gpu: glFlush before notifying clients
  usb: Remove "-usbdevice ccid"

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/63ad23fa240b...7b9a3c9f94bc



reply via email to

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