Subject: Re: linux-next: Tree for December 19 (new CONFIG_NUMA_MIGRATE_IRQ_DESC option)

From: Bartlomiej Zolnierkiewicz <[email-masked]>
Date: Fri, 19 Dec 2008 22:01:28 +0100

On Friday 19 December 2008, Stephen Rothwell wrote:
> Hi all,
> Changes since 20081218:
 
Just few very minor issues w.r.t. "x86, sparseirq: move irq_desc according
to smp_affinity, v7" (commit 48a1b10aff588833b73994704c47bbd0deb73e9c):

+config NUMA_MIGRATE_IRQ_DESC
+	bool "Move irq desc when changing irq smp_affinity"
+	depends on SPARSE_IRQ && SMP
+	default n
+	help
+	  This enables moving irq_desc to cpu/node that irq will use handled.
+
+	  If you don't know what to do here, say N.

This is a bit confusing (at least I was confused since I don't have NUMA
set in my config) -- either it should depend on NUMA or the config option
name should be changed.

@@ -2346,14 +2466,34 @@ static void irq_complete_move(struct irq_desc **descp)
 	struct irq_cfg *cfg = desc->chip_data;
 	unsigned vector, me;
 
-	if (likely(!cfg->move_in_progress))
+	if (likely(!cfg->move_in_progress)) {
+#ifdef CONFIG_NUMA_MIGRATE_IRQ_DESC
+		if (likely(!cfg->move_desc_pending))
+			return;
+
+		/* domain is not change, but affinity is changed */

this comment sounds weird

perhaps: /* only affinity is changed */ would be better?

+++ b/kernel/irq/numa_migrate.c
@@ -0,0 +1,127 @@
+/*
+ * linux/kernel/irq/handle.c
+ *
+ * Copyright (C) 1992, 1998-2006 Linus Torvalds, Ingo Molnar
+ * Copyright (C) 2005-2006, Thomas Gleixner, Russell King
+ *
+ * This file contains the core interrupt handling code.
+ *
+ * Detailed information is available in Documentation/DocBook/genericirq
+ *
+ */

hmmm? ;-)