From: David Gibson <david@gibson.dropbear.id.au>
To: Thomas Huth <thuth@redhat.com>
Cc: qemu-devel@nongnu.org, mdroth@linux.vnet.ibm.com, agraf@suse.de,
aik@ozlabs.ru, qemu-ppc@nongnu.org, tyreld@linux.vnet.ibm.com,
Bharata B Rao <bharata@linux.vnet.ibm.com>,
nfont@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH v4 5/8] spapr: Consolidate cpu init code into a routine
Date: Wed, 17 Jun 2015 14:43:24 +1000 [thread overview]
Message-ID: <20150617044324.GR13352@voom.redhat.com> (raw)
In-Reply-To: <20150616083634.1661908d@thh440s>
[-- Attachment #1: Type: text/plain, Size: 3414 bytes --]
On Tue, Jun 16, 2015 at 08:36:34AM +0200, Thomas Huth wrote:
> On Tue, 16 Jun 2015 15:40:05 +1000
> David Gibson <david@gibson.dropbear.id.au> wrote:
>
> > On Mon, Jun 15, 2015 at 10:15:09AM +0200, Thomas Huth wrote:
> > > On Mon, 15 Jun 2015 16:59:08 +1000
> > > David Gibson <david@gibson.dropbear.id.au> wrote:
> > >
> > > > On Fri, Jun 05, 2015 at 09:55:55AM +0530, Bharata B Rao wrote:
> > > > > Factor out bits of sPAPR specific CPU initialization code into
> > > > > a separate routine so that it can be called from CPU hotplug
> > > > > path too.
> > > > >
> > > > > While at this, use MSR_EP define instead of using 6 directly.
> > > >
> > > > Don't do this please. MSR[EP] is an obsolete flag from 601. The
> > > > MSR[IP] flag that we're controlling here just happened to re-use the
> > > > same bit position, so using the existing MSR_EP define is misleading.
> > >
> > > Actually, I had the same discussion with Bharata already some weeks ago:
> > >
> > > http://lists.gnu.org/archive/html/qemu-ppc/2015-05/msg00133.html
> > >
> > > > A symbolic name is good, but you should create a new one for MSR[IP]
> > > > instead.
> > >
> > > ... and I had to realize that IP = EP. IP likely stands for "interrupt
> > > prefix" (I guess), and EP simply means "exception prefix", so just two
> > > words for the same meaning. It's just the "on 601" comment in QEMU that
> > > is completely misleading. So IMHO it should be fine to keep the
> > > "MSR_EP" here (and maybe update the comment in cpu.h with a separate
> > > patch?).
> >
> > I don't entirely agree. Yes EP and IP have related functions - it's
> > pretty common in ppc history that when an MSR bit is re-used it's for
> > something similar (for example IS/IR). But MSR[IP] is still a
> > different name from MSR[EP], and I don't know if the semantics are
> > identical, though I'm sure they're similar.
>
> I had a look at the 601 User's Manual, and it says:
>
> Bit Name Description
> 25 EP Exception prefix. The setting of this bit specifies whether an
> exception vector offset is prepended with Fs or 0s.
>
> Then, looking at the 603 User's Manual, it says:
>
> Bit Name Description
> 25 IP Exception prefix. The setting of this bit specifies whether an
> exception vector offset is prepended with Fs or 0s.
>
> So it's the very same bit, just the name has already been changed
> between the 601 and 603 already.
>
> So I think it's either fine to keep the MSR_EP in the patch (and change
> the comment for the define in a separate patch?), or to introduce
> another define, MSR_IP, with a comment that it is the same as MSR_EP,
> just with a different name.
I'd still prefer to see the modern name in the #define.
> However, I still wonder whether this bit applies to the spapr code at
> all since it is not defined in the modern PowerISA spec anymore, as far
> as I can see.
Hrm.. yeah. I am wondering if it is not architected, but actually
present as an implementation specific MSR bit on the modern CPUs.
I see that Bharata has reposted leaving the literal 6 as is, which is
probably a fair call until we find a consensus here.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2015-06-17 7:31 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-05 4:25 [Qemu-devel] [PATCH v4 0/8] sPAPR CPU hotplug pre-requisites Bharata B Rao
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 1/8] spapr: Consider max_cpus during xics initialization Bharata B Rao
2015-06-05 5:30 ` Alexey Kardashevskiy
2015-06-05 7:07 ` Bharata B Rao
2015-06-05 8:01 ` Alexey Kardashevskiy
2015-06-15 6:55 ` David Gibson
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 2/8] spapr: Support ibm, lrdr-capacity device tree property Bharata B Rao
2015-06-15 6:56 ` David Gibson
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 3/8] cpus: Add a macro to walk CPUs in reverse Bharata B Rao
2015-06-05 14:39 ` Andreas Färber
2015-06-15 6:41 ` David Gibson
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 4/8] spapr: Reorganize CPU dt generation code Bharata B Rao
2015-06-05 6:09 ` Alexey Kardashevskiy
2015-06-05 7:06 ` Bharata B Rao
2015-06-05 7:55 ` Alexey Kardashevskiy
2015-06-15 6:57 ` David Gibson
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 5/8] spapr: Consolidate cpu init code into a routine Bharata B Rao
2015-06-15 6:59 ` David Gibson
2015-06-15 8:15 ` Thomas Huth
2015-06-16 5:40 ` David Gibson
2015-06-16 6:36 ` Thomas Huth
2015-06-17 4:43 ` David Gibson [this message]
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 6/8] ppc: Update cpu_model in MachineState Bharata B Rao
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 7/8] xics_kvm: Don't enable KVM_CAP_IRQ_XICS if already enabled Bharata B Rao
2015-06-15 6:59 ` David Gibson
2015-06-05 4:25 ` [Qemu-devel] [PATCH v4 8/8] xics_kvm: Add cpu_destroy method to XICS Bharata B Rao
2015-06-05 8:09 ` Alexey Kardashevskiy
2015-06-05 9:15 ` Bharata B Rao
2015-06-15 7:00 ` 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=20150617044324.GR13352@voom.redhat.com \
--to=david@gibson.dropbear.id.au \
--cc=agraf@suse.de \
--cc=aik@ozlabs.ru \
--cc=bharata@linux.vnet.ibm.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=nfont@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=thuth@redhat.com \
--cc=tyreld@linux.vnet.ibm.com \
/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.