From: Michael Mueller <mimu@linux.vnet.ibm.com>
To: Michael Mueller <mimu@linux.vnet.ibm.com>
Cc: qemu-devel@nongnu.org, Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH RFC 04/11] s390/qemu: cpu model cpu facilitiy support
Date: Mon, 7 Oct 2013 17:35:17 +0200 [thread overview]
Message-ID: <20131007173517.68545316@bee> (raw)
In-Reply-To: <20131007124753.76c5ec84@bee>
On Mon, 7 Oct 2013 12:47:53 +0200
Michael Mueller <mimu@linux.vnet.ibm.com> wrote:
> On Thu, 03 Oct 2013 07:53:02 -0700
> Richard Henderson <rth@twiddle.net> wrote:
>
> > On 10/02/2013 04:33 AM, Michael Mueller wrote:
> > > +/* set a specific bit in facility set */
> > > +static void set_facility(unsigned int nr, void *facilities)
> > > +{
> > > + unsigned char *ptr;
> > > +
> > > + if (nr >= MAX_S390_FACILITY_BIT) {
> > > + return;
> > > + }
> > > + ptr = (unsigned char *) facilities + (nr >> 3);
> > > + *ptr |= (0x80 >> (nr & 7));
> > > +}
> >
> > I'd like to see this done in a host endian independent way.
>
> valid point, I will address that.
>
> >
> > See my recent patch set to add facility support to the tcg side
> > of target-s390, with which this patch set is going to conflict.
>
> I saw it, that's why I've pushed this patch set out for RFC.
>
> >
> > Is there a good reason not to compute these facility masks at
> > compile-time? See
> >
> > http://patchwork.ozlabs.org/patch/279534/
> >
> > where I have pre-computed (possibly incomplete) facilities lists
> > for the major cpu revisions.
>
> Your facilities lists have been derived from constants introduced in head.S. They represent
> model specific "required" facilities. That does not necessarily mean for all of them that they
> have been introduced with the respective model. Some have been introduced already with model:
> N-1, GA>1
>
> >
> > It just seems like your facility_availability array is the wrong
> > way to go about things, taking up more memory and startup time
> > than necessary.
> >
>
> The reason why I represent them in the data segment is that they are are not considered as
> constants in the s390 system perspective. I plan to be able to simulate firmware migration that
> introduce new facility bits without the need of restarting the guest OS.
>
> A second reason for using 2k of memory here is to fully represent the facilities as defined
> in the s390x architecture. The SIE state needs it and I want to represent it identically in user
> space and KVM. Otherwise I would need a specific interface just for the facilities.
>
> I will consider to alternatively use your way of FAC definition, but still that would include a
> copy.
>
> In regard to the startup time, I will figure out what the overhead is.
A measurement on a z12EC shows the overhead time to be between 500-800 ns per model. Currently
28 models are defined that means the whole calculation time takes well below 30 us.
>
> Thanks a lot!
> Michael
> >
> > r~
> >
>
>
next prev parent reply other threads:[~2013-10-07 15:35 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-02 11:33 [Qemu-devel] [PATCH RFC 00/11] s390 cpu models for KVM accelerator Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 01/11] s390/qemu: cpu modle disable list cpus Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 02/11] s390/qemu: cpu model extend config device Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 03/11] s390/qemu: cpu model cpu class definition Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 04/11] s390/qemu: cpu model cpu facilitiy support Michael Mueller
2013-10-03 14:53 ` Richard Henderson
2013-10-07 10:47 ` Michael Mueller
2013-10-07 15:35 ` Michael Mueller [this message]
2013-10-15 22:46 ` Richard Henderson
2013-10-16 12:21 ` Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 05/11] s390/qemu: cpu model alias support Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 06/11] s390/qemu: cpu model KVM properties requests Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 07/11] s390/qemu: cpu model class initialization Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 08/11] s390/qemu: cpu model command line option help Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 09/11] s390/qemu: cpu model QMP query-cpu-definitions Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 10/11] s390/qemu: cpu model QMP query-cpu-model Michael Mueller
2013-10-02 12:06 ` Eric Blake
2013-10-02 14:30 ` Michael Mueller
2013-10-02 11:33 ` [Qemu-devel] [PATCH RFC 11/11] s390/qemu: cpu model enablement Michael Mueller
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=20131007173517.68545316@bee \
--to=mimu@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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).