* [patch 0/2] ia64: Interrupt cleanups and API change preparation
@ 2015-07-13 20:42 Thomas Gleixner
2015-07-13 20:42 ` [patch 1/2] ia64/irq: Use access helper irq_data_get_affinity_mask() Thomas Gleixner
2015-07-13 20:42 ` [patch 2/2] ia64/iosapic: Use irq_set_chip_handler_name_locked() Thomas Gleixner
0 siblings, 2 replies; 5+ messages in thread
From: Thomas Gleixner @ 2015-07-13 20:42 UTC (permalink / raw)
To: LKML; +Cc: Jiang Liu, Cc: Tony Luck, Fenghua Yu
The following patch series contains the following changes:
- Consolidation of chained interrupt handler setup/removal
- Switch to functions which avoid a redundant interrupt
descriptor lookup
- Preparation of interrupt flow handlers for the 'irq' argument
removal
The series has no dependencies and is also available as a git branch
for your convenience:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/ia64
If you want me to carry the patches in the irq/core branch of tip,
please let me know.
Thanks,
tglx
^ permalink raw reply [flat|nested] 5+ messages in thread
* [patch 1/2] ia64/irq: Use access helper irq_data_get_affinity_mask()
2015-07-13 20:42 [patch 0/2] ia64: Interrupt cleanups and API change preparation Thomas Gleixner
@ 2015-07-13 20:42 ` Thomas Gleixner
2015-07-27 15:55 ` [tip:irq/core] " tip-bot for Jiang Liu
2015-07-13 20:42 ` [patch 2/2] ia64/iosapic: Use irq_set_chip_handler_name_locked() Thomas Gleixner
1 sibling, 1 reply; 5+ messages in thread
From: Thomas Gleixner @ 2015-07-13 20:42 UTC (permalink / raw)
To: LKML; +Cc: Jiang Liu, Cc: Tony Luck, Fenghua Yu
[-- Attachment #1: IA64-irq-Use-access-helper-irq_data_get_affinity_mas.patch --]
[-- Type: text/plain, Size: 3014 bytes --]
From: Jiang Liu <jiang.liu@linux.intel.com>
This is a preparatory patch for moving irq_data struct members.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
arch/ia64/kernel/iosapic.c | 2 +-
arch/ia64/kernel/irq.c | 6 +++---
arch/ia64/kernel/msi_ia64.c | 4 ++--
arch/ia64/sn/kernel/msi_sn.c | 2 +-
4 files changed, 7 insertions(+), 7 deletions(-)
Index: tip/arch/ia64/kernel/iosapic.c
===================================================================
--- tip.orig/arch/ia64/kernel/iosapic.c
+++ tip/arch/ia64/kernel/iosapic.c
@@ -838,7 +838,7 @@ iosapic_unregister_intr (unsigned int gs
if (iosapic_intr_info[irq].count == 0) {
#ifdef CONFIG_SMP
/* Clear affinity */
- cpumask_setall(irq_get_irq_data(irq)->affinity);
+ cpumask_setall(irq_get_affinity_mask(irq));
#endif
/* Clear the interrupt information */
iosapic_intr_info[irq].dest = 0;
Index: tip/arch/ia64/kernel/irq.c
===================================================================
--- tip.orig/arch/ia64/kernel/irq.c
+++ tip/arch/ia64/kernel/irq.c
@@ -67,7 +67,7 @@ static char irq_redir [NR_IRQS]; // = {
void set_irq_affinity_info (unsigned int irq, int hwid, int redir)
{
if (irq < NR_IRQS) {
- cpumask_copy(irq_get_irq_data(irq)->affinity,
+ cpumask_copy(irq_get_affinity_mask(irq),
cpumask_of(cpu_logical_id(hwid)));
irq_redir[irq] = (char) (redir & 0xff);
}
@@ -119,8 +119,8 @@ static void migrate_irqs(void)
if (irqd_is_per_cpu(data))
continue;
- if (cpumask_any_and(data->affinity, cpu_online_mask)
- >= nr_cpu_ids) {
+ if (cpumask_any_and(irq_data_get_affinity_mask(data),
+ cpu_online_mask) >= nr_cpu_ids) {
/*
* Save it for phase 2 processing
*/
Index: tip/arch/ia64/kernel/msi_ia64.c
===================================================================
--- tip.orig/arch/ia64/kernel/msi_ia64.c
+++ tip/arch/ia64/kernel/msi_ia64.c
@@ -36,7 +36,7 @@ static int ia64_set_msi_irq_affinity(str
msg.data = data;
pci_write_msi_msg(irq, &msg);
- cpumask_copy(idata->affinity, cpumask_of(cpu));
+ cpumask_copy(irq_data_get_affinity_mask(idata), cpumask_of(cpu));
return 0;
}
@@ -148,7 +148,7 @@ static int dmar_msi_set_affinity(struct
msg.address_lo |= MSI_ADDR_DEST_ID_CPU(cpu_physical_id(cpu));
dmar_msi_write(irq, &msg);
- cpumask_copy(data->affinity, mask);
+ cpumask_copy(irq_data_get_affinity_mask(data), mask);
return 0;
}
Index: tip/arch/ia64/sn/kernel/msi_sn.c
===================================================================
--- tip.orig/arch/ia64/sn/kernel/msi_sn.c
+++ tip/arch/ia64/sn/kernel/msi_sn.c
@@ -206,7 +206,7 @@ static int sn_set_msi_irq_affinity(struc
msg.address_lo = (u32)(bus_addr & 0x00000000ffffffff);
pci_write_msi_msg(irq, &msg);
- cpumask_copy(data->affinity, cpu_mask);
+ cpumask_copy(irq_data_get_affinity_mask(data), cpu_mask);
return 0;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* [patch 2/2] ia64/iosapic: Use irq_set_chip_handler_name_locked()
2015-07-13 20:42 [patch 0/2] ia64: Interrupt cleanups and API change preparation Thomas Gleixner
2015-07-13 20:42 ` [patch 1/2] ia64/irq: Use access helper irq_data_get_affinity_mask() Thomas Gleixner
@ 2015-07-13 20:42 ` Thomas Gleixner
2015-07-27 15:56 ` [tip:irq/core] ia64/iosapic: Use irq_set_chip_handler_name_locked () tip-bot for Thomas Gleixner
1 sibling, 1 reply; 5+ messages in thread
From: Thomas Gleixner @ 2015-07-13 20:42 UTC (permalink / raw)
To: LKML; +Cc: Jiang Liu, Cc: Tony Luck, Fenghua Yu
[-- Attachment #1: ia64-iosapic-Use-irq_set_chip_handler_name_locked.patch --]
[-- Type: text/plain, Size: 858 bytes --]
__irq_set_chip_handler_name_locked() is about to be replaced. Use
irq_set_chip_handler_name_locked() instead.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
arch/ia64/kernel/iosapic.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
Index: tip/arch/ia64/kernel/iosapic.c
===================================================================
--- tip.orig/arch/ia64/kernel/iosapic.c
+++ tip/arch/ia64/kernel/iosapic.c
@@ -610,9 +610,9 @@ register_intr (unsigned int gsi, int irq
chip->name, irq_type->name);
chip = irq_type;
}
- __irq_set_chip_handler_name_locked(irq, chip, trigger == IOSAPIC_EDGE ?
- handle_edge_irq : handle_level_irq,
- NULL);
+ irq_set_chip_handler_name_locked(irq_get_irq_data(irq), chip,
+ trigger == IOSAPIC_EDGE ? handle_edge_irq : handle_level_irq,
+ NULL);
return 0;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* [tip:irq/core] ia64/irq: Use access helper irq_data_get_affinity_mask()
2015-07-13 20:42 ` [patch 1/2] ia64/irq: Use access helper irq_data_get_affinity_mask() Thomas Gleixner
@ 2015-07-27 15:55 ` tip-bot for Jiang Liu
0 siblings, 0 replies; 5+ messages in thread
From: tip-bot for Jiang Liu @ 2015-07-27 15:55 UTC (permalink / raw)
To: linux-tip-commits
Cc: mingo, linux-kernel, tglx, jiang.liu, fenghua.yu, tony.luck, hpa
Commit-ID: c42574edc0e33227d4ce41ecc0a81a72f37e7ef4
Gitweb: http://git.kernel.org/tip/c42574edc0e33227d4ce41ecc0a81a72f37e7ef4
Author: Jiang Liu <jiang.liu@linux.intel.com>
AuthorDate: Mon, 13 Jul 2015 20:42:46 +0000
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Mon, 27 Jul 2015 13:36:37 +0200
ia64/irq: Use access helper irq_data_get_affinity_mask()
This is a preparatory patch for moving irq_data struct members.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Cc: Tony Luck <tony.luck@intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Link: http://lkml.kernel.org/r/20150713131034.630273860@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
arch/ia64/kernel/iosapic.c | 2 +-
arch/ia64/kernel/irq.c | 6 +++---
arch/ia64/kernel/msi_ia64.c | 4 ++--
arch/ia64/sn/kernel/msi_sn.c | 2 +-
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/arch/ia64/kernel/iosapic.c b/arch/ia64/kernel/iosapic.c
index bc9501e..4d2698d 100644
--- a/arch/ia64/kernel/iosapic.c
+++ b/arch/ia64/kernel/iosapic.c
@@ -838,7 +838,7 @@ iosapic_unregister_intr (unsigned int gsi)
if (iosapic_intr_info[irq].count == 0) {
#ifdef CONFIG_SMP
/* Clear affinity */
- cpumask_setall(irq_get_irq_data(irq)->affinity);
+ cpumask_setall(irq_get_affinity_mask(irq));
#endif
/* Clear the interrupt information */
iosapic_intr_info[irq].dest = 0;
diff --git a/arch/ia64/kernel/irq.c b/arch/ia64/kernel/irq.c
index 812a1e6..de4fc00 100644
--- a/arch/ia64/kernel/irq.c
+++ b/arch/ia64/kernel/irq.c
@@ -67,7 +67,7 @@ static char irq_redir [NR_IRQS]; // = { [0 ... NR_IRQS-1] = 1 };
void set_irq_affinity_info (unsigned int irq, int hwid, int redir)
{
if (irq < NR_IRQS) {
- cpumask_copy(irq_get_irq_data(irq)->affinity,
+ cpumask_copy(irq_get_affinity_mask(irq),
cpumask_of(cpu_logical_id(hwid)));
irq_redir[irq] = (char) (redir & 0xff);
}
@@ -119,8 +119,8 @@ static void migrate_irqs(void)
if (irqd_is_per_cpu(data))
continue;
- if (cpumask_any_and(data->affinity, cpu_online_mask)
- >= nr_cpu_ids) {
+ if (cpumask_any_and(irq_data_get_affinity_mask(data),
+ cpu_online_mask) >= nr_cpu_ids) {
/*
* Save it for phase 2 processing
*/
diff --git a/arch/ia64/kernel/msi_ia64.c b/arch/ia64/kernel/msi_ia64.c
index 4d3053e..af4eaec 100644
--- a/arch/ia64/kernel/msi_ia64.c
+++ b/arch/ia64/kernel/msi_ia64.c
@@ -36,7 +36,7 @@ static int ia64_set_msi_irq_affinity(struct irq_data *idata,
msg.data = data;
pci_write_msi_msg(irq, &msg);
- cpumask_copy(idata->affinity, cpumask_of(cpu));
+ cpumask_copy(irq_data_get_affinity_mask(idata), cpumask_of(cpu));
return 0;
}
@@ -148,7 +148,7 @@ static int dmar_msi_set_affinity(struct irq_data *data,
msg.address_lo |= MSI_ADDR_DEST_ID_CPU(cpu_physical_id(cpu));
dmar_msi_write(irq, &msg);
- cpumask_copy(data->affinity, mask);
+ cpumask_copy(irq_data_get_affinity_mask(data), mask);
return 0;
}
diff --git a/arch/ia64/sn/kernel/msi_sn.c b/arch/ia64/sn/kernel/msi_sn.c
index 59ba632..fb25065 100644
--- a/arch/ia64/sn/kernel/msi_sn.c
+++ b/arch/ia64/sn/kernel/msi_sn.c
@@ -206,7 +206,7 @@ static int sn_set_msi_irq_affinity(struct irq_data *data,
msg.address_lo = (u32)(bus_addr & 0x00000000ffffffff);
pci_write_msi_msg(irq, &msg);
- cpumask_copy(data->affinity, cpu_mask);
+ cpumask_copy(irq_data_get_affinity_mask(data), cpu_mask);
return 0;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* [tip:irq/core] ia64/iosapic: Use irq_set_chip_handler_name_locked ()
2015-07-13 20:42 ` [patch 2/2] ia64/iosapic: Use irq_set_chip_handler_name_locked() Thomas Gleixner
@ 2015-07-27 15:56 ` tip-bot for Thomas Gleixner
0 siblings, 0 replies; 5+ messages in thread
From: tip-bot for Thomas Gleixner @ 2015-07-27 15:56 UTC (permalink / raw)
To: linux-tip-commits
Cc: fenghua.yu, hpa, linux-kernel, jiang.liu, tony.luck, tglx, mingo
Commit-ID: 59fb3d58c5284b42d93262a4690291e9c0e78fe6
Gitweb: http://git.kernel.org/tip/59fb3d58c5284b42d93262a4690291e9c0e78fe6
Author: Thomas Gleixner <tglx@linutronix.de>
AuthorDate: Mon, 13 Jul 2015 20:42:48 +0000
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Mon, 27 Jul 2015 13:36:37 +0200
ia64/iosapic: Use irq_set_chip_handler_name_locked()
__irq_set_chip_handler_name_locked() is about to be replaced. Use
irq_set_chip_handler_name_locked() instead.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Link: http://lkml.kernel.org/r/20150713131034.723024979@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
arch/ia64/kernel/iosapic.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/ia64/kernel/iosapic.c b/arch/ia64/kernel/iosapic.c
index 4d2698d..d2fae05 100644
--- a/arch/ia64/kernel/iosapic.c
+++ b/arch/ia64/kernel/iosapic.c
@@ -610,9 +610,9 @@ register_intr (unsigned int gsi, int irq, unsigned char delivery,
chip->name, irq_type->name);
chip = irq_type;
}
- __irq_set_chip_handler_name_locked(irq, chip, trigger == IOSAPIC_EDGE ?
- handle_edge_irq : handle_level_irq,
- NULL);
+ irq_set_chip_handler_name_locked(irq_get_irq_data(irq), chip,
+ trigger == IOSAPIC_EDGE ? handle_edge_irq : handle_level_irq,
+ NULL);
return 0;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-07-27 15:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-13 20:42 [patch 0/2] ia64: Interrupt cleanups and API change preparation Thomas Gleixner
2015-07-13 20:42 ` [patch 1/2] ia64/irq: Use access helper irq_data_get_affinity_mask() Thomas Gleixner
2015-07-27 15:55 ` [tip:irq/core] " tip-bot for Jiang Liu
2015-07-13 20:42 ` [patch 2/2] ia64/iosapic: Use irq_set_chip_handler_name_locked() Thomas Gleixner
2015-07-27 15:56 ` [tip:irq/core] ia64/iosapic: Use irq_set_chip_handler_name_locked () tip-bot for Thomas Gleixner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome