From: Petr Mladek <pmladek@suse.com>
To: Jason Wessel <jason.wessel@windriver.com>
Cc: Daniel Thompson <daniel.thompson@linaro.org>,
Peter Zijlstra <peterz@infradead.org>,
Andrew Morton <akpm@linux-foundation.org>,
Sergey Senozhatsky <sergey.senozhatsky@gmail.com>,
linux-kernel@vger.kernel.org, Petr Mladek <pmladek@suse.com>
Subject: [PATCH v2 1/3] kdb: Remove unused kdb_event handling
Date: Tue, 29 Nov 2016 10:37:54 +0100 [thread overview]
Message-ID: <1480412276-16690-2-git-send-email-pmladek@suse.com> (raw)
In-Reply-To: <1480412276-16690-1-git-send-email-pmladek@suse.com>
kdb_event state variable is only set but never checked in
the kernel code.
http://www.spinics.net/lists/kdb/msg01733.html suggests that
this variable affected WARN_CONSOLE_UNLOCKED() in the original
implementation. But this check never went upstream.
The semantic is unclear and racy. The value is updated after
the kdb_printf_lock is acquired and after it is released.
It should be symmetric at minimum. The value should be manipulated
either inside or outside the locked area.
Fortunately, it seems that the original function is gone and
we could simply remove the state variable.
Suggested-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Petr Mladek <pmladek@suse.com>
---
include/linux/kdb.h | 1 -
kernel/debug/kdb/kdb_io.c | 2 --
kernel/debug/kdb/kdb_main.c | 1 -
3 files changed, 4 deletions(-)
diff --git a/include/linux/kdb.h b/include/linux/kdb.h
index 410decacff8f..eb706188dc23 100644
--- a/include/linux/kdb.h
+++ b/include/linux/kdb.h
@@ -77,7 +77,6 @@
* number whenever the kernel debugger is entered.
*/
extern int kdb_initial_cpu;
-extern atomic_t kdb_event;
/* Types and messages used for dynamically added kdb shell commands */
diff --git a/kernel/debug/kdb/kdb_io.c b/kernel/debug/kdb/kdb_io.c
index fc1ef736253c..3faadc988ec0 100644
--- a/kernel/debug/kdb/kdb_io.c
+++ b/kernel/debug/kdb/kdb_io.c
@@ -576,7 +576,6 @@ int vkdb_printf(enum kdb_msgsrc src, const char *fmt, va_list ap)
KDB_STATE_SET(PRINTF_LOCK);
spin_lock_irqsave(&kdb_printf_lock, flags);
got_printf_lock = 1;
- atomic_inc(&kdb_event);
} else {
__acquire(kdb_printf_lock);
}
@@ -851,7 +850,6 @@ int vkdb_printf(enum kdb_msgsrc src, const char *fmt, va_list ap)
got_printf_lock = 0;
spin_unlock_irqrestore(&kdb_printf_lock, flags);
KDB_STATE_CLEAR(PRINTF_LOCK);
- atomic_dec(&kdb_event);
} else {
__release(kdb_printf_lock);
}
diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c
index 2a20c0dfdafc..ca183919d302 100644
--- a/kernel/debug/kdb/kdb_main.c
+++ b/kernel/debug/kdb/kdb_main.c
@@ -60,7 +60,6 @@
* Kernel debugger state flags
*/
int kdb_flags;
-atomic_t kdb_event;
/*
* kdb_lock protects updates to kdb_initial_cpu. Used to
--
1.8.5.6
next prev parent reply other threads:[~2016-11-29 9:38 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-29 9:37 [PATCH v2 0/3] kdb: Fix locking in vkdb_printf() Petr Mladek
2016-11-29 9:37 ` Petr Mladek [this message]
2016-11-29 9:37 ` [PATCH v2 2/3] kdb: Properly synchronize vkdb_printf() calls with other CPUs Petr Mladek
2016-11-29 9:37 ` [PATCH v2 3/3] kdb: Call vkdb_printf() from vprintk_default() only when wanted Petr Mladek
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=1480412276-16690-2-git-send-email-pmladek@suse.com \
--to=pmladek@suse.com \
--cc=akpm@linux-foundation.org \
--cc=daniel.thompson@linaro.org \
--cc=jason.wessel@windriver.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=sergey.senozhatsky@gmail.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: 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
Powered by JetHome