From: David Gibson <david@gibson.dropbear.id.au>
To: "Cédric Le Goater" <clg@kaod.org>
Cc: qemu-ppc@nongnu.org, qemu-devel@nongnu.org,
Greg Kurz <groug@kaod.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>
Subject: Re: [Qemu-devel] [PATCH for-2.12 v3 08/11] spapr: introduce a XICSFabric irq_is_lsi() operation
Date: Thu, 23 Nov 2017 22:12:02 +1100 [thread overview]
Message-ID: <20171123111202.GD22454@umbus.fritz.box> (raw)
In-Reply-To: <54f87bb8-e502-fdc8-1069-2f6081e0d446@kaod.org>
[-- Attachment #1: Type: text/plain, Size: 1959 bytes --]
On Fri, Nov 17, 2017 at 08:23:00AM +0100, Cédric Le Goater wrote:
> On 11/17/2017 05:54 AM, David Gibson wrote:
> > On Fri, Nov 10, 2017 at 03:20:14PM +0000, Cédric Le Goater wrote:
> >> It will be used later on to distinguish the allocation of an LSI
> >> interrupt from an MSI and also to reduce the use of the ICSIRQState
> >> array of the ICSState object, which is on our way to introduce XIVE.
> >>
> >> The 'irq' parameter continues to refer to the global IRQ number space.
> >>
> >> On PowerNV, only the PSI controller interrupts are handled and they
> >> are all LSIs.
> >>
> >> Signed-off-by: Cédric Le Goater <clg@kaod.org>
> >
> > !?! AFAICT this is a step backwards. The users of ics_is_lsi() here
> > are in the xics code. So they already have the right information
> > locally in the ICSState object. Why on earth would you indirect
> > through the fabric.
>
> because I am trying to get rid of the fact that the current ICS
> allocator handles two things at the same time : IRQ allocation
> and IRQ type. And that's a problem because the ICSState object
> is just used everywhere in the code.
That's a good goal, but I don't think this is the right way there.
One of the reasons that conflation of allocation and typing is bad is
that the typing is essentially local information to the PIC itself,
whereas the allocation is a machine concern.
By using a XICSFabric hook you're essentially wiring the irq typing
through the machine, which again seems like a step in the wrong
direction.
> OK, So that's is not to your liking, I will come up with some
> other solution. Thanks for looking.
Sorry if I was a bit harsh; quite a few unrelated things have been
frustrating me, which has made me grumpy.
--
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: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2017-11-23 11:14 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-10 15:20 [Qemu-devel] [PATCH for-2.12 v3 00/11] spapr: introduce an IRQ allocator at the machine level Cédric Le Goater
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 01/11] spapr: add pseries 2.12 machine type Cédric Le Goater
2017-11-11 15:15 ` Greg Kurz
2017-11-13 5:51 ` David Gibson
2017-11-13 9:50 ` Greg Kurz
2017-11-14 9:08 ` David Gibson
2017-11-13 7:14 ` [Qemu-devel] QEMU 3.0 ? (was: [PATCH for-2.12 v3 01/11] spapr: add pseries 2.12 machine type) Thomas Huth
2017-11-13 9:53 ` Peter Maydell
2017-11-13 10:03 ` [Qemu-devel] QEMU 3.0 ? Cédric Le Goater
2017-11-13 10:21 ` Peter Maydell
2017-11-13 10:25 ` Thomas Huth
2017-11-23 10:03 ` [Qemu-devel] QEMU 3.0 ? (was: [PATCH for-2.12 v3 01/11] spapr: add pseries 2.12 machine type) Cornelia Huck
2017-11-23 10:17 ` Peter Maydell
2017-11-23 10:57 ` [Qemu-devel] QEMU 3.0 ? Thomas Huth
2017-11-23 11:11 ` Daniel P. Berrange
2017-11-23 11:24 ` Thomas Huth
2017-11-23 11:33 ` Daniel P. Berrange
2017-11-23 11:40 ` Thomas Huth
2017-11-23 11:17 ` Paolo Bonzini
2017-11-23 11:57 ` Thomas Huth
2017-11-23 12:05 ` Paolo Bonzini
2017-11-23 12:09 ` Cornelia Huck
2017-11-23 12:26 ` Paolo Bonzini
2017-11-23 12:39 ` Cornelia Huck
2017-11-23 12:59 ` Daniel P. Berrange
2017-11-23 13:08 ` Paolo Bonzini
2017-11-23 13:23 ` Daniel P. Berrange
2017-11-23 13:25 ` Paolo Bonzini
2017-11-23 13:02 ` Paolo Bonzini
2017-11-23 13:13 ` Cornelia Huck
2017-11-23 13:27 ` Paolo Bonzini
2017-11-23 13:13 ` Peter Maydell
2017-11-23 13:51 ` Paolo Bonzini
2017-11-23 13:57 ` Peter Maydell
2017-11-23 14:01 ` Thomas Huth
2017-11-23 14:13 ` Paolo Bonzini
2017-11-23 13:57 ` Daniel P. Berrange
2017-11-23 14:57 ` Igor Mammedov
2017-11-23 11:14 ` [Qemu-devel] QEMU 3.0 ? (was: [PATCH for-2.12 v3 01/11] spapr: add pseries 2.12 machine type) Daniel P. Berrange
2017-11-23 11:26 ` [Qemu-devel] QEMU 3.0 ? Thomas Huth
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 02/11] ppc/xics: remove useless if condition Cédric Le Goater
2017-11-11 14:50 ` Greg Kurz
2017-11-13 5:28 ` David Gibson
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 03/11] spapr: introduce new XICSFabric operations for an IRQ allocator Cédric Le Goater
2017-11-14 8:52 ` Greg Kurz
2017-11-17 4:48 ` David Gibson
2017-11-17 7:16 ` Cédric Le Goater
2017-11-23 11:07 ` David Gibson
2017-11-23 13:22 ` Cédric Le Goater
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 04/11] spapr: move current IRQ allocation under the machine Cédric Le Goater
2017-11-14 8:56 ` Greg Kurz
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 05/11] spapr: introduce an IRQ allocator using a bitmap Cédric Le Goater
2017-11-14 9:42 ` Greg Kurz
2017-11-14 11:54 ` Cédric Le Goater
2017-11-14 15:28 ` Greg Kurz
2017-11-15 8:47 ` Cédric Le Goater
2017-11-17 4:50 ` David Gibson
2017-11-17 7:19 ` Cédric Le Goater
2017-11-23 11:08 ` David Gibson
2017-11-20 12:07 ` Greg Kurz
2017-11-23 11:13 ` David Gibson
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 06/11] spapr: store a reference IRQ bitmap Cédric Le Goater
2017-11-14 15:12 ` Greg Kurz
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 07/11] spapr: introduce an 'irq_base' number Cédric Le Goater
2017-11-14 15:45 ` Greg Kurz
2017-11-15 15:24 ` Cédric Le Goater
2017-11-15 16:43 ` Greg Kurz
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 08/11] spapr: introduce a XICSFabric irq_is_lsi() operation Cédric Le Goater
2017-11-14 16:21 ` Greg Kurz
2017-11-17 4:54 ` David Gibson
2017-11-17 7:23 ` Cédric Le Goater
2017-11-23 11:12 ` David Gibson [this message]
2017-11-23 13:26 ` Cédric Le Goater
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 09/11] spapr: split the IRQ number space for LSI interrupts Cédric Le Goater
2017-11-15 15:52 ` Greg Kurz
2017-11-15 16:08 ` Cédric Le Goater
2017-11-15 20:27 ` Greg Kurz
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 10/11] sparp: merge ics_set_irq_type() in irq_alloc_block() operation Cédric Le Goater
2017-11-10 15:20 ` [Qemu-devel] [PATCH for-2.12 v3 11/11] spapr: use sPAPRMachineState in spapr_ics_ prototypes Cédric Le Goater
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=20171123111202.GD22454@umbus.fritz.box \
--to=david@gibson.dropbear.id.au \
--cc=benh@kernel.crashing.org \
--cc=clg@kaod.org \
--cc=groug@kaod.org \
--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 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.