- Feb 16, 2022
-
-
Weiwei Li authored
- add PTE_N bit - add PTE_N bit check for inner PTE - update address translation to support 64KiB continuous region (napot_bits = 4) Signed-off-by:
Weiwei Li <liweiwei@iscas.ac.cn> Signed-off-by:
Junqiang Wang <wangjunqiang@iscas.ac.cn> Reviewed-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220204022658.18097-4-liweiwei@iscas.ac.cn> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Weiwei Li authored
For non-leaf PTEs, the D, A, and U bits are reserved for future standard use. Signed-off-by:
Weiwei Li <liweiwei@iscas.ac.cn> Signed-off-by:
Junqiang Wang <wangjunqiang@iscas.ac.cn> Reviewed-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220204022658.18097-3-liweiwei@iscas.ac.cn> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Guo Ren authored
Highest bits of PTE has been used for svpbmt, ref: [1], [2], so we need to ignore them. They cannot be a part of ppn. 1: The RISC-V Instruction Set Manual, Volume II: Privileged Architecture 4.4 Sv39: Page-Based 39-bit Virtual-Memory System 4.5 Sv48: Page-Based 48-bit Virtual-Memory System 2: https://github.com/riscv/virtual-memory/blob/main/specs/663-Svpbmt-diff.pdf Signed-off-by:
Guo Ren <ren_guo@c-sky.com> Reviewed-by:
Liu Zhiwei <zhiwei_liu@c-sky.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Cc: Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220204022658.18097-2-liweiwei@iscas.ac.cn> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The RISC-V AIA (Advanced Interrupt Architecture) defines a new interrupt controller for wired interrupts called APLIC (Advanced Platform Level Interrupt Controller). The APLIC is capabable of forwarding wired interupts to RISC-V HARTs directly or as MSIs (Message Signaled Interupts). This patch adds device emulation for RISC-V AIA APLIC. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-19-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
We add "x-aia" command-line option for RISC-V HART using which allows users to force enable CPU AIA CSRs without changing the interrupt controller available in RISC-V machine. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-18-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
We should use the AIA INTC compatible string in the CPU INTC DT nodes when the CPUs support AIA feature. This will allow Linux INTC driver to use AIA local interrupt CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-17-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA specification defines IMSIC interface CSRs for easy access to the per-HART IMSIC registers without using indirect xiselect and xireg CSRs. This patch implements the AIA IMSIC interface CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-16-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA specification defines [m|s|vs]iselect and [m|s|vs]ireg CSRs which allow indirect access to interrupt priority arrays and per-HART IMSIC registers. This patch implements AIA xiselect and xireg CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-15-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA specification introduces new [m|s|vs]topi CSRs for reporting pending local IRQ number and associated IRQ priority. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-14-anup@brainfault.org [ Changed by AF: - Fixup indentation ] Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA specificaiton adds interrupt filtering support for M-mode and HS-mode. Using AIA interrupt filtering M-mode and H-mode can take local interrupt 13 or above and selectively inject same local interrupt to lower privilege modes. At the moment, we don't have any local interrupts above 12 so we add dummy implementation (i.e. read zero and ignore write) of AIA interrupt filtering CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-13-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA hvictl and hviprioX CSRs allow hypervisor to control interrupts visible at VS-level. This patch implements AIA hvictl and hviprioX CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-12-anup@brainfault.org [ Changes by AF: - Fix possible unintilised variable error in rmw_sie() ] Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA specification adds new CSRs for RV32 so that RISC-V hart can support 64 local interrupts on both RV32 and RV64. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-11-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA spec defines programmable 8-bit priority for each local interrupt at M-level, S-level and VS-level so we extend local interrupt processing to consider AIA interrupt priorities. The AIA CSRs which help software configure local interrupt priorities will be added by subsequent patches. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-id: 20220204174700.534953-10-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The AIA device emulation (such as AIA IMSIC) should be able to set (or provide) AIA ireg read-modify-write callback for each privilege level of a RISC-V HART. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-9-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The RISC-V AIA specification extends RISC-V local interrupts and introduces new CSRs. This patch adds defines for the new AIA CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-8-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
We define a CPU feature for AIA CSR support in RISC-V CPUs which can be set by machine/device emulation. The RISC-V CSR emulation will also check this feature for emulating AIA CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-7-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The machine or device emulation should be able to force set certain CPU features because: 1) We can have certain CPU features which are in-general optional but implemented by RISC-V CPUs on the machine. 2) We can have devices which require a certain CPU feature. For example, AIA IMSIC devices expect AIA CSRs implemented by RISC-V CPUs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-6-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The guest external interrupts from an interrupt controller are delivered only when the Guest/VM is running (i.e. V=1). This means any guest external interrupt which is triggered while the Guest/VM is not running (i.e. V=0) will be missed on QEMU resulting in Guest with sluggish response to serial console input and other I/O events. To solve this, we check and inject interrupt after setting V=1. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-5-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
The hgeie and hgeip CSRs are required for emulating an external interrupt controller capable of injecting virtual external interrupt to Guest/VM running at VS-level. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-4-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
A hypervisor can optionally take guest external interrupts using SGEIP bit of hip and hie CSRs. Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-3-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Anup Patel authored
We should be returning illegal instruction trap when RV64 HS-mode tries to access RV32 HS-mode CSR. Fixes: d6f20dac ("target/riscv: Fix 32-bit HS mode access permissions") Signed-off-by:
Anup Patel <anup.patel@wdc.com> Signed-off-by:
Anup Patel <anup@brainfault.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Frank Chang <frank.chang@sifive.com> Message-id: 20220204174700.534953-2-anup@brainfault.org Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
LIU Zhiwei authored
The guest should be able to set the vill bit as part of vsetvl. Currently we may set env->vill to 1 in the vsetvl helper, but there is nowhere that we set it to 0, so once it transitions to 1 it's stuck there until the system is reset. Signed-off-by:
LIU Zhiwei <zhiwei_liu@c-sky.com> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220201064601.41143-1-zhiwei_liu@c-sky.com> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
The XVentanaCondOps extension is supported by VRULL on behalf of the Ventana Micro. Add myself as a point-of-contact. Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220202005249.3566542-8-philipp.tomsich@vrull.eu> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
This adds the decoder and translation for the XVentanaCondOps custom extension (vendor-defined by Ventana Micro Systems), which is documented at https://github.com/ventanamicro/ventana-custom-extensions/releases/download/v1.0.0/ventana-custom-extensions-v1.0.0.pdf This commit then also adds a guard-function (has_XVentanaCondOps_p) and the decoder function to the table of decoders, enabling the support for the XVentanaCondOps extension. Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220202005249.3566542-7-philipp.tomsich@vrull.eu> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
To split up the decoder into multiple functions (both to support vendor-specific opcodes in separate files and to simplify maintenance of orthogonal extensions), this changes decode_op to iterate over a table of decoders predicated on guard functions. This commit only adds the new structure and the table, allowing for the easy addition of additional decoders in the future. Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220202005249.3566542-6-philipp.tomsich@vrull.eu> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
The Zb[abcs] support code still uses the RISCV_CPU macros to access the configuration information (i.e., check whether an extension is available/enabled). Now that we provide this information directly from DisasContext, we can access this directly via the cfg_ptr field. Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Suggested-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220202005249.3566542-5-philipp.tomsich@vrull.eu> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
The implementation in trans_{rvi,rvv,rvzfh}.c.inc accesses the shallow copies (in DisasContext) of some of the elements available in the RISCVCPUConfig structure. This commit redirects accesses to use the cfg_ptr copied into DisasContext and removes the shallow copies. Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Suggested-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220202005249.3566542-4-philipp.tomsich@vrull.eu> [ Changes by AF: - Fixup checkpatch failures ] Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
As the number of extensions is growing, copying them individiually into the DisasContext will scale less and less... instead we populate a pointer to the RISCVCPUConfig structure in the DisasContext. This adds an extra indirection when checking for the availability of an extension (compared to copying the fields into DisasContext). While not a performance problem today, we can always (shallow) copy the entire structure into the DisasContext (instead of putting a pointer to it) if this is ever deemed necessary. Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Suggested-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220202005249.3566542-3-philipp.tomsich@vrull.eu> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Philipp Tomsich authored
Signed-off-by:
Philipp Tomsich <philipp.tomsich@vrull.eu> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Suggested-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220202005249.3566542-2-philipp.tomsich@vrull.eu> Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Frédéric Pétrot authored
The addition of uxl support in gdbstub adds a few checks on the maximum register length, but omitted MXL_RV128, an experimental feature. This patch makes rv128 react as rv64, as previously. Signed-off-by:
Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr> Reviewed-by:
Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by:
LIU Zhiwei <zhiwei_liu@c-sky.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-id: 20220124202456.420258-1-frederic.petrot@univ-grenoble-alpes.fr Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Petr Tesarik authored
The documentation for the generic loader says that "the maximum size of the data is 8 bytes". However, attempts to set data-len=8 trigger the following assertion failure: ../hw/core/generic-loader.c:59: generic_loader_reset: Assertion `s->data_len < sizeof(s->data)' failed. The type of s->data is uint64_t (i.e. 8 bytes long), so I believe this assert should use <= instead of <. Fixes: e481a1f6 ("generic-loader: Add a generic loader") Signed-off-by:
Petr Tesarik <ptesarik@suse.com> Reviewed-by:
Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-id: 20220120092715.7805-1-ptesarik@suse.com Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
Wilfred Mallawa authored
This patch removes the left-over/unused `ibex_plic.h` file. Previously used by opentitan, which now follows the RISC-V standard and uses the SiFivePlicState. Fixes: 434e7e02 ("hw/intc: Remove the Ibex PLIC") Signed-off-by:
Wilfred Mallawa <wilfred.mallawa@wdc.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Reviewed-by:
Philippe Mathieu-Daudé <f4bug@amsat.org> Message-id: 20220121055005.3159846-1-alistair.francis@opensource.wdc.com Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
-
- Feb 15, 2022
-
-
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:
Peter Maydell <peter.maydell@linaro.org>
-
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:
Peter Maydell <peter.maydell@linaro.org>
-
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:
Peter Maydell <peter.maydell@linaro.org>
-
- Feb 14, 2022
-
-
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:
Peter Maydell <peter.maydell@linaro.org>
-
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:
Hiroki Narukawa <hnarukaw@yahoo-corp.jp> Message-id: 20220214115302.13294-2-hnarukaw@yahoo-corp.jp Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Dr. David Alan Gilbert authored
There's a nice new Rust implementation out there; recommend people do new work on that. Signed-off-by:
Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by:
Daniel P. Berrangé <berrange@redhat.com> Message-id: 20220210174714.19843-1-dgilbert@redhat.com Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
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:
Michael Hudson-Doyle <michael.hudson@canonical.com> Signed-off-by:
Christian Ehrhardt <christian.ehrhardt@canonical.com> Reviewed-by:
Dr. 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:
Stefan Hajnoczi <stefanha@redhat.com>
-
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:
Peter Maydell <peter.maydell@linaro.org>
-