qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: Alexander Graf <agraf@suse.de>,
	Laurent Vivier <lvivier@redhat.com>,
	David Gibson <dgibson@redhat.com>
Cc: qemu-ppc@nongnu.org, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] target-ppc: Multiple/String Word alignment exception
Date: Thu, 31 Mar 2016 11:18:10 +0200	[thread overview]
Message-ID: <56FCEB52.7070001@redhat.com> (raw)
In-Reply-To: <56FCE7CE.10702@suse.de>

On 31.03.2016 11:03, Alexander Graf wrote:
> On 03/31/2016 10:50 AM, Thomas Huth wrote:
>> On 31.03.2016 09:15, Alexander Graf wrote:
>>> On 31.03.16 09:06, Laurent Vivier wrote:
>>>> On 31/03/2016 08:54, Alexander Graf wrote:
>>>>> On 31.03.16 01:29, David Gibson wrote:
>>>>>> On Wed, 30 Mar 2016 19:13:00 +0200
>>>>>> Laurent Vivier <lvivier@redhat.com> wrote:
>>>>>>
>>>>>>> If the processor is in little-endian mode, an alignment interrupt
>>>>>>> must
>>>>>>> occur for the following instructions: lmw, stmw, lswi, lswx,
>>>>>>> stswi or stswx.
>>>>>>>
>>>>>>> This is what happens with KVM, so change TCG to do the same.
>>>>>>>
>>>>>>> As the instruction can be emulated by the kernel, enable the change
>>>>>>> only in softmmu mode.
>>>>>>>
>>>>>>> Signed-off-by: Laurent Vivier <lvivier@redhat.com>
>>>>>> I guess this makes sense given the existing hardware behaviour, even
>>>>>> though it seems a bit perverse to me to make the emulator strictly
>>>>>> less
>>>>>> functional.
>>>>>>
>>>>>> Alex, what do you think?
>>>>> In general we only implement strict checks if it breaks guests not to
>>>>> have them. Are you aware of any such case?
>> Well, the new "emulator" test for kvm-unit-tests only works right if
>> this is done correctly ;-)
>>
>>> That's basically what David was trying to say with POWER9. How do you
>>> know that POWER9 still requires strong alignment checks for indexed LE
>>> instructions? If it doesn't, we'd have to add a case in TCG to not the
>>> the checks again. These multiply very quickly :).
>> I'd agree with you in case something is not properly defined in the ISA
>> or marked as implementation specific. But in this case, this behavior is
>> properly documented in the PowerISA spec. IMHO, if something is
>> documented in the ISA, we should follow that behavior in QEMU, too, i.e.
> 
> It's not even necessarily about documented or not. It's about
> differences in different PowerISA versions :).

As Laurent already mentioned it in another mail, it's defined like this
in pretty much all of the ISAs - at least from 2.01 to 2.07 as far as I
can see, too. (I don't have an older version of the PowerISA than 2.01).
I just checked also the "User Manuals" of the PPC 601, the PPC 603, and
the MPC750, and they also specify that these instructions cause an
alignment exception in little endian mode, so I think this really should
occur pretty much with every PPC chip that can run in little endian mode.

 Thomas

      reply	other threads:[~2016-03-31  9:18 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-30 17:13 [Qemu-devel] [PATCH] target-ppc: Multiple/String Word alignment exception Laurent Vivier
2016-03-30 23:29 ` David Gibson
2016-03-31  0:53   ` Laurent Vivier
2016-03-31  6:54   ` Alexander Graf
2016-03-31  7:06     ` Laurent Vivier
2016-03-31  7:15       ` Alexander Graf
2016-03-31  7:39         ` Laurent Vivier
2016-03-31  8:50         ` Thomas Huth
2016-03-31  9:03           ` Alexander Graf
2016-03-31  9:18             ` Thomas Huth [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=56FCEB52.7070001@redhat.com \
    --to=thuth@redhat.com \
    --cc=agraf@suse.de \
    --cc=dgibson@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@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).