All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Graf <agraf@suse.de>
To: "Andreas Färber" <andreas.faerber@web.de>
Cc: Kenneth Salerno <kennethsalerno@yahoo.com>,
	"paulus@samba.org" <paulus@samba.org>,
	QEMU-devel Developers <qemu-devel@nongnu.org>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [Qemu-devel] [PATCH] Fix a bug in mtsr/mtsrin emulation on ppc64
Date: Sat, 21 May 2011 14:16:52 +0200	[thread overview]
Message-ID: <C8ED53A3-D671-46D7-B98D-B86F4B1A0930@suse.de> (raw)
In-Reply-To: <27B8983F-C159-4D58-8F1C-8F608A0E4CD2@web.de>


On 21.05.2011, at 11:39, Andreas Färber wrote:

> Am 21.05.2011 um 03:58 schrieb Alexander Graf:
> 
>> Am 21.05.2011 um 00:37 schrieb Andreas Färber <andreas.faerber@web.de>:
>> 
>>> Am 20.05.2011 um 09:40 schrieb Alexander Graf:
>>> 
>>>> On 20.05.2011, at 05:34, David Gibson wrote:
>>>> 
>>>>> Early ppc64 CPUs include a hack to partially simulate the ppc32 segment
>>>>> registers, by translating writes to them into writes to the SLB.  This is
>>>>> not used by any current Linux kernel, but it is used by the openbios used
>>>>> in the qemu mac99 model.
>>>>> 
>>>>> Commit 81762d6dd0d430d87024f2c83e9c4dcc4329fb7d, cleaning up the SLB
>>>>> handling introduced a bug in this code, breaking the openbios currently in
>>>>> qemu.  Specifically, there was an off by one error bitshuffling the
>>>>> register format used by mtsr into the format needed for the SLB load,
>>>>> causing the flag bits to end up in the wrong place.  This caused the
>>>>> storage keys to be wrong under openbios, meaning that the translation code
>>>>> incorrectly thought a legitimate access was a permission violation.
>>>>> 
>>>>> This patch fixes the bug, at the same time it fixes some build bug in the
>>>>> MMU debugging code (only exposed when DEBUG_MMU is enabled).
>>>> 
>>>> Thanks, applied to ppc-next :)
>>> 
>>> Nack, this does not fix ppc64 for me! How did you test it, Alex???
>> 
>> I booted a ppc64 kernel on a ppc64 Linux system with tcg and it booted fine for me. Maybe you're hitting yet another issue?
> 
> Which OpenBIOS did you use? The 32-bit version using mtsrin works now, but not the 64-bit HEAD version that I attached, which uses slb* instructions instead.

After some debugging, we tracked the 64-bit issue down to a bug in OpenBIOS, so things are fine in Qemu land now :)


Alex

  parent reply	other threads:[~2011-05-21 12:16 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-20  3:34 [Qemu-devel] [PATCH] Fix a bug in mtsr/mtsrin emulation on ppc64 David Gibson
2011-05-20  7:40 ` Alexander Graf
2011-05-20 22:37   ` Andreas Färber
2011-05-21  1:58     ` Alexander Graf
2011-05-21  9:39       ` Andreas Färber
2011-05-21  9:44         ` Alexander Graf
2011-05-21 12:16         ` Alexander Graf [this message]
2011-05-21  9:39       ` Alexander Graf
2011-05-21  9:40   ` Andreas Färber
2011-05-21  9:46     ` Alexander Graf
2011-05-21 11:13       ` David Gibson
2011-05-21 11:22         ` Alexander Graf
2011-05-21  9:46 ` Andreas Färber
  -- strict thread matches above, loose matches on Subject: below --
2011-05-20  3:33 David Gibson

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=C8ED53A3-D671-46D7-B98D-B86F4B1A0930@suse.de \
    --to=agraf@suse.de \
    --cc=andreas.faerber@web.de \
    --cc=david@gibson.dropbear.id.au \
    --cc=kennethsalerno@yahoo.com \
    --cc=paulus@samba.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.