From: Qais Yousef <qais.yousef@imgtec.com> To: Thomas Gleixner <tglx@linutronix.de> Cc: <linux-kernel@vger.kernel.org>, <jason@lakedaemon.net>, <marc.zyngier@arm.com>, <jiang.liu@linux.intel.com>, <ralf@linux-mips.org>, <linux-mips@linux-mips.org> Subject: Re: [PATCH 10/14] irqchip/mips-gic: Add a IPI hierarchy domaind Date: Mon, 23 Nov 2015 16:55:27 +0000 [thread overview] Message-ID: <565344FF.1090508@imgtec.com> (raw) In-Reply-To: <alpine.DEB.2.11.1511202113010.3931@nanos> On 11/20/2015 08:39 PM, Thomas Gleixner wrote: >> Same applies when doing the reverse mapping. >> >> In other words, the ipi_mask won't always necessarily be linear to facilitate >> the 1:1 mapping that this approach assumes. >> >> It is a solvable problem, but I think we're losing the elegance that promoted >> going into this direction and I think sticking to using struct ipi_mapping >> (with some enhancements to how it's exposed an integrated by/into generic >> code) is a better approach. > The only reason to use the ipi_mapping thing is if we need non > consecutive masks, i.e. cpu 5 and 9. That's the case I had in mind. > > I really don't want to have it mandatory as it does not make any sense > for systems where the IPI is a single per_cpu interrupt. For the > linear consecutive space it is just adding memory and cache footprint > for no benefit. Think about machines with 4k and more cpus .... OK. Although so far I think the ovehead is higher without the ipi_mapping because of all the extra checkings we have to do when sending an IPI. I'll leave this to code review when I have something ready though. I'm debugging more problems and hopefully I'll send something this week. Thanks, Qais
WARNING: multiple messages have this Message-ID (diff)
From: Qais Yousef <qais.yousef@imgtec.com> To: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org, jason@lakedaemon.net, marc.zyngier@arm.com, jiang.liu@linux.intel.com, ralf@linux-mips.org, linux-mips@linux-mips.org Subject: Re: [PATCH 10/14] irqchip/mips-gic: Add a IPI hierarchy domaind Date: Mon, 23 Nov 2015 16:55:27 +0000 [thread overview] Message-ID: <565344FF.1090508@imgtec.com> (raw) Message-ID: <20151123165527.pWCh3EVKC8cj7Mu0wJUQE21dvDLimeb6uB31cdX-T4M@z> (raw) In-Reply-To: <alpine.DEB.2.11.1511202113010.3931@nanos> On 11/20/2015 08:39 PM, Thomas Gleixner wrote: >> Same applies when doing the reverse mapping. >> >> In other words, the ipi_mask won't always necessarily be linear to facilitate >> the 1:1 mapping that this approach assumes. >> >> It is a solvable problem, but I think we're losing the elegance that promoted >> going into this direction and I think sticking to using struct ipi_mapping >> (with some enhancements to how it's exposed an integrated by/into generic >> code) is a better approach. > The only reason to use the ipi_mapping thing is if we need non > consecutive masks, i.e. cpu 5 and 9. That's the case I had in mind. > > I really don't want to have it mandatory as it does not make any sense > for systems where the IPI is a single per_cpu interrupt. For the > linear consecutive space it is just adding memory and cache footprint > for no benefit. Think about machines with 4k and more cpus .... OK. Although so far I think the ovehead is higher without the ipi_mapping because of all the extra checkings we have to do when sending an IPI. I'll leave this to code review when I have something ready though. I'm debugging more problems and hopefully I'll send something this week. Thanks, Qais
next prev parent reply other threads:[~2015-11-23 16:55 UTC|newest] Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-11-03 11:12 [PATCH 00/14] Implement generic IPI support mechanism Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 01/14] genirq: Add new IRQ_DOMAIN_FLAGS_IPI Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 02/14] genirq: Add DOMAIN_BUS_IPI Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 03/14] genirq: Add GENERIC_IRQ_IPI Kconfig symbol Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 04/14] genirq: Add new struct ipi_mask and helper functions Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-07 12:05 ` Thomas Gleixner 2015-11-03 11:12 ` [PATCH 05/14] genirq: Add struct ipi_mask to irq_data Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 06/14] genirq: Add struct ipi_mapping and its helper functions Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-07 12:09 ` Thomas Gleixner 2015-11-09 10:05 ` Qais Yousef 2015-11-09 10:05 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 07/14] genirq: Add a new generic IPI reservation code to irq core Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 12:06 ` kbuild test robot 2015-11-03 12:06 ` kbuild test robot 2015-11-07 12:11 ` Thomas Gleixner 2015-11-07 13:31 ` Thomas Gleixner 2015-11-09 10:07 ` Qais Yousef 2015-11-09 10:07 ` Qais Yousef 2015-11-16 15:09 ` Thomas Gleixner 2015-11-03 11:12 ` [PATCH 08/14] genirq: Add a new irq_send_ipi() to irq_chip Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 09/14] genirq: Implement irq_send_ipi() to be used by drivers Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 12:09 ` kbuild test robot 2015-11-03 12:09 ` kbuild test robot 2015-11-07 12:14 ` Thomas Gleixner 2015-11-03 11:12 ` [PATCH 10/14] irqchip/mips-gic: Add a IPI hierarchy domain Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-07 14:51 ` Thomas Gleixner 2015-11-09 11:10 ` Qais Yousef 2015-11-09 11:10 ` Qais Yousef 2015-11-16 17:17 ` Thomas Gleixner 2015-11-17 10:08 ` Qais Yousef 2015-11-17 10:08 ` Qais Yousef 2015-11-17 10:11 ` Thomas Gleixner 2015-11-17 10:30 ` Qais Yousef 2015-11-17 10:30 ` Qais Yousef 2015-11-20 10:48 ` Qais Yousef 2015-11-20 10:48 ` Qais Yousef 2015-11-20 20:39 ` [PATCH 10/14] irqchip/mips-gic: Add a IPI hierarchy domaind Thomas Gleixner 2015-11-23 16:55 ` Qais Yousef [this message] 2015-11-23 16:55 ` Qais Yousef 2015-11-12 15:12 ` [PATCH 10/14] irqchip/mips-gic: Add a IPI hierarchy domain Qais Yousef 2015-11-12 15:12 ` Qais Yousef 2015-11-16 17:24 ` Thomas Gleixner 2015-11-17 10:24 ` Qais Yousef 2015-11-17 10:24 ` Qais Yousef 2015-11-17 10:30 ` Thomas Gleixner 2015-11-03 11:12 ` [PATCH 11/14] MIPS: Add generic SMP IPI support Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:12 ` [PATCH 12/14] MIPS: Make smp CMP, CPS and MT use the new generic IPI functions Qais Yousef 2015-11-03 11:12 ` Qais Yousef 2015-11-03 11:13 ` [PATCH 13/14] MIPS: Delete smp-gic.c Qais Yousef 2015-11-03 11:13 ` Qais Yousef 2015-11-03 11:13 ` [PATCH 14/14] Docs: IRQ: Add new IRQ-ipi.txt Qais Yousef 2015-11-03 11:13 ` Qais Yousef
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=565344FF.1090508@imgtec.com \ --to=qais.yousef@imgtec.com \ --cc=jason@lakedaemon.net \ --cc=jiang.liu@linux.intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mips@linux-mips.org \ --cc=marc.zyngier@arm.com \ --cc=ralf@linux-mips.org \ --cc=tglx@linutronix.de \ /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: linkBe 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.