[Expired for QEMU because there has been no activity for 60 days.]
** Changed in: qemu
Status: Incomplete => Expired
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1834113
Title:
QEMU touchp
[Expired for libvirt (Ubuntu) because there has been no activity for 60
days.]
** Changed in: libvirt (Ubuntu)
Status: Incomplete => Expired
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/18341
Hi,
From: Aleksandar Markovic
Sent: Saturday, October 19, 2019 2:45 AM
To: Anup Patel
Cc: Peter Maydell ; Palmer Dabbelt
; Alistair Francis ; Sagar
Karandikar ; Bastian Koppelmann
; Atish Patra ;
qemu-ri...@nongnu.org; qemu-devel@nongnu.org; Anup Patel
Subject: Re: [PATCH v3 1/2] hw: timer
On Fri, 18 Oct 2019 19:22:18 +0200
Cédric Le Goater wrote:
> The interrupt presenters are created by a machine handler at the core
> level and are reseted independently. This is not consistent and it
> raises some issues when it comes to handle hot-plugged CPUs. These are
> reseted from the reali
On Fri, 18 Oct 2019 19:22:19 +0200
Cédric Le Goater wrote:
> When a Virtual Processor is scheduled to run on a HW thread, the
> hypervisor pushes its identifier in the OS CAM line. When running with
> kernel_irqchip=off, QEMU needs to emulate the same behavior.
>
> Set the OS CAM line when the i
On Fri, Oct 18, 2019 at 8:37 PM Peter Xu wrote:
>
> On Wed, Oct 16, 2019 at 03:01:22PM -0700, Jintack Lim wrote:
> > On Mon, Oct 14, 2019 at 7:50 PM Peter Xu wrote:
> > >
> > > On Mon, Oct 14, 2019 at 01:28:49PM -0700, Jintack Lim wrote:
> > > > Hi,
> > >
> > > Hello, Jintack,
> > >
> > Hi Peter,
On Saturday, October 19, 2019, Anup Patel wrote:
> Hi,
>
> From: Aleksandar Markovic
> Sent: Saturday, October 19, 2019 2:45 AM
> To: Anup Patel
> Cc: Peter Maydell ; Palmer Dabbelt <
> pal...@sifive.com>; Alistair Francis ; Sagar
> Karandikar ; Bastian Koppelmann <
> kbast...@mail.uni-paderbor
There was no real virtio-mmio ABI change between Legacy and VIRTIO 1.0
except that the Version field was incremented from 1 to 2.
However, QEMU does not allow Legacy drivers to perform VIRTIO 1.0
operations like accessing 64-bit feature bits. Since we will introduce
64-bit feature bit support we
VIRTIO Device Initialization requires feature negotiation. Currently
virtio-scsi-test.c is non-compliant.
Signed-off-by: Stefan Hajnoczi
---
tests/virtio-scsi-test.c | 8
1 file changed, 8 insertions(+)
diff --git a/tests/virtio-scsi-test.c b/tests/virtio-scsi-test.c
index 7c8f9b27f8.
In VIRTIO 1.0 feature bits changed from 32-bit to 64-bit. (In fact, the
transports allow even more feature bits but nothing uses more than 64
bits today.)
Add 64-bit feature bit support to virtio-mmio and virtio-pci. This will
be necessary for VIRTIO 1.0 support.
Signed-off-by: Stefan Hajnoczi
v3:
* Now implements VIRTIO 1.0 fully (vring, device initialization).
This required several new patches to address the following issues:
1. Tests that do not negotiate features (non-compliant!)
2. Tests that access configuration space before feature negotiation
(non-compliant!)
3
The VIRTIO Configuration Space cannot be accessed before device feature
bits have been read because a driver doesn't know the endianness until
it has checked VIRTIO_F_VERSION_1.
Fix this problem in preparation for VIRTIO 1.0 support.
Signed-off-by: Stefan Hajnoczi
---
tests/virtio-blk-test.c |
VIRTIO Device Initialization requires that feature negotiation has
completed before virtqueues are set up. This makes sense because the
driver must know whether it is operating in Legacy or VIRTIO 1.0 mode
before it can access vring fields with the correct endianness.
Signed-off-by: Stefan Hajnoc
VIRTIO Device Initialization requires feature negotiation. The libqos
virtio-9p driver lacks feature negotiation and is therefore
non-compliant.
Signed-off-by: Stefan Hajnoczi
---
tests/libqos/virtio-9p.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/tests/libqos/virtio-9p.c b/tests
Device initialization has an extra step in VIRTIO 1.0. The FEATURES_OK
status bit is set to indicate that feature negotiation has completed.
The driver then reads the status register again to check that the device
agrees with the final features.
Implement this step as part of qvirtio_set_features
According to VIRTIO 1.1 "3.1.1 Driver Requirements: Device
Initialization", configuration space and virtqueues cannot be accessed
before features have been negotiated. Enforce this requirement.
Signed-off-by: Stefan Hajnoczi
---
tests/libqos/virtio.c | 11 +++
1 file changed, 11 inserti
The VIRTIO 1.0 code will need to perform additional steps but it will
reuse the common virtqueue setup/cleanup code. Make these functions
public.
Make sure to invoke callbacks via QVirtioBus instead of directly calling
the virtio-pci Legacy versions of these functions.
Signed-off-by: Stefan Hajn
VIRTIO 1.0 uses little-endian for the vring. Legacy VIRTIO uses guest
endianness. Adjust the code to handle both.
Note that qvirtio_readq() is not defined because it has no users. All
the other accessors are really needed.
Signed-off-by: Stefan Hajnoczi
---
tests/libqos/virtio.h | 4 +
VIRTIO 1.0 PCI devices have multiple PCI_CAP_ID_VNDR capabilities so we
need a way to iterate over them. Extend qpci_find_capability() to take
the last address.
Signed-off-by: Stefan Hajnoczi
--
v3:
* Document qpci_find_capability()
---
tests/libqos/pci.h | 2 +-
tests/libqos/pci.c | 30 +
The Legacy virtio-pci interface always uses BAR 0. VIRTIO 1.0 may need
to use a different BAR index, so make it configurable.
Signed-off-by: Stefan Hajnoczi
---
v3:
* Change uint8_t bar_idx to int [Thomas]
---
tests/libqos/virtio-pci.h | 2 ++
tests/libqos/virtio-pci.c | 3 ++-
2 files changed
Instead of just passing the vring page frame number, pass the full
QVirtQueue. This will allow the VIRTIO 1.0 transport to program the
fine-grained vring address registers in the future.
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Sergio Lopez
Reviewed-by: Thomas Huth
---
tests/libqos/virtio.
The MSI-X vectors are programmed differently in the VIRTIO 1.0 and
Legacy interfaces. Introduce callbacks so different implementations can
be used depending on the interface version.
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Sergio Lopez
Reviewed-by: Thomas Huth
---
tests/libqos/virtio-pci.
The current libqos virtio-pci.c code implements the VIRTIO Legacy
interface. Extract existing code in preparation for VIRTIO 1.0 support.
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Sergio Lopez
Reviewed-by: Thomas Huth
---
tests/libqos/virtio-pci.h | 2 --
tests/libqos/virtio-pci.c | 29 +++
Implement the VIRTIO 1.0 virtio-pci interface. The main change here is
that the register layout is no longer a fixed layout in BAR 0. Instead
we have to iterate of PCI Capabilities to find descriptions of where
various registers are located. The vring registers are also more
fine-grained, allowi
401 - 424 of 424 matches
Mail list logo