On Fri, Feb 2, 2024 at 4:54 PM David Hildenbrand wrote:
>
> Let's support up to 509 mem slots, just like vhost in the kernel usually
> does and the rust vhost-user implementation recently [1] started doing.
> This is required to properly support memory hotplug, either using
> multiple DIMMs (ACPI
The UEFI loading mode in loongarch is very different
from that in other architectures:loongarch's UEFI code
is in rom, while other architectures' UEFI code is in flash.
loongarch UEFI can be loaded as follows:
-machine virt,pflash=pflash0-format
-bios ./QEMU_EFI.fd
Other architectures load UEFI
Someone else with more knowledge of the VQ mapping code should also review.
On Fri, Feb 2, 2024 at 4:55 PM David Hildenbrand wrote:
>
> Currently, we try to remap all rings whenever we add a single new memory
> region. That doesn't quite make sense, because we already map rings when
> setting
On Fri, Feb 2, 2024 at 4:56 PM David Hildenbrand wrote:
>
> We already use MADV_NORESERVE to deal with sparse memory regions. Let's
> also set madvise(MADV_DONTDUMP), otherwise a crash of the process can
> result in us allocating all memory in the mmap'ed region for dumping
> purposes.
>
> This
29.01.2024 11:03, Akihiko Odaki:
This fixes qemu_smbios_type8_opts and qemu_smbios_type11_opts to have
list terminators and elements for the type option.
Akihiko Odaki (2):
hw/smbios: Fix OEM strings table option validation
hw/smbios: Fix port connector option validation
riscv specification allows custom CSRs in decode area. So we should
register all vendor CSRs in cpu realize stage.
Signed-off-by: LIU Zhiwei
---
1) Use int index to quiet the Werror for "i < 0".
---
target/riscv/cpu.c | 3 +++
target/riscv/tcg/tcg-cpu.c | 18 ++
This patch set fix the regression on kernel pointed by Björn Töpel in
https://www.mail-archive.com/qemu-devel@nongnu.org/msg1018232.html.
thead-c906 uses some flags in pte [60-63] bits. It has history reasons that
SVPBMT didn't exist when thead-c906 came to wotrld. We named this feature as
On Fri, Feb 2, 2024 at 4:55 PM David Hildenbrand wrote:
>
> Let's reduce some code duplication and prepare for further changes.
>
> Signed-off-by: David Hildenbrand
Reviewed-by: Raphael Norwitz
> ---
> subprojects/libvhost-user/libvhost-user.c | 119 +++---
> 1 file changed,
On Fri, Feb 2, 2024 at 4:54 PM David Hildenbrand wrote:
>
> Let's factor it out. Note that the check for MAP_FAILED was wrong as
> we never set mmap_addr if mmap() failed. We'll remove the NULL check
> separately.
>
> Signed-off-by: David Hildenbrand
Reviewed-by: Raphael Norwitz
> ---
>
[Trimming list of addresses]
01.02.2024 11:40, Zhao Liu :
From: Zhao Liu
Hi list,
Now we already have the device_class_set_parent_realize() to set
parent realize(), thus clean up the places where that helper was
forgotten.
Applied to trivial-patches tree, thanks!
/mjt
On 2024/1/30 19:43, Christoph Müllner wrote:
On Tue, Jan 30, 2024 at 12:12 PM LIU Zhiwei
wrote:
thead-c906 uses some flags in pte [60-63] bits. It has history reasons that
SVPBMT didn't exist when thead-c906 came to world.
We named this feature as xtheadmaee. this feature is controlled by
On Fri, Feb 2, 2024 at 4:55 PM David Hildenbrand wrote:
>
> Let's factor it out, reducing quite some code duplication and perparing
> for further changes.
>
> If we fail to mmap a region and panic, we now simply don't add that
> (broken) region.
>
> Note that we now increment dev->nregions as we
On Fri, Feb 2, 2024 at 4:56 PM David Hildenbrand wrote:
>
> dev->nregions always covers only valid entries. Stop zeroing out other
> array elements that are unused.
>
> Signed-off-by: David Hildenbrand
Reviewed-by: Raphael Norwitz
> ---
> subprojects/libvhost-user/libvhost-user.c | 7 +--
On Fri, Feb 2, 2024 at 4:55 PM David Hildenbrand wrote:
>
> We never add a memory region if mmap() failed. Therefore, no need to check
> for NULL.
>
> Signed-off-by: David Hildenbrand
Reviewed-by: Raphael Norwitz
> ---
> subprojects/libvhost-user/libvhost-user.c | 10 ++
> 1 file
On 2024/2/4 上午9:54, Xianglai Li wrote:
The UEFI loading mode in loongarch is very different
from that in other architectures:loongarch's UEFI code
is in rom, while other architectures' UEFI code is in flash.
loongarch UEFI can be loaded as follows:
-machine virt,pflash=pflash0-format
-bios
I'd prefer to use my new work email so this change updates MAINTAINERS
with it.
Signed-off-by: Raphael Norwitz
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 2f9741b898..a12b58abe2 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@
This patch set fix the regression on kernel pointed by Björn Töpel in
https://www.mail-archive.com/qemu-devel@nongnu.org/msg1018232.html.
We first add a framework for vendor CSRs in patch 1. After that we add
one thead-c906 CSR mxstatus, which is used for mmu extension xtheadmaee.
thead-c906
As a heads up, I've left Nutanix and updated it in MAINTAINERS. Will
be updating it again shortly so tagging these with my new work email.
On Fri, Feb 2, 2024 at 4:54 PM David Hildenbrand wrote:
>
> We barely had mmap_offset set in the past. With virtio-mem and
> dynamic-memslots that will
On Fri, Feb 2, 2024 at 4:54 PM David Hildenbrand wrote:
>
> Let's prepare for increasing VHOST_USER_MAX_RAM_SLOTS by dynamically
> allocating dev->regions. We don't have any ABI guarantees (not
> dynamically linked), so we can simply change the layout of VuDev.
>
> Let's zero out the memory, just
On Fri, Feb 2, 2024 at 4:54 PM David Hildenbrand wrote:
>
> Memory regions cannot overlap, and if we ever hit that case something
> would be really flawed.
>
> For example, when vhost code in QEMU decides to increase the size of memory
> regions to cover full huge pages, it makes sure to never
On Fri, Feb 2, 2024 at 4:56 PM David Hildenbrand wrote:
>
> We cannot have duplicate memory regions, something would be deeply
> flawed elsewhere. Let's just stop the search once we found an entry.
>
> We'll add more sanity checks when adding memory regions later.
>
> Signed-off-by: David
One comment on this one.
On Fri, Feb 2, 2024 at 4:56 PM David Hildenbrand wrote:
>
> Let's speed up GPA to memory region / virtual address lookup. Store the
> memory regions ordered by guest physical addresses, and use binary
> search for address translation, as well as when adding/removing
On Fri, Feb 2, 2024 at 4:55 PM David Hildenbrand wrote:
>
> In the past, QEMU would create memory regions that could partially cover
> hugetlb pages, making mmap() fail if we would use the mmap_offset as an
> fd_offset. For that reason, we never used the mmap_offset as an offset into
> the fd and
On Fri, Feb 2, 2024 at 4:55 PM David Hildenbrand wrote:
>
> Let's factor it out to prepare for further changes.
>
> Signed-off-by: David Hildenbrand
Reviewed-by: Raphael Norwitz
> ---
> subprojects/libvhost-user/libvhost-user.c | 24 +++
> 1 file changed, 12
Hi maobibo:
diff --git a/include/hw/loongarch/virt.h b/include/hw/loongarch/virt.h
index 6ef9a92394..d1fba1204e 100644
--- a/include/hw/loongarch/virt.h
+++ b/include/hw/loongarch/virt.h
@@ -20,8 +20,10 @@
#define VIRT_BIOS_BASE 0x1c00UL
#define VIRT_BIOS_SIZE (4 *
Hi maobibo:
diff --git a/include/hw/loongarch/virt.h b/include/hw/loongarch/virt.h
index 6ef9a92394..d1fba1204e 100644
--- a/include/hw/loongarch/virt.h
+++ b/include/hw/loongarch/virt.h
@@ -20,8 +20,10 @@
#define VIRT_BIOS_BASE 0x1c00UL
#define VIRT_BIOS_SIZE (4 *
According to xtheadsync[1][2] documentation, it can be used in user mode and
the behavior is same with other priviledges.
[1]:https://github.com/T-head-Semi/thead-extension-spec/blob/master/xtheadsync/sync.adoc
On 2024/02/03 22:58, Alex Bennée wrote:
Akihiko Odaki writes:
On 2024/02/03 20:08, Alex Bennée wrote:
Akihiko Odaki writes:
This series extracts fixes and refactorings that can be applied
independently from "[PATCH v9 00/23] plugins: Allow to read registers".
The patch "target/riscv:
>-Original Message-
>From: Eric Auger
>Subject: Re: [PATCH v2 3/3] hw: Set virtio-iommu aw-bits default value on
>pc_q35_9.0 and arm virt
>
>Hi Zhenzhong,
>
>On 2/2/24 07:51, Duan, Zhenzhong wrote:
>> Hi Eric,
>>
>>> -Original Message-
>>> From: Eric Auger
>>> pc_q35_9.0 and
The __linux__ version of qemu_chr_open_pp_fd() tries to claim the
parport device with a PPCLAIM ioctl(). On success, it stores the file
descriptor in the chardev object, and returns success. On failure, it
closes the file descriptor, and returns failure.
chardev_new() then passes the Chardev to
It's an alias for "ringbuf" we kept for backward compatibility; see
commit 3a1da42eb35 (qapi: Rename ChardevBackend member "memory" to
"ringbuf"). Deprecation is long overdue.
Signed-off-by: Markus Armbruster
---
docs/about/deprecated.rst | 8
qapi/char.json| 8 +---
2
qemu_socket() and make_udp_socket() return a file descriptor on
success, -1 on failure. The check misinterprets 0 as failure. Fix
that.
Signed-off-by: Markus Armbruster
---
tests/unit/test-char.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/unit/test-char.c
Character backends are actually QOM types. When a backend's
compile-time conditional QOM type is not compiled in, creation fails
with "'FOO' is not a valid char driver name". Okay, except
introspecting chardev-add with query-qmp-schema doesn't work then: the
backend type is there even though the
Markus Armbruster (4):
chardev/parallel: Don't close stdin on inappropriate device
tests/unit/test-char: Fix qemu_socket(), make_udp_socket() check
qapi/char: Make backend types properly conditional
qapi/char: Deprecate backend type "memory"
docs/about/deprecated.rst | 8
16.01.2024 22:00, Stefan Hajnoczi пишет:
monitor_qmp_dispatcher_co() runs in the iohandler AioContext that is not
polled during nested event loops. The coroutine currently reschedules
itself in the main loop's qemu_aio_context AioContext, which is polled
during nested event loops. One known
From: Zhao Liu
Intel Thread Director (ITD) is the extension of HFI, and it extends
the HFI to provide performance and energy efficiency data for advanced
classes of instructions [1].
>From Alder Lake, Intel's client products support ITD, and this feature
can be used in VM to optimize scheduling
From: Zhuocheng Ding
HRESET provides an HRESET instruction to reset the ITD related history
accumulated on the current logical processor it is executing on [1].
HRESET feature not only needs to have the feature bit of 0x07.0x01.eax
[bit 22] in the CPUID, but also the associated 0x20 leaf, thus,
From: Zhuocheng Ding
Hardware Feedback Interface (HFI) is a basic dependency of ITD.
HFI is the feature to allow hardware to provide guidance to the
Operating System (OS) scheduler to perform optimal workload scheduling
through a hardware feedback interface structure in memory [1]. Currently
in
From: Zhuocheng Ding
The CPUID_ACPI (CPUID.0x01.edx[bit 22]) feature bit has been
introduced as the TCG feature. Currently, based on KVM's ACPI emulation,
add related ACPI support in QEMU.
>From SDM [1], ACPI feature means:
"The ACPI flag (bit 22) of the CPUID feature flags indicates the
From: Zhao Liu
The property enable-itd will be used to set ITD related feature bits
for Guest, which includes PTS, HFI, ITD and HRESET.
Now PTS, HFI, ITD and HRESET are marked as no_autoenable_flags, since
PTS, HFI and ITD have additional restrictions on CPU topology, and
HRESET is only used in
From: Zhao Liu
Hi list,
This is our refreshed RFC to support our ITD virtualization patch
series [1] in KVM, and bases on bd2e12310b18 ("Merge tag
'qga-pull-2024-01-30' of https://github.com/kostyanf14/qemu into
staging").
ITD is Intel's client specific feature to optimize scheduling on Intel
From: Zhuocheng Ding
PTS feature (Package Thermal Management) is a dependency of ITD.
PTS provides 2 package level MSRs: MSR_IA32_PACKAGE_THERM_STATUS and
MSR_IA32_PACKAGE_THERM_INTERRUPT.
They're emulated in KVM, but currently KVM hasn't supported msr
topology.
Thus the emulation of these 2
On Sat, Feb 03, 2024 at 05:30:48PM +0800, Zhao Liu wrote:
> Date: Sat, 3 Feb 2024 17:30:48 +0800
> From: Zhao Liu
> Subject: [RFC 0/6] Intel Thread Director Virtualization Support in QEMU
> X-Mailer: git-send-email 2.34.1
>
> From: Zhao Liu
>
> Hi list,
>
> This is our refreshed RFC to
Disable SR-IOV VF devices by reusing code to power down PCI devices
instead of removing them when the guest requests to disable VFs. This
allows to realize devices and report VF realization errors at PF
realization time.
Signed-off-by: Akihiko Odaki
---
docs/pcie_sriov.txt | 8 ++--
The guest may write NumVFs greater than TotalVFs and that can lead
to buffer overflow in VF implementations.
Fixes: 7c0fa8dff811 ("pcie: Add support for Single Root I/O Virtualization
(SR/IOV)")
Signed-off-by: Akihiko Odaki
---
hw/pci/pcie_sriov.c | 3 +++
1 file changed, 3 insertions(+)
diff
Use pci_rom_bar_explicitly_enabled() to determine if rombar is explicitly
enabled.
Signed-off-by: Akihiko Odaki
---
hw/vfio/pci.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index d7fe06715c4b..44178ac9355f 100644
--- a/hw/vfio/pci.c
+++
vfio determines if rombar is explicitly enabled by inspecting QDict.
Inspecting QDict is not nice because QDict is untyped and depends on the
details on the external interface. Add an infrastructure to determine if
rombar is explicitly enabled to hw/pci. PCIDevice::rom_bar is changed to
have -1 by
On 2024/02/03 20:08, Alex Bennée wrote:
Akihiko Odaki writes:
This series extracts fixes and refactorings that can be applied
independently from "[PATCH v9 00/23] plugins: Allow to read registers".
The patch "target/riscv: Move MISA limits to class" was replaced with
patch "target/riscv:
On 2024/01/22 23:56, Alex Bennée wrote:
Expose an internal API to QEMU to return all the registers for a vCPU.
The list containing the details required to called gdb_read_register().
Based-on: <20231025093128.33116-15-akihiko.od...@daynix.com>
Cc: Akihiko Odaki
Message-Id:
On 2024/02/03 20:44, Alex Bennée wrote:
Akihiko Odaki writes:
On 2024/01/22 23:56, Alex Bennée wrote:
Expose an internal API to QEMU to return all the registers for a vCPU.
The list containing the details required to called gdb_read_register().
Based-on:
On Fri, 2 Feb 2024 at 15:36, Peter Maydell wrote:
>
> The following changes since commit c3709fde5955d13f6d4f86ab46ef3cc2288ca65e:
>
> Merge tag 'pull-aspeed-20240201' of https://github.com/legoater/qemu into
> staging (2024-02-01 14:42:11 +)
>
> are available in the Git repository at:
>
>
Doing a build of just a single target with --enable modules results in build
error:
rm -rf b; cd b
../configure --enable-modules --target-list=x86_64-softmmu
ninja qemu-system-x86_64
In file included from ../ui/dbus-chardev.c:34:
../ui/dbus.h:34:10: fatal error: ui/dbus-display1.h: No
Akihiko Odaki writes:
> On 2024/02/03 20:08, Alex Bennée wrote:
>> Akihiko Odaki writes:
>>
>>> This series extracts fixes and refactorings that can be applied
>>> independently from "[PATCH v9 00/23] plugins: Allow to read registers".
>>>
>>> The patch "target/riscv: Move MISA limits to
Akihiko Odaki writes:
> On 2024/01/22 23:56, Alex Bennée wrote:
>> Expose an internal API to QEMU to return all the registers for a vCPU.
>> The list containing the details required to called gdb_read_register().
>> Based-on: <20231025093128.33116-15-akihiko.od...@daynix.com>
>> Cc: Akihiko
Akihiko Odaki writes:
> This series extracts fixes and refactorings that can be applied
> independently from "[PATCH v9 00/23] plugins: Allow to read registers".
>
> The patch "target/riscv: Move MISA limits to class" was replaced with
> patch "target/riscv: Move misa_mxl_max to class" since I
Hi
On Sat, Feb 3, 2024 at 12:02 PM Markus Armbruster wrote:
>
> Markus Armbruster (4):
> chardev/parallel: Don't close stdin on inappropriate device
> tests/unit/test-char: Fix qemu_socket(), make_udp_socket() check
> qapi/char: Make backend types properly conditional
> qapi/char:
The following changes since commit 29b008927ef6e3fbb70e6607b25d3fcae26a5190:
Merge tag 'pull-nic-config-2-20240202' of
git://git.infradead.org/users/dwmw2/qemu into staging (2024-02-02 16:47:36
+)
are available in the Git repository at:
https://repo.or.cz/qemu/armbru.git
Documentation generated for SchemaInfo looks like
The members of "SchemaInfoBuiltin" when "meta-type" is ""builtin""
The members of "SchemaInfoEnum" when "meta-type" is ""enum""
The members of "SchemaInfoArray" when "meta-type" is ""array""
The members of "SchemaInfoObject" when
Documentation of type BlockdevOptionsIscsi describes the type's
purpose after its members. Everywhere else, we do it the other way
round. Move it for consistency.
Signed-off-by: Markus Armbruster
Message-ID: <20240129115008.674248-5-arm...@redhat.com>
Reviewed-by: Konstantin Kostiuk
---
Documentation of BlockExportRemoveMode has
Potential additional modes to be added in the future:
hide: Just hide export from new clients, leave existing connections
as is. Remove export after all clients are disconnected.
soft: Hide export from new clients, answer with
Documentation generated for dump-skeys contains
This command is only supported on s390 architecture.
and
If
~~
"TARGET_S390X"
The former became redundant in commit 901a34a400a (qapi: add 'If:'
section to generated documentation) added the latter. Drop the
former.
03.02.2024 12:01, Michael Tokarev wrote:
...
This change broke something in 7.2. I'm still debugging it, will
come with a follow-up once some more details are found, I'll also
check current master with and without this commit.
The prob happens with multiple suspend-resume cycles, - with this
Documentation of commands guest-ssh-get-authorized-keys,
guest-ssh-add-authorized-keys, and guest-ssh-remove-authorized-keys
describes the command's purpose after its arguments. Everywhere else,
we do it the other way round. Move it for consistency.
Signed-off-by: Markus Armbruster
Message-ID:
I submitted a RFC series[1] to add support for SR-IOV emulation to
virtio-net-pci. During the development of the series, I fixed some
trivial bugs and made improvements that I think are independently
useful. This series extracts those fixes and improvements from the RFC
series. Below is an
It is no longer used.
Signed-off-by: Akihiko Odaki
---
include/hw/qdev-core.h | 4
hw/core/qdev.c | 1 -
system/qdev-monitor.c | 12 +++-
3 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h
index
Release VFs failed to realize just as we do in unregister_vfs().
Fixes: 7c0fa8dff811 ("pcie: Add support for Single Root I/O Virtualization
(SR/IOV)")
Signed-off-by: Akihiko Odaki
---
hw/pci/pcie_sriov.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hw/pci/pcie_sriov.c
misa_mxl_max is common for all instances of a RISC-V CPU class so they
are better put into class.
Signed-off-by: Akihiko Odaki
Reviewed-by: Alistair Francis
---
target/riscv/cpu.h | 4 +-
hw/riscv/boot.c| 3 +-
target/riscv/cpu.c | 160
It is initialized with a simple assignment and there is little room for
error. In fact, the validation is even more complex.
Signed-off-by: Akihiko Odaki
Acked-by: LIU Zhiwei
Reviewed-by: Daniel Henrique Barboza
Acked-by: Alistair Francis
---
target/riscv/tcg/tcg-cpu.c | 15 +++
This series extracts fixes and refactorings that can be applied
independently from "[PATCH v9 00/23] plugins: Allow to read registers".
The patch "target/riscv: Move MISA limits to class" was replaced with
patch "target/riscv: Move misa_mxl_max to class" since I found instances
may have different
misa_mxl_max is now a class member and initialized only once for each
class. This also moves the initialization of gdb_core_xml_file which
will be referenced before realization in the future.
Signed-off-by: Akihiko Odaki
Reviewed-by: Alistair Francis
---
target/riscv/cpu.c | 21
On Sat, 3 Feb 2024, Christian Gudrian wrote:
Hello!
I am trying to access a USB audio hardware (a Korg Kronos synthesizer)
running an ancient 2.6.32.11 kernel (due to the binary only Korg driver
modules) via USB pass through. Loading the audio driver immediately
leads to a reset of the EHCI
On 03.02.2024 21:06, BALATON Zoltan wrote:
It's hard to tell, I don't know EHCI but there's a TODO comment near
that error so maybe there's some EHCI feature not emulated that you
may need to implement in QEMU there. I guess you'd need to check the
EHCI specification or the docs of the actual
01.02.2024 01:02, Ilya Leoshkevich wrote:
The `if not probe_proc_self_mem` check never passes, because
probe_proc_self_mem is a function object, which is a truthy value.
Add parentheses in order to perform a function call.
Fixes: dc84d50a7f9b ("tests/tcg: Add the PROT_NONE gdbstub test")
FWIW
On Sat, 3 Feb 2024 at 07:07, Richard Henderson
wrote:
>
> v2: Rebase and resolve target/loongarch conflicts.
> Include linux-user/aarch64 vdso fix.
>
> r~
>
> The following changes since commit 29b008927ef6e3fbb70e6607b25d3fcae26a5190:
>
> Merge tag 'pull-nic-config-2-20240202' of
>
On Sat, 3 Feb 2024 at 08:34, Markus Armbruster wrote:
>
> The following changes since commit 29b008927ef6e3fbb70e6607b25d3fcae26a5190:
>
> Merge tag 'pull-nic-config-2-20240202' of
> git://git.infradead.org/users/dwmw2/qemu into staging (2024-02-02 16:47:36
> +)
>
> are available in the
Hello!
I am trying to access a USB audio hardware (a Korg Kronos synthesizer)
running an ancient 2.6.32.11 kernel (due to the binary only Korg driver
modules) via USB pass through. Loading the audio driver immediately
leads to a reset of the EHCI controller due to a "processing error"
caused by
On 03.02.2024 21:06, BALATON Zoltan wrote:
It's hard to tell, I don't know EHCI but there's a TODO comment near
that error so maybe there's some EHCI feature not emulated that you
may need to implement in QEMU there. I guess you'd need to check the
EHCI specification or the docs of the actual
On 1/31/24 08:53, Mark Kanda wrote:
> QEMU initializes preallocated backend memory as the objects are parsed from
> the command line. This is not optimal in some cases (e.g. memory spanning
> multiple NUMA nodes) because the memory objects are initialized in series.
>
> Allow the
On 1/30/24 23:13, Ilya Leoshkevich wrote:
Is there a way to set the guest page size from
the command line?
No. Before this patch set, guest page size was a compile-time constant. Afterward, it
would be possible for any TARGET_PAGE_BITS_VARY target.
I refrained from adding such a
79 matches
Mail list logo