[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model |
Date: |
Fri, 23 Nov 2018 12:17:33 +1100 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Thu, Nov 22, 2018 at 08:59:32AM +0100, Cédric Le Goater wrote:
> On 11/22/18 7:50 AM, Benjamin Herrenschmidt wrote:
> > On Thu, 2018-11-22 at 15:44 +1100, David Gibson wrote:
> >>
> >> Sorry, didn't think of this in my first reply.
> >>
> >> 1) Does the hardware ever actually write back to the EAS? I know it
> >> does for the END, but it's not clear why it would need to for the
> >> EAS. If not, we don't need the setter.
> >
> > Nope, though the PAPR model will via hcalls
>
> Indeed. The H_INT_SET_SOURCE_CONFIG hcall updates the EAT.
>
> >> 2) The signatures are a bit odd here. For the setter, a value would
> >> make sense than a (XiveEAS *), since it's just a word. For the getter
> >> you could return the EAS value directly rather than using a pointer -
> >> there's already a valid bit in the EAS so you can construct a value
> >> with that cleared if the lisn is out of bounds.
>
> Yes we could. I think I made it that way to be consistent with the
> other XIVE internal structures which are bigger : END, NVT
Yeah, but as noted elsewhere I don't really like the get/set model for
the bigger-than-word-size structures. It gives the impression that
they're atomic updates when they can't be, as well as unnecessarily
copying a bunch of stuff, sometimes on hot paths
> There might be other reasons in Pnv. One was to use generic accessors
> to the guest RAM but I didn't do it finally. Take a look at the Pnv
> model and we might decide to change the prototype then. I don't
> think it's a major change.
Hmmm.
--
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
signature.asc
Description: PGP signature
- Re: [Qemu-ppc] [PATCH v5 02/36] ppc/xive: add support for the LSI interrupt sources, (continued)
- Re: [Qemu-ppc] [PATCH v5 02/36] ppc/xive: add support for the LSI interrupt sources, Cédric Le Goater, 2018/11/23
- Re: [Qemu-ppc] [PATCH v5 02/36] ppc/xive: add support for the LSI interrupt sources, David Gibson, 2018/11/26
- Re: [Qemu-ppc] [PATCH v5 02/36] ppc/xive: add support for the LSI interrupt sources, Cédric Le Goater, 2018/11/26
- Re: [Qemu-ppc] [PATCH v5 02/36] ppc/xive: add support for the LSI interrupt sources, David Gibson, 2018/11/26
- Re: [Qemu-ppc] [PATCH v5 02/36] ppc/xive: add support for the LSI interrupt sources, Cédric Le Goater, 2018/11/27
[Qemu-ppc] [PATCH v5 03/36] ppc/xive: introduce the XiveFabric interface, Cédric Le Goater, 2018/11/16
[Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, Cédric Le Goater, 2018/11/16
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, David Gibson, 2018/11/22
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, David Gibson, 2018/11/23
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, Cédric Le Goater, 2018/11/23
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, David Gibson, 2018/11/26
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, Cédric Le Goater, 2018/11/26
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, David Gibson, 2018/11/26
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, Cédric Le Goater, 2018/11/27
- Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, David Gibson, 2018/11/27
Re: [Qemu-ppc] [PATCH v5 04/36] ppc/xive: introduce the XiveRouter model, David Gibson, 2018/11/22