From: Chao Liu <chao.liu@yeah.net>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org, bin.meng@windriver.com,
edgar.iglesias@gmail.com, alistair@alistair23.me
Subject: Re: Re: [PATCH v2 0/2] Drop ignore_memory_transaction_failures for xilink_zynq
Date: Fri, 27 Sep 2024 22:43:07 +0800 [thread overview]
Message-ID: <f3a856aa-52c0-43a0-be32-0610e38c8bcd@yeah.net> (raw)
In-Reply-To: <CAFEAcA-Eod5HrhsNzPcrszTLS2G2+n=87svbfUEs8BhA=F_MwQ@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2704 bytes --]
On 2024/9/27 22:20, Peter Maydell wrote:
> On Fri, 27 Sept 2024 at 15:03, Chao Liu<chao.liu@yeah.net> wrote:
>> On 2024/9/27 20:18, Peter Maydell wrote:
>>> On Fri, 27 Sept 2024 at 09:52, Chao Liu<chao.liu@yeah.net> wrote:
>>> Even if our test set is not sufficiently comprehensive, we can create an
>>> unimp_device for the maximum address space allowed by the board. This prevents
>>> the guest system from triggering unexpected exceptions when accessing
>>> unimplemented devices or regions.
>> What would be the benefit of doing that? If we're going to
>> say "we'll make accesses to regions without devices not
>> generate faults", the simplest way to do that is to
>> leave the ignore_memory_transaction_failures flag set
>> the way it is.
>> Introducing this flag provides a straightforward way to suppress
>> memory access exceptions by checking if the flag is enabled after
>> a CPU memory access failure; however,its primary purpose is to
>> ensure compatibility.
>> Since we can designate unimplemented device memory ranges with
>> "unimplemented-device," this represents a more standard approach in QEMU
>> for managing RAZ/WI behavior.
> I don't think that using a 4GB unimplemented-device is
> a "more standard" way to do this. We have a standard way for
> the board model to say "we don't know whether there might
> be existing guest code out there that relies on being able
> to make accesses to addresses where there should be a device
> but we haven't modeled it". That way is to set the
> ignore_memory_transaction_failures flag.
>
> There are two things we can do:
>
> (1) We can leave the ignore_memory_transaction_failures
> flag set. This is safe (no behaviour change) but not the
> right (matching the hardware) behaviour. The main reason
> to do this is if we don't feel we have enough access to
> a range of guest code to test the other approach.
>
> (2) We can clear the flag. This is preferable (it matches the
> hardware). But the requirement to do this is that
> (a) we must make the best effort we can to be sure we've
> put unimplemented-device placeholders for specific
> devices we don't yet model (by checking e.g. the
> hardware documentation for the SoC and board model,
> the device tree, etc)
> (b) we do the most wide-ranging testing of guest code that
> we can. This checks that we didn't miss anything in (a).
>
> I don't mind which of these we do. What I was asking in my
> comments on version one of your patch was for how we were
> doing on requirement 2b.
>
> thanks
> -- PMM
I understand! I will provide more comprehensive testing methods
and results as soon as possible and will get back to you.
Best regards,
Chao Liu
[-- Attachment #2: Type: text/html, Size: 3659 bytes --]
prev parent reply other threads:[~2024-09-27 14:44 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-27 8:51 [PATCH v2 0/2] Drop ignore_memory_transaction_failures for xilink_zynq Chao Liu
2024-09-27 8:51 ` [PATCH v2 1/2] xilink_zynq: Add various missing unimplemented devices Chao Liu
2024-09-27 8:51 ` [PATCH v2 2/2] xilink-zynq-devcfg: Fix up for memory address range size not set correctly Chao Liu
2024-09-27 12:18 ` [PATCH v2 0/2] Drop ignore_memory_transaction_failures for xilink_zynq Peter Maydell
2024-09-27 14:03 ` Chao Liu
2024-09-27 14:20 ` Peter Maydell
2024-09-27 14:43 ` Chao Liu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f3a856aa-52c0-43a0-be32-0610e38c8bcd@yeah.net \
--to=chao.liu@yeah.net \
--cc=alistair@alistair23.me \
--cc=bin.meng@windriver.com \
--cc=edgar.iglesias@gmail.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).