From: "andrzej zaborowski" <balrogg@gmail.com>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] qemu softmmu_template.h
Date: Sat, 17 Nov 2007 11:44:48 +0100 [thread overview]
Message-ID: <fb249edb0711170244o40bd4e5ak84bfe43cec923535@mail.gmail.com> (raw)
In-Reply-To: <1195295212.5335.36.camel@rapid>
On 17/11/2007, J. Mayer <l_indien@magic.fr> wrote:
>
> On Sat, 2007-11-17 at 11:14 +0100, andrzej zaborowski wrote:
> > On 17/11/2007, J. Mayer <l_indien@magic.fr> wrote:
> > >
> > > On Sat, 2007-11-17 at 09:53 +0000, Andrzej Zaborowski wrote:
> > > > CVSROOT: /sources/qemu
> > > > Module name: qemu
> > > > Changes by: Andrzej Zaborowski <balrog> 07/11/17 09:53:42
> > > >
> > > > Modified files:
> > > > . : softmmu_template.h
> > > >
> > > > Log message:
> > > > Check permissions for the last byte first in unaligned slow_st accesses (patch from TeLeMan).
> > > >
> > > > CVSWeb URLs:
> > > > http://cvs.savannah.gnu.org/viewcvs/qemu/softmmu_template.h?cvsroot=qemu&r1=1.19&r2=1.20
> > > >
> > >
> > > Has it been checked that it's legal for all architectures and cannot
> > > have any nasty side effect to do accesses in the reverse order ? Real
> > > hardware do not ever seem to do this...
> >
> > For real hardware the store is a single operation.
>
> For PowerPC, at least, only aligned stores are defined as atomic. It's
> absolutely legal for an implementation to split all non-atomic accesses
> into smaller aligned accesses. And I guess it is the same for all
> architecture that can do unaligned accesses.
>
> > Logically it shouldn't have any side effects, but if it does then it
> > would rather mean that other code for that architecture is (also)
> > broken, I believe.
> >
> > I've only tested ARM, mips, x86 and x86_64 before committing, so
> > please test. I figured that the patch won't get any comments on the
> > mailing list if it isn't merged.
>
> I don't think it's so easy to test because it may be very hard to
> trigger the cases that would have side effects, which are target
> dependent. I then am very curious to know how you did check that there
> is no problem with this patch....
Well, for ARM, x86 and x86_64 I only checked that unaligned accesses
still work, i.e. that I haven't made an obvious typo. I haven't tested
cross-page accesses with the access to the second page being invalid,
I also don't know how the specifications for other architectures
define the effect of such accesses, so maybe I shouldn't have
committed this, but I assumed a common sense in the design of cpu
archs, meaning that in the example given by TeLeMan the addition is
not performed two times on some bytes.
Regards
next prev parent reply other threads:[~2007-11-17 10:44 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-17 9:53 [Qemu-devel] qemu softmmu_template.h Andrzej Zaborowski
2007-11-17 10:00 ` J. Mayer
2007-11-17 10:14 ` andrzej zaborowski
2007-11-17 10:26 ` J. Mayer
2007-11-17 10:44 ` andrzej zaborowski [this message]
2007-11-17 11:02 ` J. Mayer
2007-11-17 11:57 ` andrzej zaborowski
2007-11-17 12:08 ` J. Mayer
2007-11-17 11:14 ` Blue Swirl
2007-11-17 11:40 ` Fabrice Bellard
2007-11-17 13:58 ` Paul Brook
2007-11-17 13:00 ` TeLeMan
-- strict thread matches above, loose matches on Subject: below --
2006-02-08 22:41 Fabrice Bellard
2005-12-05 19:57 Fabrice Bellard
2005-11-26 10:28 Fabrice Bellard
2003-11-09 16:58 Fabrice Bellard
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=fb249edb0711170244o40bd4e5ak84bfe43cec923535@mail.gmail.com \
--to=balrogg@gmail.com \
--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).