public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Andrey Panin" <pazke@orbita1.ru>
To: davidm@hpl.hp.com
Cc: linux-kernel@vger.kernel.org
Subject: Re: [RFC] irq handling code consolidation (common part)
Date: Sat, 4 Jan 2003 08:03:56 +0300	[thread overview]
Message-ID: <20030104050356.GA10477@pazke> (raw)
In-Reply-To: <15892.34096.565694.402521@napali.hpl.hp.com>

On Thu, Jan 02, 2003 at 10:30:08AM -0800, David Mosberger wrote:
> >>>>> On Tue, 24 Dec 2002 09:03:31 +0300, "Andrey Panin" <pazke@orbita1.ru> said:
> 
>   Andrey> Hi all, this patch moves some common parts of irq handling
>   Andrey> code to one place.  Arch specific patches will follow. Patch
>   Andrey> for i386 is tested and performed well, but other arch
>   Andrey> specific patched are not. Please take a look.
> 
>   Andrey> Please CC me answering this letter, I'm not subscribed to
>   Andrey> lkml currently.
> 
> +/*
> + * Controller mappings for all interrupt sources:
> + */
> +irq_desc_t irq_desc[NR_IRQS] __cacheline_aligned = {
> +	[0 ... NR_IRQS - 1] = {
> +		.handler =	&no_irq_type,
> +		.lock =		SPIN_LOCK_UNLOCKED,
> +	}
> +};
> 
> This isn't good.  For example, NUMA platforms with per-CPU irqs want
> to allocate the irq descriptors in local memory.  On ia64, we
> introduced a minimal irq-descriptor API for this purpose:

I noticed this already, in the new patch which I want to post today
irq_desc declaration is guarded by #ifndef HAVE_ARCH_IRQ_DESC.

> 
> 	/* Return a pointer to the irq descriptor for IRQ.  */
> 	static inline struct irq_desc * irq_desc (int irq);
> 
> 	/* Extract the IA-64 vector that corresponds to IRQ.  */
> 	static inline ia64_vector irq_to_vector (int irq);
> 
> 	/*
> 	 * Convert the local IA-64 vector to the corresponding irq number.
> 	 * This translation is done in the context of the interrupt domain
> 	 * that the currently executing CPU belongs to.
> 	 */
> 	static inline unsigned int local_vector_to_irq (ia64_vector vec);
> 
> I think the platform-independent part of the code really would only
> need the first routine irq_desc().  The other two are ia64-specific.
>
> BTW: if you haven't done so already, I'd suggest to take a look at
> arch/ia64/kernel/irq.c.  I tried to keep this code as close as
> possible to the x86 version.  There shouldn't be anything in there
> that isn't wanted for a good reason.

Already done.

BTW: what is the state of ia64 port in stock 2.5 ? 
It looks horribly borken :(

Best regards.

-- 
Andrey Panin		| Embedded systems software developer
pazke@orbita1.ru	| PGP key: wwwkeys.pgp.net

  reply	other threads:[~2003-01-04  5:00 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-24  6:03 [RFC] irq handling code consolidation (common part) Andrey Panin
2002-12-24  6:21 ` Miles Bader
2002-12-24  6:27 ` Miles Bader
2002-12-24  6:28   ` Andrey Panin
2003-01-02 18:30 ` David Mosberger
2003-01-04  5:03   ` Andrey Panin [this message]
2003-01-04  6:12     ` David Mosberger

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=20030104050356.GA10477@pazke \
    --to=pazke@orbita1.ru \
    --cc=davidm@hpl.hp.com \
    --cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox