Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: qemu/qemu
base: 7c18f2d66352
Choose a base ref
...
head repository: qemu/qemu
compare: 1b0e90a87b46
Choose a head ref
  • 17 commits
  • 21 files changed
  • 8 contributors

Commits on May 1, 2023

  1. softmmu: Tidy dirtylimit_dirty_ring_full_time

    Drop inline marker: let compiler decide.
    
    Change return type to uint64_t: this matches the computation in the
    return statement and the local variable assignment in the caller.
    
    Rename local to dirty_ring_size_MB to fix typo.
    Simplify conversion to MiB via qemu_target_page_bits and right shift.
    
    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
    Reviewed-by: Thomas Huth <thuth@redhat.com>
    Reviewed-by: Juan Quintela <quintela@redhat.com>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    rth7680 committed May 1, 2023
    Copy the full SHA
    3b07992 View commit details
    Browse the repository at this point in the history
  2. accel/tcg: Uncache the host address for instruction fetch when tlb si…

    …ze < 1
    
    When PMP entry overlap part of the page, we'll set the tlb_size to 1, which
    will make the address in tlb entry set with TLB_INVALID_MASK, and the next
    access will again go through tlb_fill.However, this way will not work in
    tb_gen_code() => get_page_addr_code_hostp(): the TLB host address will be
    cached, and the following instructions can use this host address directly
    which may lead to the bypass of PMP related check.
    Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1542.
    
    Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
    Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
    Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
    Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
    Message-Id: <20230422130329.23555-6-liweiwei@iscas.ac.cn>
    Weiwei Li authored and rth7680 committed May 1, 2023
    Copy the full SHA
    5827422 View commit details
    Browse the repository at this point in the history
  3. qemu/bitops.h: Limit rotate amounts

    Rotates have been fixed up to only allow for reasonable rotate amounts
    (ie, no rotates >7 on an 8b value etc.)  This fixes a problem with riscv
    vector rotate instructions.
    
    Signed-off-by: Dickon Hood <dickon.hood@codethink.co.uk>
    Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
    Message-Id: <20230428144757.57530-9-lawrence.hunter@codethink.co.uk>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    dickonthree authored and rth7680 committed May 1, 2023
    Copy the full SHA
    25cb258 View commit details
    Browse the repository at this point in the history
  4. qemu/host-utils.h: Add clz and ctz functions for lower-bit integers

    This is for use in the RISC-V vclz and vctz instructions (implemented in
    proceeding commit).
    
    Signed-off-by: Kiran Ostrolenk <kiran.ostrolenk@codethink.co.uk>
    Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
    Message-Id: <20230428144757.57530-11-lawrence.hunter@codethink.co.uk>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    CardboardTurkey authored and rth7680 committed May 1, 2023
    Copy the full SHA
    a547ed8 View commit details
    Browse the repository at this point in the history
  5. tcg: Add tcg_gen_gvec_andcs

    Add tcg expander and helper functions for and-compliment
    vector with scalar operand.
    
    Signed-off-by: Nazar Kazakov <nazar.kazakov@codethink.co.uk>
    Message-Id: <20230428144757.57530-10-lawrence.hunter@codethink.co.uk>
    [rth: Split out of larger patch.]
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    nazar-codethink authored and rth7680 committed May 1, 2023
    Copy the full SHA
    77ac798 View commit details
    Browse the repository at this point in the history
  6. tcg: Add tcg_gen_gvec_rotrs

    Add tcg expander and helper functions for rotate right
    vector with scalar operand.
    
    Signed-off-by: Nazar Kazakov <nazar.kazakov@codethink.co.uk>
    Message-Id: <20230428144757.57530-10-lawrence.hunter@codethink.co.uk>
    [rth: Split out of larger patch; mask rotation count.]
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    nazar-codethink authored and rth7680 committed May 1, 2023
    Copy the full SHA
    50bec8a View commit details
    Browse the repository at this point in the history

Commits on May 2, 2023

  1. tests/qtest: Disable the spice test of readconfig-test on FreeBSD

    The spice test is currently hanging on FreeBSD. It likely was
    never working before, since in the past, our configure script
    was failing to detect this feature due to a bug in the spice
    package there (it just got enabled recently by the commit
    https://cgit.freebsd.org/ports/commit/?id=cf16b1c9063351325f0 ).
    To get the CI working again, let's disable the failing test for
    now until someone has enough spare time to debug and fix the real
    underlying problem.
    
    Message-Id: <20230428151351.1365822-1-thuth@redhat.com>
    Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
    Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
    Signed-off-by: Thomas Huth <thuth@redhat.com>
    huth committed May 2, 2023
    Copy the full SHA
    01013d2 View commit details
    Browse the repository at this point in the history
  2. tests/qtest: Restrict tpm-tis-i2c-test to CONFIG_TCG

    The test set -accel tcg, so restrict it to when TCG is present.
    
    Signed-off-by: Fabiano Rosas <farosas@suse.de>
    Message-Id: <20230426180013.14814-13-farosas@suse.de>
    Reviewed-by: Thomas Huth <thuth@redhat.com>
    Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
    Signed-off-by: Thomas Huth <thuth@redhat.com>
    Fabiano Rosas authored and huth committed May 2, 2023
    Copy the full SHA
    b08dc0f View commit details
    Browse the repository at this point in the history
  3. async: avoid use-after-free on re-entrancy guard

    A BH callback can free the BH, causing a use-after-free in aio_bh_call.
    Fix that by keeping a local copy of the re-entrancy guard pointer.
    
    Buglink: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=58513
    Fixes: 9c86c97 ("async: Add an optional reentrancy guard to the BH API")
    Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
    Message-Id: <20230501141956.3444868-1-alxndr@bu.edu>
    Reviewed-by: Thomas Huth <thuth@redhat.com>
    Signed-off-by: Thomas Huth <thuth@redhat.com>
    a1xndr authored and huth committed May 2, 2023
    Copy the full SHA
    7915bd0 View commit details
    Browse the repository at this point in the history
  4. qemu/int128: Re-shuffle Int128Alias members

    Clang 14, with --enable-tcg-interpreter errors with
    
    include/qemu/int128.h:487:16: error: alignment of field 'i' (128 bits)
      does not match the alignment of the first field in transparent union;
      transparent_union attribute ignored [-Werror,-Wignored-attributes]
        __int128_t i;
                   ^
    include/qemu/int128.h:486:12: note: alignment of first field is 64 bits
        Int128 s;
               ^
    1 error generated.
    
    By placing the __uint128_t member first, this is avoided.
    
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
    Message-Id: <20230501204625.277361-1-richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    67055d0 View commit details
    Browse the repository at this point in the history
  5. migration/xbzrle: Use __attribute__((target)) for avx512

    Use the attribute, which is supported by clang, instead of
    the #pragma, which is not supported and, for some reason,
    also not detected by the meson probe, so we fail by -Werror.
    
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    Reviewed-by: Juan Quintela <quintela@redhat.com>
    Message-Id: <20230501210555.289806-1-richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    b416e3b View commit details
    Browse the repository at this point in the history
  6. accel/tcg: Add cpu_ld*_code_mmu

    At least RISC-V has the need to be able to perform a read
    using execute permissions, outside of translation.
    Add helpers to facilitate this.
    
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    Acked-by: Alistair Francis <alistair.francis@wdc.com>
    Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
    Tested-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
    Message-Id: <20230325105429.1142530-9-richard.henderson@linaro.org>
    Message-Id: <20230412114333.118895-9-richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    8a6ede0 View commit details
    Browse the repository at this point in the history
  7. tcg/loongarch64: Conditionalize tcg_out_exts_i32_i64

    Since TCG_TYPE_I32 values are kept sign-extended in registers,
    via ".w" instructions, we need not extend if the register matches.
    This is already relied upon by comparisons.
    
    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    6887ff0 View commit details
    Browse the repository at this point in the history
  8. tcg/mips: Conditionalize tcg_out_exts_i32_i64

    Since TCG_TYPE_I32 values are kept sign-extended in registers, we need not
    extend if the register matches.  This is already relied upon by comparisons.
    
    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    7f98ec2 View commit details
    Browse the repository at this point in the history
  9. tcg: Introduce tcg_out_movext2

    This is common code in most qemu_{ld,st} slow paths, moving two
    registers when there may be overlap between sources and destinations.
    At present, this is only used by 32-bit hosts for 64-bit data,
    but will shortly be used for more than that.
    
    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    bdc7fba View commit details
    Browse the repository at this point in the history
  10. Merge tag 'pull-request-2023-05-02' of https://gitlab.com/thuth/qemu

    …into staging
    
    * Fix the failing FreeBSD job in our CI
    * Run the tpm-tis-i2c-test only if TCG is enabled
    * Fix a use-after-free problem in the new reentracy checking code
    
    # -----BEGIN PGP SIGNATURE-----
    #
    # iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmRQ4vERHHRodXRoQHJl
    # ZGhhdC5jb20ACgkQLtnXdP5wLbXo8g//dVRM+LCeCqNfjqtQLwGUUAt3ve1vruLD
    # v9BT4ooTNIGFScQlc9NRnweCPPBvmdSyXfxdfa3ITW62BEKEcCaf9tXiNeXE9jUE
    # VAQMA3u5/w0HSsWK9uqCZ/5azI4mwo5c2ykocX7XsdyP0LoFvlgydYBZ9S5PxRit
    # JsX78x740qTGjOSxD2O5wYocDwRUVsCcY7nAIC1Cj52gxi9Vedxqzb8MW30AU+oh
    # W9h49nVJAOvcx1UBNtYC0t6LCdJvMkhLPmewp4g4o0iiQqnGBjjD0pT2SUYhl1A5
    # pZYjsq7IBFGPDEyQOD3R4VeaMPpo22NLifLbU8Kt+BepyHJHJgCkjX/WUnCEzwu9
    # jmxaIUubT5/UanDzOX5qa/JDgNnUxkLfoVgZ8GOeNKoJ+Ik52xATnMm5Dqod369E
    # MydBN8gqnT+I7Qb7KxSS5Q18YugUS3uUd17LqpZ846yxyqMjoM2Zee2J2K7x4clO
    # cJ5h1AP7D6ZzyPzBMD0U9fanA+2M/qFiV3NJ9IDqiQYglafnU+gZOohE+p1Id4Dq
    # IeSITK+OaaYPdlADfKcVJNLy3qBvyL/ZsJ/2X1zRO5vhPVal4tMfo4Fv8Su0vx34
    # mXiUJO8SWk/GiPtJy7fNhxfiBBhwDTiyVX97In/+jbFC3ZKwPnwo/nq1DeBg4YI7
    # Rj2rHq4HS7o=
    # =zdof
    # -----END PGP SIGNATURE-----
    # gpg: Signature made Tue 02 May 2023 11:16:17 AM BST
    # gpg:                using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
    # gpg:                issuer "thuth@redhat.com"
    # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [undefined]
    # gpg:                 aka "Thomas Huth <thuth@redhat.com>" [undefined]
    # gpg:                 aka "Thomas Huth <th.huth@posteo.de>" [unknown]
    # gpg:                 aka "Thomas Huth <huth@tuxfamily.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: 27B8 8847 EEE0 2501 18F3  EAB9 2ED9 D774 FE70 2DB5
    
    * tag 'pull-request-2023-05-02' of https://gitlab.com/thuth/qemu:
      async: avoid use-after-free on re-entrancy guard
      tests/qtest: Restrict tpm-tis-i2c-test to CONFIG_TCG
      tests/qtest: Disable the spice test of readconfig-test on FreeBSD
    
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    b5f47ba View commit details
    Browse the repository at this point in the history
  11. Merge tag 'pull-tcg-20230502' of https://gitlab.com/rth7680/qemu into…

    … staging
    
    Misc tcg-related patch queue.
    
    # -----BEGIN PGP SIGNATURE-----
    #
    # iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmRQ8YwdHHJpY2hhcmQu
    # aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV+9rAf/RetCt2y/7VSlWBnP
    # o/A5y8p6jQI+LjY0BIlG8V5DC1H/bLhCLD60/DyUwzWP6Zb9wYRQ5+WpsgBmUcql
    # SkRA+mZLIGZWDSi6wIDN6IHixVkd/yVjn+05LQS8/GU7y/AEbjqsUevI5OX7aOkv
    # 2LkDrzbZrBWcE/C1coZKUNDHac1+Wh4UBUqfxVWvBIQW+qXMXuwSraoOBHA9BvcH
    # wGJjJ4eoLKoKBbu49rx+b2wvXiTRtIq2jfKAOEVoZy5uWrcXQTqZHJXejhB1JOFY
    # 5i2qqGA9vX6HycDmq2xM3qwO2RtlyS2tGgXL0QX2D/4z1ysEzQUv7bPL9euGk13K
    # neCv5w==
    # =G9sH
    # -----END PGP SIGNATURE-----
    # gpg: Signature made Tue 02 May 2023 12:18:36 PM BST
    # gpg:                using RSA key 7A481E78868B4DB6A85A05C064DF38E8AF7E215F
    # gpg:                issuer "richard.henderson@linaro.org"
    # gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" [ultimate]
    
    * tag 'pull-tcg-20230502' of https://gitlab.com/rth7680/qemu:
      tcg: Introduce tcg_out_movext2
      tcg/mips: Conditionalize tcg_out_exts_i32_i64
      tcg/loongarch64: Conditionalize tcg_out_exts_i32_i64
      accel/tcg: Add cpu_ld*_code_mmu
      migration/xbzrle: Use __attribute__((target)) for avx512
      qemu/int128: Re-shuffle Int128Alias members
      tcg: Add tcg_gen_gvec_rotrs
      tcg: Add tcg_gen_gvec_andcs
      qemu/host-utils.h: Add clz and ctz functions for lower-bit integers
      qemu/bitops.h: Limit rotate amounts
      accel/tcg: Uncache the host address for instruction fetch when tlb size < 1
      softmmu: Tidy dirtylimit_dirty_ring_full_time
    
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    rth7680 committed May 2, 2023
    Copy the full SHA
    1b0e90a View commit details
    Browse the repository at this point in the history