Skip to content
Snippets Groups Projects
  1. Feb 21, 2022
  2. Feb 16, 2022
  3. Feb 15, 2022
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/stefanha-gitlab/tags/block-pull-request' into staging · ad38520b
      Peter Maydell authored
      
      Pull request
      
      This contains coroutine poll size scaling, virtiofsd rseq seccomp for new glibc
      versions, and the QEMU C virtiofsd deprecation notice.
      
      # gpg: Signature made Mon 14 Feb 2022 17:14:21 GMT
      # gpg:                using RSA key 8695A8BFD3F97CDAAC35775A9CA4ABB381AB73C8
      # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" [full]
      # gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>" [full]
      # Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8
      
      * remotes/stefanha-gitlab/tags/block-pull-request:
        util: adjust coroutine pool size to virtio block queue
        Deprecate C virtiofsd
        tools/virtiofsd: Add rseq syscall to the seccomp allowlist
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      ad38520b
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/nvme/tags/nvme-next-pull-request' into staging · cc6721e4
      Peter Maydell authored
      
      hw/nvme updates
      
        - fix CVE-2021-3929
        - add zone random write area support
        - misc cleanups from Philippe
      
      # gpg: Signature made Mon 14 Feb 2022 08:01:34 GMT
      # gpg:                using RSA key 522833AA75E2DCE6A24766C04DE1AF316D4F0DE9
      # gpg: Good signature from "Klaus Jensen <its@irrelevant.dk>" [unknown]
      # gpg:                 aka "Klaus Jensen <k.jensen@samsung.com>" [unknown]
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: DDCA 4D9C 9EF9 31CC 3468  4272 63D5 6FC5 E55D A838
      #      Subkey fingerprint: 5228 33AA 75E2 DCE6 A247  66C0 4DE1 AF31 6D4F 0DE9
      
      * remotes/nvme/tags/nvme-next-pull-request:
        hw/nvme: add support for zoned random write area
        hw/nvme: add ozcs enum
        hw/nvme: add struct for zone management send
        hw/nvme/ctrl: Pass buffers as 'void *' types
        hw/nvme/ctrl: Have nvme_addr_write() take const buffer
        hw/nvme: fix CVE-2021-3929
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      cc6721e4
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/jasowang/tags/net-pull-request' into staging · e56d873f
      Peter Maydell authored
      
      # gpg: Signature made Mon 14 Feb 2022 03:51:14 GMT
      # gpg:                using RSA key EF04965B398D6211
      # gpg: Good signature from "Jason Wang (Jason Wang on RedHat) <jasowang@redhat.com>" [marginal]
      # gpg: WARNING: This key is not certified with sufficiently trusted signatures!
      # gpg:          It is not certain that the signature belongs to the owner.
      # Primary key fingerprint: 215D 46F4 8246 689E C77F  3562 EF04 965B 398D 6211
      
      * remotes/jasowang/tags/net-pull-request:
        net/eth: Don't consider ESP to be an IPv6 option header
        hw/net: e1000e: Clear ICR on read when using non MSI-X interrupts
        net/filter: Optimize filter_send to coroutine
        net/colo-compare.c: Update the default value comments
        net/colo-compare.c: Optimize compare order for performance
        net: Fix uninitialized data usage
        net/tap: Set return code on failure
        hw/net/vmxnet3: Log guest-triggerable errors using LOG_GUEST_ERROR
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      e56d873f
  4. Feb 14, 2022
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/kwolf-gitlab/tags/for-upstream' into staging · 2d88a3a5
      Peter Maydell authored
      
      Block layer patches
      
      - Fix crash in blockdev-reopen with iothreads
      - fdc-isa: Respect QOM properties when building AML
      
      # gpg: Signature made Fri 11 Feb 2022 17:44:52 GMT
      # gpg:                using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
      # gpg:                issuer "kwolf@redhat.com"
      # gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>" [full]
      # Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6
      
      * remotes/kwolf-gitlab/tags/for-upstream:
        hw/block/fdc-isa: Respect QOM properties when building AML
        iotests: Test blockdev-reopen with iothreads and throttling
        block: Lock AioContext for drain_end in blockdev-reopen
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      2d88a3a5
    • Hiroki Narukawa's avatar
      util: adjust coroutine pool size to virtio block queue · 4c41c69e
      Hiroki Narukawa authored
      
      Coroutine pool size was 64 from long ago, and the basis was organized in the commit message in 4d68e86b.
      
      At that time, virtio-blk queue-size and num-queue were not configuable, and equivalent values were 128 and 1.
      
      Coroutine pool size 64 was fine then.
      
      Later queue-size and num-queue got configuable, and default values were increased.
      
      Coroutine pool with size 64 exhausts frequently with random disk IO in new size, and slows down.
      
      This commit adjusts coroutine pool size adaptively with new values.
      
      This commit adds 64 by default, but now coroutine is not only for block devices,
      
      and is not too much burdon comparing with new default.
      
      pool size of 128 * vCPUs.
      
      Signed-off-by: default avatarHiroki Narukawa <hnarukaw@yahoo-corp.jp>
      Message-id: 20220214115302.13294-2-hnarukaw@yahoo-corp.jp
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      4c41c69e
    • Dr. David Alan Gilbert's avatar
      Deprecate C virtiofsd · 34deee7b
      Dr. David Alan Gilbert authored
      
      There's a nice new Rust implementation out there; recommend people
      do new work on that.
      
      Signed-off-by: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
      Reviewed-by: default avatarDaniel P. Berrangé <berrange@redhat.com>
      Message-id: 20220210174714.19843-1-dgilbert@redhat.com
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      34deee7b
    • Christian Ehrhardt's avatar
      tools/virtiofsd: Add rseq syscall to the seccomp allowlist · 7b223e38
      Christian Ehrhardt authored
      The virtiofsd currently crashes when used with glibc 2.35.
      That is due to the rseq system call being added to every thread
      creation [1][2].
      
      [1]: https://www.efficios.com/blog/2019/02/08/linux-restartable-sequences/
      [2]: https://sourceware.org/pipermail/libc-alpha/2022-February/136040.html
      
      
      
      This happens not at daemon start, but when a guest connects
      
          /usr/lib/qemu/virtiofsd -f --socket-path=/tmp/testvfsd -o sandbox=chroot \
              -o source=/var/guests/j-virtiofs --socket-group=kvm
          virtio_session_mount: Waiting for vhost-user socket connection...
          # start ok, now guest will connect
          virtio_session_mount: Received vhost-user socket connection
          virtio_loop: Entry
          fv_queue_set_started: qidx=0 started=1
          fv_queue_set_started: qidx=1 started=1
          Bad system call (core dumped)
      
      We have to put rseq on the seccomp allowlist to avoid that the daemon
      is crashing in this case.
      
      Reported-by: default avatarMichael Hudson-Doyle <michael.hudson@canonical.com>
      Signed-off-by: default avatarChristian Ehrhardt <christian.ehrhardt@canonical.com>
      Reviewed-by: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
      Message-id: 20220209111456.3328420-1-christian.ehrhardt@canonical.com
      
      [Moved rseq to its alphabetically ordered position in the seccomp
      allowlist.
      --Stefan]
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      7b223e38
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/rth-gitlab/tags/pull-tcg-20220211' into staging · 50a75ff6
      Peter Maydell authored
      
      Fix safe_syscall_base for sparc64.
      Fix host signal handling for sparc64-linux.
      Speedups for jump cache and work list probing.
      Fix for exception replays.
      Raise guest SIGBUS for user-only misaligned accesses.
      
      # gpg: Signature made Fri 11 Feb 2022 01:27:16 GMT
      # gpg:                using RSA key 7A481E78868B4DB6A85A05C064DF38E8AF7E215F
      # gpg:                issuer "richard.henderson@linaro.org"
      # gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" [full]
      # Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F
      
      * remotes/rth-gitlab/tags/pull-tcg-20220211: (34 commits)
        tests/tcg/multiarch: Add sigbus.c
        tcg/sparc: Support unaligned access for user-only
        tcg/sparc: Add tcg_out_jmpl_const for better tail calls
        tcg/sparc: Use the constant pool for 64-bit constants
        tcg/sparc: Convert patch_reloc to return bool
        tcg/sparc: Improve code gen for shifted 32-bit constants
        tcg/sparc: Add scratch argument to tcg_out_movi_int
        tcg/sparc: Split out tcg_out_movi_imm32
        tcg/sparc: Use tcg_out_movi_imm13 in tcg_out_addsub2_i64
        tcg/mips: Support unaligned access for softmmu
        tcg/mips: Support unaligned access for user-only
        tcg/arm: Support raising sigbus for user-only
        tcg/arm: Reserve a register for guest_base
        tcg/arm: Support unaligned access for softmmu
        tcg/arm: Check alignment for ldrd and strd
        tcg/arm: Remove use_armv6_instructions
        tcg/arm: Remove use_armv5t_instructions
        tcg/arm: Drop support for armv4 and armv5 hosts
        tcg/loongarch64: Support raising sigbus for user-only
        tcg/tci: Support raising sigbus for user-only
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      50a75ff6
    • Klaus Jensen's avatar
      hw/nvme: add support for zoned random write area · e321b4cd
      Klaus Jensen authored
      
      Add support for TP 4076 ("Zoned Random Write Area"), v2021.08.23
      ("Ratified").
      
      This adds three new namespace parameters: "zoned.numzrwa" (number of
      zrwa resources, i.e. number of zones that can have a zrwa),
      "zoned.zrwas" (zrwa size in LBAs), "zoned.zrwafg" (granularity in LBAs
      for flushes).
      
      Reviewed-by: default avatarKeith Busch <kbusch@kernel.org>
      Signed-off-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      e321b4cd
    • Klaus Jensen's avatar
      hw/nvme: add ozcs enum · 25872031
      Klaus Jensen authored
      
      Add enumeration for OZCS values.
      
      Reviewed-by: default avatarKeith Busch <kbusch@kernel.org>
      Signed-off-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      25872031
    • Klaus Jensen's avatar
      hw/nvme: add struct for zone management send · 6190d92f
      Klaus Jensen authored
      
      Add struct for Zone Management Send in preparation for more zone send
      flags.
      
      Reviewed-by: default avatarKeith Busch <kbusch@kernel.org>
      Signed-off-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      6190d92f
    • Philippe Mathieu-Daudé's avatar
      hw/nvme/ctrl: Pass buffers as 'void *' types · 8d3a17be
      Philippe Mathieu-Daudé authored
      
      These buffers can be anything, not an array of chars,
      so use the 'void *' type for them.
      
      Signed-off-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Reviewed-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      Signed-off-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      8d3a17be
    • Philippe Mathieu-Daudé's avatar
      hw/nvme/ctrl: Have nvme_addr_write() take const buffer · e080ce86
      Philippe Mathieu-Daudé authored
      
      The 'buf' argument is not modified, so better pass it as const type.
      
      Signed-off-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Reviewed-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      Signed-off-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      e080ce86
    • Klaus Jensen's avatar
      hw/nvme: fix CVE-2021-3929 · 736b0164
      Klaus Jensen authored
      
      This fixes CVE-2021-3929 "locally" by denying DMA to the iomem of the
      device itself. This still allows DMA to MMIO regions of other devices
      (e.g. doing P2P DMA to the controller memory buffer of another NVMe
      device).
      
      Fixes: CVE-2021-3929
      Reported-by: default avatarQiuhao Li <Qiuhao.Li@outlook.com>
      Reviewed-by: default avatarKeith Busch <kbusch@kernel.org>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
      Signed-off-by: default avatarKlaus Jensen <k.jensen@samsung.com>
      736b0164
    • Thomas Jansen's avatar
      net/eth: Don't consider ESP to be an IPv6 option header · 9d6267b2
      Thomas Jansen authored
      The IPv6 option headers all have in common that they start with some
      common fields, in particular the type of the next header followed by the
      extention header length. This is used to traverse the list of the
      options. The ESP header does not follow that format, which can break the
      IPv6 option header traversal code in eth_parse_ipv6_hdr().
      
      The effect of that is that network interfaces such as vmxnet3 that use
      the following call chain
        eth_is_ip6_extension_header_type
        eth_parse_ipv6_hdr
        net_tx_pkt_parse_headers
        net_tx_pkt_parse
        vmxnet3_process_tx_queue
      to send packets from the VM out to the host will drop packets of the
      following structure:
        Ethernet-Header(IPv6-Header(ESP(encrypted data)))
      
      Note that not all types of network interfaces use the net_tx_pkt_parse
      function though, leading to inconsistent behavior regarding sending
      those packets. The e1000 network interface for example does not suffer
      from this limitation.
      
      By not considering ESP to be an IPv6 header we can allow sending those
      packets out to the host on all types of network interfaces.
      
      Fixes: 75020a70 ("Common definitions for VMWARE devices")
      Resolves: https://gitlab.com/qemu-project/qemu/-/issues/149
      Buglink: https://bugs.launchpad.net/qemu/+bug/1758091
      
      
      Signed-off-by: default avatarThomas Jansen <mithi@mithi.net>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      9d6267b2
    • Nick Hudson's avatar
      hw/net: e1000e: Clear ICR on read when using non MSI-X interrupts · 87037421
      Nick Hudson authored
      
      In section 7.4.3 of the 82574 datasheet it states that
      
          "In systems that do not support MSI-X, reading the ICR
           register clears it's bits..."
      
      Some OSes rely on this.
      
      Signed-off-by: default avatarNick Hudson <skrll@netbsd.org>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      87037421
    • Rao Lei's avatar
      net/filter: Optimize filter_send to coroutine · 61138296
      Rao Lei authored
      
      This patch is to improve the logic of QEMU main thread sleep code in
      qemu_chr_write_buffer() where it can be blocked and can't run other
      coroutines during COLO IO stress test.
      
      Our approach is to put filter_send() in a coroutine. In this way,
      filter_send() will call qemu_coroutine_yield() in qemu_co_sleep_ns(),
      so that it can be scheduled out and QEMU main thread has opportunity to
      run other tasks.
      
      Signed-off-by: default avatarLei Rao <lei.rao@intel.com>
      Signed-off-by: default avatarZhang Chen <chen.zhang@intel.com>
      Reviewed-by: default avatarLi Zhijian <lizhijian@fujitsu.com>
      Reviewed-by: default avatarZhang Chen <chen.zhang@intel.com>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      61138296
    • Zhang Chen's avatar
      net/colo-compare.c: Update the default value comments · 09313cdb
      Zhang Chen authored
      
      Make the comments consistent with the REGULAR_PACKET_CHECK_MS.
      
      Signed-off-by: default avatarZhang Chen <chen.zhang@intel.com>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      09313cdb
    • Zhang Chen's avatar
      net/colo-compare.c: Optimize compare order for performance · a5f038e2
      Zhang Chen authored
      
      COLO-compare use the glib function g_queue_find_custom to dump
      another VM's networking packet to compare. But this function always
      start find from the queue->head(here is the newest packet), It will
      reduce the success rate of comparison. So this patch reversed
      the order of the queues for performance.
      
      Signed-off-by: default avatarZhang Chen <chen.zhang@intel.com>
      Reported-by: default avatarleirao <lei.rao@intel.com>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      a5f038e2
    • Peter Foley's avatar
      net: Fix uninitialized data usage · e29919c9
      Peter Foley authored
      
      e.g.
      1109 15:16:20.151506 Uninitialized bytes in ioctl_common_pre at offset 0 inside [0x7ffc516af9b8, 4)
       1109 15:16:20.151659 ==588974==WARNING: MemorySanitizer: use-of-uninitialized-value
       1109 15:16:20.312923     #0 0x5639b88acb21 in tap_probe_vnet_hdr_len third_party/qemu/net/tap-linux.c:183:9
       1109 15:16:20.312952     #1 0x5639b88afd66 in net_tap_fd_init third_party/qemu/net/tap.c:409:9
       1109 15:16:20.312954     #2 0x5639b88b2d1b in net_init_tap_one third_party/qemu/net/tap.c:681:19
       1109 15:16:20.312956     #3 0x5639b88b16a8 in net_init_tap third_party/qemu/net/tap.c:912:13
       1109 15:16:20.312957     #4 0x5639b8890175 in net_client_init1 third_party/qemu/net/net.c:1110:9
       1109 15:16:20.312958     #5 0x5639b888f912 in net_client_init third_party/qemu/net/net.c:1208:15
       1109 15:16:20.312960     #6 0x5639b8894aa5 in net_param_nic third_party/qemu/net/net.c:1588:11
       1109 15:16:20.312961     #7 0x5639b900cd18 in qemu_opts_foreach third_party/qemu/util/qemu-option.c:1135:14
       1109 15:16:20.312962     #8 0x5639b889393c in net_init_clients third_party/qemu/net/net.c:1612:9
       1109 15:16:20.312964     #9 0x5639b717aaf3 in qemu_create_late_backends third_party/qemu/softmmu/vl.c:1962:5
       1109 15:16:20.312965     #10 0x5639b717aaf3 in qemu_init third_party/qemu/softmmu/vl.c:3694:5
       1109 15:16:20.312967     #11 0x5639b71083b8 in main third_party/qemu/softmmu/main.c:49:5
       1109 15:16:20.312968     #12 0x7f464de1d8d2 in __libc_start_main (/usr/grte/v5/lib64/libc.so.6+0x628d2)
       1109 15:16:20.312969     #13 0x5639b6bbd389 in _start /usr/grte/v5/debug-src/src/csu/../sysdeps/x86_64/start.S:120
       1109 15:16:20.312970
       1109 15:16:20.312975   Uninitialized value was stored to memory at
       1109 15:16:20.313393     #0 0x5639b88acbee in tap_probe_vnet_hdr_len third_party/qemu/net/tap-linux.c
       1109 15:16:20.313396     #1 0x5639b88afd66 in net_tap_fd_init third_party/qemu/net/tap.c:409:9
       1109 15:16:20.313398     #2 0x5639b88b2d1b in net_init_tap_one third_party/qemu/net/tap.c:681:19
       1109 15:16:20.313399     #3 0x5639b88b16a8 in net_init_tap third_party/qemu/net/tap.c:912:13
       1109 15:16:20.313400     #4 0x5639b8890175 in net_client_init1 third_party/qemu/net/net.c:1110:9
       1109 15:16:20.313401     #5 0x5639b888f912 in net_client_init third_party/qemu/net/net.c:1208:15
       1109 15:16:20.313403     #6 0x5639b8894aa5 in net_param_nic third_party/qemu/net/net.c:1588:11
       1109 15:16:20.313404     #7 0x5639b900cd18 in qemu_opts_foreach third_party/qemu/util/qemu-option.c:1135:14
       1109 15:16:20.313405     #8 0x5639b889393c in net_init_clients third_party/qemu/net/net.c:1612:9
       1109 15:16:20.313407     #9 0x5639b717aaf3 in qemu_create_late_backends third_party/qemu/softmmu/vl.c:1962:5
       1109 15:16:20.313408     #10 0x5639b717aaf3 in qemu_init third_party/qemu/softmmu/vl.c:3694:5
       1109 15:16:20.313409     #11 0x5639b71083b8 in main third_party/qemu/softmmu/main.c:49:5
       1109 15:16:20.313410     #12 0x7f464de1d8d2 in __libc_start_main (/usr/grte/v5/lib64/libc.so.6+0x628d2)
       1109 15:16:20.313412     #13 0x5639b6bbd389 in _start /usr/grte/v5/debug-src/src/csu/../sysdeps/x86_64/start.S:120
       1109 15:16:20.313413
       1109 15:16:20.313417   Uninitialized value was stored to memory at
       1109 15:16:20.313791     #0 0x5639b88affbd in net_tap_fd_init third_party/qemu/net/tap.c:400:26
       1109 15:16:20.313826     #1 0x5639b88b2d1b in net_init_tap_one third_party/qemu/net/tap.c:681:19
       1109 15:16:20.313829     #2 0x5639b88b16a8 in net_init_tap third_party/qemu/net/tap.c:912:13
       1109 15:16:20.313831     #3 0x5639b8890175 in net_client_init1 third_party/qemu/net/net.c:1110:9
       1109 15:16:20.313836     #4 0x5639b888f912 in net_client_init third_party/qemu/net/net.c:1208:15
       1109 15:16:20.313838     #5 0x5639b8894aa5 in net_param_nic third_party/qemu/net/net.c:1588:11
       1109 15:16:20.313839     #6 0x5639b900cd18 in qemu_opts_foreach third_party/qemu/util/qemu-option.c:1135:14
       1109 15:16:20.313841     #7 0x5639b889393c in net_init_clients third_party/qemu/net/net.c:1612:9
       1109 15:16:20.313843     #8 0x5639b717aaf3 in qemu_create_late_backends third_party/qemu/softmmu/vl.c:1962:5
       1109 15:16:20.313844     #9 0x5639b717aaf3 in qemu_init third_party/qemu/softmmu/vl.c:3694:5
       1109 15:16:20.313845     #10 0x5639b71083b8 in main third_party/qemu/softmmu/main.c:49:5
       1109 15:16:20.313846     #11 0x7f464de1d8d2 in __libc_start_main (/usr/grte/v5/lib64/libc.so.6+0x628d2)
       1109 15:16:20.313847     #12 0x5639b6bbd389 in _start /usr/grte/v5/debug-src/src/csu/../sysdeps/x86_64/start.S:120
       1109 15:16:20.313849
       1109 15:16:20.313851   Uninitialized value was created by an allocation of 'ifr' in the stack frame of function 'tap_probe_vnet_hdr'
       1109 15:16:20.313855     #0 0x5639b88ac680 in tap_probe_vnet_hdr third_party/qemu/net/tap-linux.c:151
       1109 15:16:20.313856
       1109 15:16:20.313878 SUMMARY: MemorySanitizer: use-of-uninitialized-value third_party/qemu/net/tap-linux.c:183:9 in tap_probe_vnet_hdr_len
      
      Fixes: dc69004c ("net: move tap_probe_vnet_hdr() to tap-linux.c")
      Reviewed-by: default avatarHao Wu <wuhaotsh@google.com>
      Reviewed-by: default avatarPatrick Venture <venture@google.com>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
      Signed-off-by: default avatarPeter Foley <pefoley@google.com>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      e29919c9
    • Peter Foley's avatar
      net/tap: Set return code on failure · 41bcea7b
      Peter Foley authored
      
      Match the other error handling in this function.
      
      Fixes: e7b347d0 ("net: detect errors from probing vnet hdr flag for TAP devices")
      
      Reviewed-by: default avatarPatrick Venture <venture@google.com>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
      Signed-off-by: default avatarPeter Foley <pefoley@google.com>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      41bcea7b
    • Philippe Mathieu-Daudé's avatar
      hw/net/vmxnet3: Log guest-triggerable errors using LOG_GUEST_ERROR · f3e5a175
      Philippe Mathieu-Daudé authored
      
      The "Interrupt Cause" register (VMXNET3_REG_ICR) is read-only.
      Write accesses are ignored. Log them with as LOG_GUEST_ERROR
      instead of aborting:
      
        [R +0.239743] writeq 0xe0002031 0x46291a5a55460800
        ERROR:hw/net/vmxnet3.c:1819:vmxnet3_io_bar1_write: code should not be reached
        Thread 1 "qemu-system-i38" received signal SIGABRT, Aborted.
        (gdb) bt
        #3  0x74c397d3 in __GI_abort () at abort.c:79
        #4  0x76d3cd4c in g_assertion_message (domain=<optimized out>, file=<optimized out>, line=<optimized out>, func=<optimized out>, message=<optimized out>) at ../glib/gtestutils.c:3223
        #5  0x76d9d45f in g_assertion_message_expr
            (domain=0x0, file=0x59fc2e53 "hw/net/vmxnet3.c", line=1819, func=0x59fc11e0 <__func__.vmxnet3_io_bar1_write> "vmxnet3_io_bar1_write", expr=<optimized out>)
            at ../glib/gtestutils.c:3249
        #6  0x57e80a3a in vmxnet3_io_bar1_write (opaque=0x62814100, addr=56, val=70, size=4) at hw/net/vmxnet3.c:1819
        #7  0x58c2d894 in memory_region_write_accessor (mr=0x62816b90, addr=56, value=0x7fff9450, size=4, shift=0, mask=4294967295, attrs=...) at softmmu/memory.c:492
        #8  0x58c2d1d2 in access_with_adjusted_size (addr=56, value=0x7fff9450, size=1, access_size_min=4, access_size_max=4, access_fn=
            0x58c2d290 <memory_region_write_accessor>, mr=0x62816b90, attrs=...) at softmmu/memory.c:554
        #9  0x58c2bae7 in memory_region_dispatch_write (mr=0x62816b90, addr=56, data=70, op=MO_8, attrs=...) at softmmu/memory.c:1504
        #10 0x58bfd034 in flatview_write_continue (fv=0x606000181700, addr=0xe0002038, attrs=..., ptr=0x7fffb9e0, len=1, addr1=56, l=1, mr=0x62816b90)
            at softmmu/physmem.c:2782
        #11 0x58beba00 in flatview_write (fv=0x606000181700, addr=0xe0002031, attrs=..., buf=0x7fffb9e0, len=8) at softmmu/physmem.c:2822
        #12 0x58beb589 in address_space_write (as=0x608000015f20, addr=0xe0002031, attrs=..., buf=0x7fffb9e0, len=8) at softmmu/physmem.c:2914
      
      Reported-by: default avatarDike <dike199774@qq.com>
      Reported-by: default avatarDuhao <504224090@qq.com>
      BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2032932
      
      
      Signed-off-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      f3e5a175
  5. Feb 13, 2022
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220210' into staging · cc5ce8b8
      Peter Maydell authored
      
      ppc-7.0 queue
      
      * Exception model rework (Fabiano)
      * Unused CPU models removal (Fabiano and Cédric)
      * Fix for VOF installation (Alexey)
      * Misc fixes
      
      # gpg: Signature made Thu 10 Feb 2022 12:59:07 GMT
      # gpg:                using RSA key A0F66548F04895EBFE6B0B6051A343C7CFFBECA1
      # gpg: Good signature from "Cédric Le Goater <clg@kaod.org>" [undefined]
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: A0F6 6548 F048 95EB FE6B  0B60 51A3 43C7 CFFB ECA1
      
      * remotes/legoater/tags/pull-ppc-20220210: (42 commits)
        spapr/vof: Install rom and nvram binaries
        docs: rstfy confidential guest documentation
        target/ppc: Change VSX instructions behavior to fill with zeros
        target/ppc: books: Remove excp_model argument from ppc_excp_apply_ail
        target/ppc: Assert if MSR bits differ from msr_mask during exceptions
        target/ppc: powerpc_excp: Move common code to the caller function
        target/ppc: Remove powerpc_excp_legacy
        target/ppc: 7xx: Set SRRs directly in exception code
        target/ppc: 7xx: Software TLB cleanup
        target/ppc: 7xx: System Reset cleanup
        target/ppc: 7xx: System Call exception cleanup
        target/ppc: 7xx: Program exception cleanup
        target/ppc: 7xx: External interrupt cleanup
        target/ppc: 7xx: Machine Check exception cleanup
        target/ppc: Simplify powerpc_excp_7xx
        target/ppc: Introduce powerpc_excp_7xx
        target/ppc: Merge 7x5 and 7x0 exception model IDs
        target/ppc: 6xx: Set SRRs directly in exception code
        target/ppc: 6xx: Software TLB exceptions cleanup
        target/ppc: 6xx: System Reset interrupt cleanup
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      cc5ce8b8
  6. Feb 12, 2022
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/vsementsov/tags/pull-nbd-2022-02-09-v2' into staging · 48033ad6
      Peter Maydell authored
      
      nbd: handle AioContext change correctly
      
      v2: add my s-o-b marks to each commit
      
      # gpg: Signature made Fri 11 Feb 2022 13:14:55 GMT
      # gpg:                using RSA key 8B9C26CDB2FD147C880E86A1561F24C1F19F79FB
      # gpg: Good signature from "Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>" [unknown]
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: 8B9C 26CD B2FD 147C 880E  86A1 561F 24C1 F19F 79FB
      
      * remotes/vsementsov/tags/pull-nbd-2022-02-09-v2:
        iotests/281: Let NBD connection yield in iothread
        block/nbd: Move s->ioc on AioContext change
        iotests/281: Test lingering timers
        iotests.py: Add QemuStorageDaemon class
        block/nbd: Assert there are no timers when closed
        block/nbd: Delete open timer when done
        block/nbd: Delete reconnect delay timer when done
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      48033ad6
  7. Feb 11, 2022
Loading