From: Jiang Liu <liuj97@gmail.com> To: Andrew Morton <akpm@linux-foundation.org>, Thomas Gleixner <tglx@linutronix.de>, "H. Peter Anvin" <hpa@zytor.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Jeremy Fitzhardinge <jeremy@goop.org>, Shaohua Li <shli@kernel.org> Cc: linux-arch@vger.kernel.org, xen-devel@lists.xensource.com, Jiri Kosina <trivial@kernel.org>, Peter Zijlstra <a.p.zijlstra@chello.nl>, linux-kernel@vger.kernel.org, x86@kernel.org, Wang YanQing <udknight@gmail.com>, Steven Rostedt <rostedt@goodmis.org>, virtualization@lists.linux-foundation.org, Ingo Molnar <mingo@elte.hu>, liuj97@gmail.com, Jiang Liu <jiang.liu@huawei.com> Subject: [RFC PATCH v2 22/25] smp, x86: kill SMP single function call interrupt Date: Thu, 12 Sep 2013 00:07:26 +0800 [thread overview] Message-ID: <1378915649-16395-23-git-send-email-liuj97@gmail.com> (raw) In-Reply-To: <1378915649-16395-1-git-send-email-liuj97@gmail.com> From: Jiang Liu <jiang.liu@huawei.com> Commit 9a46ad6d6df3b54 "smp: make smp_call_function_many() use logic similar to smp_call_function_single()" has unified the way to handle single and multiple cross-CPU function calls. Now only one interrupt is needed for architecture specific code to support generic SMP function call interfaces, so kill the redundant single function call interrupt. Signed-off-by: Jiang Liu <jiang.liu@huawei.com> Cc: Jiang Liu <liuj97@gmail.com> --- arch/x86/include/asm/entry_arch.h | 1 - arch/x86/include/asm/hw_irq.h | 3 --- arch/x86/include/asm/irq_vectors.h | 7 +++---- arch/x86/include/asm/trace/irq_vectors.h | 6 ------ arch/x86/kernel/entry_64.S | 2 -- arch/x86/kernel/irqinit.c | 4 ---- arch/x86/kernel/smp.c | 24 +----------------------- arch/x86/xen/smp.c | 1 - 8 files changed, 4 insertions(+), 44 deletions(-) diff --git a/arch/x86/include/asm/entry_arch.h b/arch/x86/include/asm/entry_arch.h index dc5fa66..9670cff 100644 --- a/arch/x86/include/asm/entry_arch.h +++ b/arch/x86/include/asm/entry_arch.h @@ -12,7 +12,6 @@ #ifdef CONFIG_SMP BUILD_INTERRUPT(reschedule_interrupt,RESCHEDULE_VECTOR) BUILD_INTERRUPT(call_function_interrupt,CALL_FUNCTION_VECTOR) -BUILD_INTERRUPT(call_function_single_interrupt,CALL_FUNCTION_SINGLE_VECTOR) BUILD_INTERRUPT3(irq_move_cleanup_interrupt, IRQ_MOVE_CLEANUP_VECTOR, smp_irq_move_cleanup_interrupt) BUILD_INTERRUPT3(reboot_interrupt, REBOOT_VECTOR, smp_reboot_interrupt) diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h index e4ac559..907cffe 100644 --- a/arch/x86/include/asm/hw_irq.h +++ b/arch/x86/include/asm/hw_irq.h @@ -75,7 +75,6 @@ extern void reboot_interrupt(void); extern void threshold_interrupt(void); extern void call_function_interrupt(void); -extern void call_function_single_interrupt(void); #ifdef CONFIG_TRACING /* Interrupt handlers registered during init_IRQ */ @@ -88,7 +87,6 @@ extern void trace_thermal_interrupt(void); extern void trace_reschedule_interrupt(void); extern void trace_threshold_interrupt(void); extern void trace_call_function_interrupt(void); -extern void trace_call_function_single_interrupt(void); #define trace_irq_move_cleanup_interrupt irq_move_cleanup_interrupt #define trace_reboot_interrupt reboot_interrupt #define trace_kvm_posted_intr_ipi kvm_posted_intr_ipi @@ -182,7 +180,6 @@ extern asmlinkage void smp_irq_move_cleanup_interrupt(void); #ifdef CONFIG_SMP extern void smp_reschedule_interrupt(struct pt_regs *); extern void smp_call_function_interrupt(struct pt_regs *); -extern void smp_call_function_single_interrupt(struct pt_regs *); #ifdef CONFIG_X86_32 extern void smp_invalidate_interrupt(struct pt_regs *); #else diff --git a/arch/x86/include/asm/irq_vectors.h b/arch/x86/include/asm/irq_vectors.h index 5702d7e..98a302d 100644 --- a/arch/x86/include/asm/irq_vectors.h +++ b/arch/x86/include/asm/irq_vectors.h @@ -92,10 +92,9 @@ #define ERROR_APIC_VECTOR 0xfe #define RESCHEDULE_VECTOR 0xfd #define CALL_FUNCTION_VECTOR 0xfc -#define CALL_FUNCTION_SINGLE_VECTOR 0xfb -#define THERMAL_APIC_VECTOR 0xfa -#define THRESHOLD_APIC_VECTOR 0xf9 -#define REBOOT_VECTOR 0xf8 +#define THERMAL_APIC_VECTOR 0xfb +#define THRESHOLD_APIC_VECTOR 0xfa +#define REBOOT_VECTOR 0xf9 /* * Generic system vector for platform specific use diff --git a/arch/x86/include/asm/trace/irq_vectors.h b/arch/x86/include/asm/trace/irq_vectors.h index 2874df2..f96dc1b 100644 --- a/arch/x86/include/asm/trace/irq_vectors.h +++ b/arch/x86/include/asm/trace/irq_vectors.h @@ -78,12 +78,6 @@ DEFINE_IRQ_VECTOR_EVENT(irq_work); DEFINE_IRQ_VECTOR_EVENT(call_function); /* - * call_function_single - called when entering/exiting a call function - * single interrupt vector handler - */ -DEFINE_IRQ_VECTOR_EVENT(call_function_single); - -/* * threshold_apic - called when entering/exiting a threshold apic interrupt * vector handler */ diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S index 1b69951..6d296f1 100644 --- a/arch/x86/kernel/entry_64.S +++ b/arch/x86/kernel/entry_64.S @@ -1199,8 +1199,6 @@ apicinterrupt THERMAL_APIC_VECTOR \ #endif #ifdef CONFIG_SMP -apicinterrupt CALL_FUNCTION_SINGLE_VECTOR \ - call_function_single_interrupt smp_call_function_single_interrupt apicinterrupt CALL_FUNCTION_VECTOR \ call_function_interrupt smp_call_function_interrupt apicinterrupt RESCHEDULE_VECTOR \ diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c index a2a1fbc..4aa1b8c 100644 --- a/arch/x86/kernel/irqinit.c +++ b/arch/x86/kernel/irqinit.c @@ -141,10 +141,6 @@ static void __init smp_intr_init(void) /* IPI for generic function call */ alloc_intr_gate(CALL_FUNCTION_VECTOR, call_function_interrupt); - /* IPI for generic single function call */ - alloc_intr_gate(CALL_FUNCTION_SINGLE_VECTOR, - call_function_single_interrupt); - /* Low priority IPI to cleanup after moving an irq */ set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt); set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors); diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c index cdaa347..b631e72 100644 --- a/arch/x86/kernel/smp.c +++ b/arch/x86/kernel/smp.c @@ -129,7 +129,7 @@ static void native_smp_send_reschedule(int cpu) void native_send_call_func_single_ipi(int cpu) { - apic->send_IPI_mask(cpumask_of(cpu), CALL_FUNCTION_SINGLE_VECTOR); + apic->send_IPI_mask(cpumask_of(cpu), CALL_FUNCTION_VECTOR); } void native_send_call_func_ipi(const struct cpumask *mask) @@ -311,28 +311,6 @@ void smp_trace_call_function_interrupt(struct pt_regs *regs) exiting_irq(); } -static inline void __smp_call_function_single_interrupt(void) -{ - generic_smp_call_function_single_interrupt(); - inc_irq_stat(irq_call_count); -} - -void smp_call_function_single_interrupt(struct pt_regs *regs) -{ - smp_entering_irq(); - __smp_call_function_single_interrupt(); - exiting_irq(); -} - -void smp_trace_call_function_single_interrupt(struct pt_regs *regs) -{ - smp_entering_irq(); - trace_call_function_single_entry(CALL_FUNCTION_SINGLE_VECTOR); - __smp_call_function_single_interrupt(); - trace_call_function_single_exit(CALL_FUNCTION_SINGLE_VECTOR); - exiting_irq(); -} - static int __init nonmi_ipi_setup(char *str) { smp_no_nmi_ipi = true; diff --git a/arch/x86/xen/smp.c b/arch/x86/xen/smp.c index 6a75302..a67b835 100644 --- a/arch/x86/xen/smp.c +++ b/arch/x86/xen/smp.c @@ -542,7 +542,6 @@ static inline int xen_map_vector(int vector) xen_vector = XEN_RESCHEDULE_VECTOR; break; case CALL_FUNCTION_VECTOR: - case CALL_FUNCTION_SINGLE_VECTOR: xen_vector = XEN_CALL_FUNCTION_VECTOR; break; case IRQ_WORK_VECTOR: -- 1.8.1.2
WARNING: multiple messages have this Message-ID (diff)
From: Jiang Liu <liuj97@gmail.com> To: Andrew Morton <akpm@linux-foundation.org>, Thomas Gleixner <tglx@linutronix.de>, "H. Peter Anvin" <hpa@zytor.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Jeremy Fitzhardinge <jeremy@goop.org>, Shaohua Li <shli@kernel.org> Cc: liuj97@gmail.com, Jiang Liu <jiang.liu@huawei.com>, Ingo Molnar <mingo@elte.hu>, Peter Zijlstra <a.p.zijlstra@chello.nl>, Steven Rostedt <rostedt@goodmis.org>, Jiri Kosina <trivial@kernel.org>, Wang YanQing <udknight@gmail.com>, x86@kernel.org, xen-devel@lists.xensource.com, virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org Subject: [RFC PATCH v2 22/25] smp, x86: kill SMP single function call interrupt Date: Thu, 12 Sep 2013 00:07:26 +0800 [thread overview] Message-ID: <1378915649-16395-23-git-send-email-liuj97@gmail.com> (raw) Message-ID: <20130911160726.75iFzHPTL7-I1lwRggX89szb-uiWW2xDrHkWxdRa-b0@z> (raw) In-Reply-To: <1378915649-16395-1-git-send-email-liuj97@gmail.com> From: Jiang Liu <jiang.liu@huawei.com> Commit 9a46ad6d6df3b54 "smp: make smp_call_function_many() use logic similar to smp_call_function_single()" has unified the way to handle single and multiple cross-CPU function calls. Now only one interrupt is needed for architecture specific code to support generic SMP function call interfaces, so kill the redundant single function call interrupt. Signed-off-by: Jiang Liu <jiang.liu@huawei.com> Cc: Jiang Liu <liuj97@gmail.com> --- arch/x86/include/asm/entry_arch.h | 1 - arch/x86/include/asm/hw_irq.h | 3 --- arch/x86/include/asm/irq_vectors.h | 7 +++---- arch/x86/include/asm/trace/irq_vectors.h | 6 ------ arch/x86/kernel/entry_64.S | 2 -- arch/x86/kernel/irqinit.c | 4 ---- arch/x86/kernel/smp.c | 24 +----------------------- arch/x86/xen/smp.c | 1 - 8 files changed, 4 insertions(+), 44 deletions(-) diff --git a/arch/x86/include/asm/entry_arch.h b/arch/x86/include/asm/entry_arch.h index dc5fa66..9670cff 100644 --- a/arch/x86/include/asm/entry_arch.h +++ b/arch/x86/include/asm/entry_arch.h @@ -12,7 +12,6 @@ #ifdef CONFIG_SMP BUILD_INTERRUPT(reschedule_interrupt,RESCHEDULE_VECTOR) BUILD_INTERRUPT(call_function_interrupt,CALL_FUNCTION_VECTOR) -BUILD_INTERRUPT(call_function_single_interrupt,CALL_FUNCTION_SINGLE_VECTOR) BUILD_INTERRUPT3(irq_move_cleanup_interrupt, IRQ_MOVE_CLEANUP_VECTOR, smp_irq_move_cleanup_interrupt) BUILD_INTERRUPT3(reboot_interrupt, REBOOT_VECTOR, smp_reboot_interrupt) diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h index e4ac559..907cffe 100644 --- a/arch/x86/include/asm/hw_irq.h +++ b/arch/x86/include/asm/hw_irq.h @@ -75,7 +75,6 @@ extern void reboot_interrupt(void); extern void threshold_interrupt(void); extern void call_function_interrupt(void); -extern void call_function_single_interrupt(void); #ifdef CONFIG_TRACING /* Interrupt handlers registered during init_IRQ */ @@ -88,7 +87,6 @@ extern void trace_thermal_interrupt(void); extern void trace_reschedule_interrupt(void); extern void trace_threshold_interrupt(void); extern void trace_call_function_interrupt(void); -extern void trace_call_function_single_interrupt(void); #define trace_irq_move_cleanup_interrupt irq_move_cleanup_interrupt #define trace_reboot_interrupt reboot_interrupt #define trace_kvm_posted_intr_ipi kvm_posted_intr_ipi @@ -182,7 +180,6 @@ extern asmlinkage void smp_irq_move_cleanup_interrupt(void); #ifdef CONFIG_SMP extern void smp_reschedule_interrupt(struct pt_regs *); extern void smp_call_function_interrupt(struct pt_regs *); -extern void smp_call_function_single_interrupt(struct pt_regs *); #ifdef CONFIG_X86_32 extern void smp_invalidate_interrupt(struct pt_regs *); #else diff --git a/arch/x86/include/asm/irq_vectors.h b/arch/x86/include/asm/irq_vectors.h index 5702d7e..98a302d 100644 --- a/arch/x86/include/asm/irq_vectors.h +++ b/arch/x86/include/asm/irq_vectors.h @@ -92,10 +92,9 @@ #define ERROR_APIC_VECTOR 0xfe #define RESCHEDULE_VECTOR 0xfd #define CALL_FUNCTION_VECTOR 0xfc -#define CALL_FUNCTION_SINGLE_VECTOR 0xfb -#define THERMAL_APIC_VECTOR 0xfa -#define THRESHOLD_APIC_VECTOR 0xf9 -#define REBOOT_VECTOR 0xf8 +#define THERMAL_APIC_VECTOR 0xfb +#define THRESHOLD_APIC_VECTOR 0xfa +#define REBOOT_VECTOR 0xf9 /* * Generic system vector for platform specific use diff --git a/arch/x86/include/asm/trace/irq_vectors.h b/arch/x86/include/asm/trace/irq_vectors.h index 2874df2..f96dc1b 100644 --- a/arch/x86/include/asm/trace/irq_vectors.h +++ b/arch/x86/include/asm/trace/irq_vectors.h @@ -78,12 +78,6 @@ DEFINE_IRQ_VECTOR_EVENT(irq_work); DEFINE_IRQ_VECTOR_EVENT(call_function); /* - * call_function_single - called when entering/exiting a call function - * single interrupt vector handler - */ -DEFINE_IRQ_VECTOR_EVENT(call_function_single); - -/* * threshold_apic - called when entering/exiting a threshold apic interrupt * vector handler */ diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S index 1b69951..6d296f1 100644 --- a/arch/x86/kernel/entry_64.S +++ b/arch/x86/kernel/entry_64.S @@ -1199,8 +1199,6 @@ apicinterrupt THERMAL_APIC_VECTOR \ #endif #ifdef CONFIG_SMP -apicinterrupt CALL_FUNCTION_SINGLE_VECTOR \ - call_function_single_interrupt smp_call_function_single_interrupt apicinterrupt CALL_FUNCTION_VECTOR \ call_function_interrupt smp_call_function_interrupt apicinterrupt RESCHEDULE_VECTOR \ diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c index a2a1fbc..4aa1b8c 100644 --- a/arch/x86/kernel/irqinit.c +++ b/arch/x86/kernel/irqinit.c @@ -141,10 +141,6 @@ static void __init smp_intr_init(void) /* IPI for generic function call */ alloc_intr_gate(CALL_FUNCTION_VECTOR, call_function_interrupt); - /* IPI for generic single function call */ - alloc_intr_gate(CALL_FUNCTION_SINGLE_VECTOR, - call_function_single_interrupt); - /* Low priority IPI to cleanup after moving an irq */ set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt); set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors); diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c index cdaa347..b631e72 100644 --- a/arch/x86/kernel/smp.c +++ b/arch/x86/kernel/smp.c @@ -129,7 +129,7 @@ static void native_smp_send_reschedule(int cpu) void native_send_call_func_single_ipi(int cpu) { - apic->send_IPI_mask(cpumask_of(cpu), CALL_FUNCTION_SINGLE_VECTOR); + apic->send_IPI_mask(cpumask_of(cpu), CALL_FUNCTION_VECTOR); } void native_send_call_func_ipi(const struct cpumask *mask) @@ -311,28 +311,6 @@ void smp_trace_call_function_interrupt(struct pt_regs *regs) exiting_irq(); } -static inline void __smp_call_function_single_interrupt(void) -{ - generic_smp_call_function_single_interrupt(); - inc_irq_stat(irq_call_count); -} - -void smp_call_function_single_interrupt(struct pt_regs *regs) -{ - smp_entering_irq(); - __smp_call_function_single_interrupt(); - exiting_irq(); -} - -void smp_trace_call_function_single_interrupt(struct pt_regs *regs) -{ - smp_entering_irq(); - trace_call_function_single_entry(CALL_FUNCTION_SINGLE_VECTOR); - __smp_call_function_single_interrupt(); - trace_call_function_single_exit(CALL_FUNCTION_SINGLE_VECTOR); - exiting_irq(); -} - static int __init nonmi_ipi_setup(char *str) { smp_no_nmi_ipi = true; diff --git a/arch/x86/xen/smp.c b/arch/x86/xen/smp.c index 6a75302..a67b835 100644 --- a/arch/x86/xen/smp.c +++ b/arch/x86/xen/smp.c @@ -542,7 +542,6 @@ static inline int xen_map_vector(int vector) xen_vector = XEN_RESCHEDULE_VECTOR; break; case CALL_FUNCTION_VECTOR: - case CALL_FUNCTION_SINGLE_VECTOR: xen_vector = XEN_CALL_FUNCTION_VECTOR; break; case IRQ_WORK_VECTOR: -- 1.8.1.2
next prev parent reply other threads:[~2013-09-11 16:07 UTC|newest] Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-09-11 16:07 [RFC PATCH v2 00/25] simplify generic cross CPU function call implementation Jiang Liu 2013-09-11 16:07 ` [PATCH v2 01/25] Revert smp: Fix SMP function call empty cpu mask race Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-14 4:41 ` Wang YanQing 2013-09-14 4:41 ` Wang YanQing 2013-09-14 4:43 ` Wang YanQing 2013-09-16 2:22 ` Chen Gang 2013-09-11 16:07 ` [RFC PATCH v2 02/25] smp, alpha: kill SMP single function call interrupt Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-10-22 10:07 ` Vineet Gupta 2013-10-22 10:18 ` Vineet Gupta 2013-10-22 10:18 ` Vineet Gupta 2013-09-11 16:07 ` [RFC PATCH v2 03/25] smp, ARC: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-25 11:31 ` Vineet Gupta 2013-09-11 16:07 ` [RFC PATCH v2 04/25] smp, ARM: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-12 9:14 ` Will Deacon 2013-09-11 16:07 ` [RFC PATCH v2 05/25] smp, ARM64: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-12 9:14 ` Will Deacon 2013-09-11 16:07 ` [RFC PATCH v2 06/25] smp, blackfin: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 07/25] smp, hexagon: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 08/25] smp, IA64: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 09/25] smp, m32r: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 10/25] smp, metag: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-12 11:14 ` James Hogan 2013-09-11 16:07 ` [RFC PATCH v2 11/25] smp, mips: kill redundant call of generic_smp_call_function_single_interrupt() Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 12/25] smp, mn10300: kill SMP single function call interrupt Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 13/25] smp, mn10300: enable arch_send_call_function_ipi_mask() Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 14/25] smp, parisc: kill SMP single function call interrupt Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 15/25] smp, ppc: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 20:03 ` Srivatsa S. Bhat 2013-09-11 20:03 ` Srivatsa S. Bhat 2013-09-12 14:04 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 16/25] smp, s390: prepare for killing generic_smp_call_function_single_interrupt() Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 17/25] smp, sh: kill SMP single function call interrupt Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-12 8:35 ` Paul Mundt 2013-09-11 16:07 ` [RFC PATCH v2 18/25] smp, sparc64: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 19/25] smp, sparc: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 20/25] smp, tile: " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:51 ` Chris Metcalf 2013-09-11 16:07 ` [RFC PATCH v2 21/25] " Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` Jiang Liu [this message] 2013-09-11 16:07 ` [RFC PATCH v2 22/25] smp, x86: " Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 23/25] smp: cleanup unsued generic_smp_call_function_single_interrupt() Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 24/25] smp: rename call_single_queue as call_function_queue Jiang Liu 2013-09-11 16:07 ` Jiang Liu 2013-09-11 16:07 ` [RFC PATCH v2 25/25] SMP, trivial: remove unused code from smp_boot.h Jiang Liu 2013-09-11 16:07 ` Jiang Liu
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=1378915649-16395-23-git-send-email-liuj97@gmail.com \ --to=liuj97@gmail.com \ --cc=a.p.zijlstra@chello.nl \ --cc=akpm@linux-foundation.org \ --cc=hpa@zytor.com \ --cc=jeremy@goop.org \ --cc=jiang.liu@huawei.com \ --cc=konrad.wilk@oracle.com \ --cc=linux-arch@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mingo@elte.hu \ --cc=rostedt@goodmis.org \ --cc=shli@kernel.org \ --cc=tglx@linutronix.de \ --cc=trivial@kernel.org \ --cc=udknight@gmail.com \ --cc=virtualization@lists.linux-foundation.org \ --cc=x86@kernel.org \ --cc=xen-devel@lists.xensource.com \ /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 a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).