All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86/kgdb: Replace bool_int_array[NR_CPUS] with bitmap
@ 2015-09-26 12:47 Denys Vlasenko
  2015-09-26 12:47 ` [PATCH] cpufreq: p4-clockmod: " Denys Vlasenko
  2015-09-29  8:36 ` [tip:x86/debug] x86/kgdb: " tip-bot for Denys Vlasenko
  0 siblings, 2 replies; 7+ messages in thread
From: Denys Vlasenko @ 2015-09-26 12:47 UTC (permalink / raw)
  To: Jason Wessel, Ingo Molnar
  Cc: Denys Vlasenko, H. Peter Anvin, x86, linux-kernel

Straigntforward conversion from
    int was_in_debug_nmi[NR_CPUS]
to
    DECLARE_BITMAP(was_in_debug_nmi, NR_CPUS)

Saves about 2 kbytes in bss for NR_CPUS=512.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
CC: Jason Wessel <jason.wessel@windriver.com>
CC: Ingo Molnar <mingo@kernel.org>
CC: H. Peter Anvin <hpa@zytor.com>
CC: x86@kernel.org
CC: linux-kernel@vger.kernel.org
---
 arch/x86/kernel/kgdb.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/arch/x86/kernel/kgdb.c b/arch/x86/kernel/kgdb.c
index d6178d9..dd0a003 100644
--- a/arch/x86/kernel/kgdb.c
+++ b/arch/x86/kernel/kgdb.c
@@ -511,24 +511,27 @@ single_step_cont(struct pt_regs *regs, struct die_args *args)
 	return NOTIFY_STOP;
 }
 
-static int was_in_debug_nmi[NR_CPUS];
+static DECLARE_BITMAP(was_in_debug_nmi, NR_CPUS);
 
 static int kgdb_nmi_handler(unsigned int cmd, struct pt_regs *regs)
 {
+	int cpu;
+
 	switch (cmd) {
 	case NMI_LOCAL:
 		if (atomic_read(&kgdb_active) != -1) {
 			/* KGDB CPU roundup */
-			kgdb_nmicallback(raw_smp_processor_id(), regs);
-			was_in_debug_nmi[raw_smp_processor_id()] = 1;
+			cpu = raw_smp_processor_id();
+			kgdb_nmicallback(cpu, regs);
+			set_bit(cpu, was_in_debug_nmi);
 			touch_nmi_watchdog();
 			return NMI_HANDLED;
 		}
 		break;
 
 	case NMI_UNKNOWN:
-		if (was_in_debug_nmi[raw_smp_processor_id()]) {
-			was_in_debug_nmi[raw_smp_processor_id()] = 0;
+		cpu = raw_smp_processor_id();
+		if (__test_and_clear_bit(cpu, was_in_debug_nmi)) {
 			return NMI_HANDLED;
 		}
 		break;
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-09-29  8:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-26 12:47 [PATCH] x86/kgdb: Replace bool_int_array[NR_CPUS] with bitmap Denys Vlasenko
2015-09-26 12:47 ` [PATCH] cpufreq: p4-clockmod: " Denys Vlasenko
2015-09-26 22:07   ` Viresh Kumar
2015-09-27 16:10   ` Jean Delvare
2015-09-27 17:58     ` Denys Vlasenko
2015-09-28  7:10       ` Jean Delvare
2015-09-29  8:36 ` [tip:x86/debug] x86/kgdb: " tip-bot for Denys Vlasenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.