mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Dean Nelson <dcn@sgi.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>,
	Alan Mayer <ajm@sgi.com>,
	jeremy@goop.org, rusty@rustcorp.com.au,
	suresh.b.siddha@intel.com, torvalds@linux-foundation.org,
	linux-kernel@vger.kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Yinghai Lu <Yinghai.lu@amd.com>
Subject: Re: [RFC 2/4] introduce dynamically allocated system vectors
Date: Sun, 14 Sep 2008 17:39:22 +0200	[thread overview]
Message-ID: <20080914153922.GK29290@elte.hu> (raw)
In-Reply-To: <20080911152732.GC13655@sgi.com>


* Dean Nelson <dcn@sgi.com> wrote:

> Introduce the dynamic allocation and deallocation of system vectors which
> are mapped to irq numbers allowing the use of request_irq()/free_irq().
> 
> Signed-off-by: Dean Nelson <dcn@sgi.com>
> 
> ---
> 
>  arch/x86/kernel/apic.c        |    3 
>  arch/x86/kernel/io_apic.c     |  264 +++++++++++++++++++++++++++++++++-----

it's not clean to put it into io_apic.c:

> -static int __assign_irq_vector(int irq, cpumask_t mask)
> +bool __grab_irq_vector(struct irq_desc *desc, unsigned int vector,
> +		       cpumask_t *new_domain_mask)

please put it into arch/x86/kernel/irq.c or so.

this bit:

> Index: linux/include/linux/irq.h
> ===================================================================
> --- linux.orig/include/linux/irq.h	2008-09-10 12:08:46.000000000 -0500
> +++ linux/include/linux/irq.h	2008-09-11 06:53:16.000000000 -0500
> @@ -390,11 +390,22 @@ set_irq_chained_handler(unsigned int irq
>  extern void set_irq_noprobe(unsigned int irq);
>  extern void set_irq_probe(unsigned int irq);
>  
> -/* Handle dynamic irq creation and destruction */
> +/* Handle dynamic irq device vector allocation and deallocation */
>  extern unsigned int create_irq_nr(unsigned int irq_want);
>  extern int create_irq(void);
>  extern void destroy_irq(unsigned int irq);
>  
> +/* Handle dynamic irq system vector allocation and deallocation */
> +extern unsigned int create_irq_system_vector(cpumask_t *mask, int priority,
> +					     char *irq_name,
> +					     int *assigned_vector);
> +#define IRQ_PRIORITY_LOW	1
> +#define IRQ_PRIORITY_HIGH	2
> +
> +extern void destroy_irq_system_vector(unsigned int irq);
> +
> +extern int reserve_system_vectors(int number);

does not belong into the generic kernel code - it's an x86 property.

	Ingo

  reply	other threads:[~2008-09-14 15:39 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-08 15:37 [Fwd: [PATCH] x86_64: (NEW) Dynamically allocate arch specific system vectors] Alan Mayer
2008-08-11 16:59 ` [PATCH] x86_64: (NEW) Dynamically allocate arch specific system vectors Ingo Molnar
2008-08-11 17:14   ` Alan Mayer
2008-08-11 19:39     ` Eric W. Biederman
2008-08-11 19:51       ` Ingo Molnar
2008-08-11 19:55         ` Jeremy Fitzhardinge
2008-08-11 20:10         ` Eric W. Biederman
2008-08-11 20:02       ` Alan Mayer
2008-09-11 15:23       ` [RFC 0/4] dynamically " Dean Nelson
2008-09-11 15:25         ` [RFC 1/4] switch vector_irq[] from irq number to irq_desc pointer Dean Nelson
2008-09-11 15:27         ` [RFC 2/4] introduce dynamically allocated system vectors Dean Nelson
2008-09-14 15:39           ` Ingo Molnar [this message]
2008-09-14 15:46           ` Ingo Molnar
2008-09-11 15:28         ` [RFC 3/4] switch static system vector allocation to use vector_irq[] Dean Nelson
2008-09-11 15:29         ` [RFC 4/4] switch non-standard SYSCALL_VECTOR " Dean Nelson
2008-09-14 15:40           ` Ingo Molnar
2008-09-14 15:42           ` Ingo Molnar
2008-09-11 20:04         ` [RFC 0/4] dynamically allocate arch specific system vectors H. Peter Anvin
2008-09-12 11:46           ` Dean Nelson
2008-09-14 15:35         ` Ingo Molnar
2008-09-14 15:48           ` Ingo Molnar
2008-09-15 21:50           ` Dean Nelson
2008-09-16  8:24             ` Ingo Molnar
2008-09-16 20:46               ` Dean Nelson
2008-09-17 17:30                 ` Dimitri Sivanich
2008-09-17 18:59                   ` Eric W. Biederman
2008-09-18 13:37                     ` Dean Nelson
2008-09-18 19:18                       ` H. Peter Anvin
2008-09-17 19:15                 ` H. Peter Anvin
2008-09-17 20:21                   ` Jack Steiner
2008-09-17 22:15                     ` Eric W. Biederman
2008-09-18  1:09                       ` H. Peter Anvin
2008-09-18 19:10                       ` Jack Steiner
2008-09-19  0:28                         ` Eric W. Biederman
2008-09-19  8:48                           ` Ingo Molnar

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=20080914153922.GK29290@elte.hu \
    --to=mingo@elte.hu \
    --cc=Yinghai.lu@amd.com \
    --cc=ajm@sgi.com \
    --cc=dcn@sgi.com \
    --cc=ebiederm@xmission.com \
    --cc=hpa@zytor.com \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rusty@rustcorp.com.au \
    --cc=suresh.b.siddha@intel.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.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

all inboxes | Powered by JetHome®