[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: QEMU features useful for Xen development?


  • To: Alex Bennée <alex.bennee@xxxxxxxxxx>
  • From: Ayan Kumar Halder <ayankuma@xxxxxxx>
  • Date: Fri, 20 Oct 2023 19:15:25 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YmwKfZa/DtF6GybwdS3XlOJuFOpxQ+yAxfoJ4CmS64A=; b=Y+tRSKtuXCOXxvaS4SG1R0fFf6WfEjQaNpusQSwZA0dIiTYC5BEPpViYMNUFHu1dTih/f1LvS7VD4MCAEw4CxzMaDILp3sJiPzB6UZn63SG08MCHDl6uwgNcf9mUzD7+gF2e6NRQ+hBp1MlealdCOUh9b+gPH82j/hmeFG7DyKQMrmTsqj8GSlCluojgzzrJ6JIOnzf+EpgBp9Vvn+h1N/YcHzmZl1hev5NxQ27SkndFtcug7QrnfjbdEa1X+p/3TrAPROVIx0/NMPBTysJN5DE6gNqZXhIA1vY+EMQE2o9IaW8NDWAVtC/l3Q0KUvLi0pLBJApNO2UlCb7vOqCyqw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZvZYDQop1RcHR/8xcJZhvCbUsprz7z3D37Muy3vKLsq91D1be2I7qCD8tqq4ufeAWuwcaKln99NpcECIaoMpQHjKWTwuTZtXqgR2IIXktSqD1Te3o3quZ7BtEAeHJAarccaX7WPuezn6MMYUKD0oCCU5p7PlHgRiA/Y7HlDg2sRTsx1Gmp6xyvyPcGZGI5zL51cmaVwjiQOBtn2mqtyJC449zmVaJ4X24xDiECARUxj7ogVJqsvUUgSECJSARA7qfsPp8J8CZ7++zJ7E7kPi4QI3hK5kfbFGV75YcH9MNqThS7ccmY1YOYGx+Kb/RbCgdoUdRwXP7sou6AQO0TmV7A==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com;
  • Cc: Peter Maydell <peter.maydell@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Stewart Hildebrand <stewart.hildebrand@xxxxxxx>, Viresh Kumar <viresh.kumar@xxxxxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Sergiy Kibrik <Sergiy_Kibrik@xxxxxxxx>, QEMU Developers <qemu-devel@xxxxxxxxxx>, Vikram Garhwal <vikram.garhwal@xxxxxxx>, Stefano Stabellini <stefano.stabellini@xxxxxxx>, Marcin Juszkiewicz <marcin.juszkiewicz@xxxxxxxxxx>, Jonathan Cameron <jonathan.cameron@xxxxxxxxxx>
  • Delivery-date: Fri, 20 Oct 2023 18:15:44 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Hi Alex,

On 20/10/2023 16:15, Alex Bennée wrote:
Ayan Kumar Halder <ayankuma@xxxxxxx> writes:

Hi Peter/Alex,

Appreciate your help. :)

On 31/08/2023 11:03, Peter Maydell wrote:
CAUTION: This message has originated from an External Source. Please
use proper judgment and caution when opening attachments, clicking
links, or responding to this email.


On Thu, 31 Aug 2023 at 10:53, Alex Bennée <alex.bennee@xxxxxxxxxx> wrote:
Peter Maydell <peter.maydell@xxxxxxxxxx> writes:

On Thu, 31 Aug 2023 at 01:57, Stefano Stabellini <sstabellini@xxxxxxxxxx> wrote:
As Xen is gaining R52 and R82 support, it would be great to be able to
use QEMU for development and testing there as well, but I don't think
QEMU can emulate EL2 properly for the Cortex-R architecture. We would
need EL2 support in the GIC/timer for R52/R82 as well.
We do actually have a Cortex-R52 model which at least in theory
should include EL2 support, though as usual with newer QEMU
stuff it quite likely has lurking bugs; I'm not sure how much
testing it's had. Also there is currently no board model which
will work with the Cortex-R52 so it's a bit tricky to use in practice.
(What sort of board model would Xen want to use it with?)
We already model a bunch of the mps2/mps3 images so I'm assuming adding
the mps3-an536 would be a fairly simple step to do (mps2tz.c is mostly
tweaking config values). The question is would it be a useful target for
Xen?
All our MPS2/MPS3 boards are M-profile. That means we have the
device models for all the interesting devices on the board, but
it would be simpler to write the an536 board model separately.
(In particular, the M-profile boards are wrappers around an
"ARMSSE" sort-of-like-an-SoC component; there's no equivalent
for the Cortex-R52.)

    https://developer.arm.com/documentation/dai0536/latest/
Yes, it will be helpful if Qemu can model this board. We have a
downstream port of Xen on R52 (upstreaming is in progress).

So, we can test the Qemu model with Xen.

Also if all works fine, we might consider adding this to the upstream
Xen CI docker.
We wrote up whats required on our JIRA:

   https://linaro.atlassian.net/browse/QEMU-598

Given we have most of the bits already it shouldn't take long to build a
model for it. However I want to draw every ones attention to the notes:

   The real FPGA image does not have a global monitor that can support
   LDREX/STREX between the two CPUs for accesses in the DDR4 RAM or BRAM.
   This means that effectively guest software will only be able to use
   one CPU (the local monitor within the CPU works fine). This
   restriction won’t apply to the QEMU model, but is important to be
   aware of if you’re writing guest software on the QEMU model that you
   also want to be able to run on the FPGA board.

However if that meets the requirements for Xen testing and no one tries
to run SMP loads on real HW then I can try and find space on our roadmap
to do it (rough guess 9.1 or 9.2?).

Yes, this meets the requirements for Xen testing.

It will be great to use Qemu for Xen testing.

Please keep me posted on this feature as I am plumbing the R52 bits in upstream Xen.

- Ayan





 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.