From: "Michael S. Tsirkin" <mst@redhat.com>
To: Michael Tokarev <mjt@tls.msk.ru>
Cc: Simon John <git@the-jedi.co.uk>,
imammedo@redhat.com, qemu-devel@nongnu.org,
Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [PATCH] Allow acpi-tmr size=2
Date: Tue, 14 Jul 2020 03:55:19 -0400 [thread overview]
Message-ID: <20200714035300-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <34d24b3a-75ec-ad94-c61b-2ebe4a0f277a@msgid.tls.msk.ru>
On Mon, Jul 13, 2020 at 05:16:56PM +0300, Michael Tokarev wrote:
> 13.07.2020 15:17, Michael S. Tsirkin пишет:
> > On Mon, Jul 13, 2020 at 12:46:00PM +0100, Simon John wrote:
> >> I don't profess to understand most of this, I am just a user who found
> >> something didn't work and tracked down the cause with help from the people
> >> on the bugtracker.
> >>
> >> the min=1 and max=4 was chosen as it seems to be set that way in most other
> >> places in the source, and 2 fits in that range.
> >>
> >> so as macos seems to require 2 bytes but spec says 4 (32 bits) would it be
> >> better to set min=2 max=4, given that the original revert seems to be a
> >> security fix?
>
> It's not about the security fix, it's about the piece in qemu code which
> behaved wrongly for several years, which finally started to actually work.
>
> >> this works equally well:
> >>
> >> static const MemoryRegionOps acpi_pm_tmr_ops = {
> >> .read = acpi_pm_tmr_read,
> >> .write = acpi_pm_tmr_write,
> >> .valid.min_access_size = 2,
> >> .valid.max_access_size = 4,
> >> .endianness = DEVICE_LITTLE_ENDIAN,
> >> };
> >>
> >> regards.
> >>
> >
> > Sounds good. And how about also adding:
>
> What this call will receive on a real HW? returning the same 4 bytes
> even when asked for 2 smells wrong, no?
>
> > .impl.min_access_size = 4,
>
> What does it mean? :)
>
> /mjt
This will allow you to return a 4 byte value and will shift it
accordingly.
See: docs/devel/memory.rst :
- .impl.min_access_size, .impl.max_access_size define the access sizes
(in bytes) supported by the *implementation*; other access sizes will be
emulated using the ones available. For example a 4-byte write will be
emulated using four 1-byte writes, if .impl.max_access_size = 1.
--
MST
next prev parent reply other threads:[~2020-07-14 7:56 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-12 12:00 [PATCH] Allow acpi-tmr size=2 Simon John
2020-07-13 7:20 ` Michael Tokarev
2020-07-13 7:43 ` Michael Tokarev
2020-07-13 11:01 ` Michael S. Tsirkin
2020-07-13 11:14 ` Michael S. Tsirkin
2020-07-13 11:46 ` Simon John
2020-07-13 12:17 ` Michael S. Tsirkin
2020-07-13 14:16 ` Michael Tokarev
2020-07-14 7:55 ` Michael S. Tsirkin [this message]
2020-07-14 10:55 ` Philippe Mathieu-Daudé
2020-07-14 11:12 ` Michael S. Tsirkin
2020-07-14 9:29 ` Michael S. Tsirkin
-- strict thread matches above, loose matches on Subject: below --
2020-07-13 13:50 Simon John
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=20200714035300-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=git@the-jedi.co.uk \
--cc=imammedo@redhat.com \
--cc=kraxel@redhat.com \
--cc=mjt@tls.msk.ru \
--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).