aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/debug/kdb/kdb_main.c
diff options
context:
space:
mode:
authorAnton Vorontsov <anton.vorontsov@linaro.org>2012-07-20 20:28:25 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-07-21 13:34:00 -0400
commitc064da47144b11be4697a4611f640086a663016a (patch)
tree838c1b69e0485ba4b2bda8668dc0c4b3117cb5c8 /kernel/debug/kdb/kdb_main.c
parent533827c921c34310f63e859e1d6d0feec439657d (diff)
kdb: Switch to nolock variants of kmsg_dump functions
The locked variants are prone to deadlocks (suppose we got to the debugger w/ the logbuf lock held), so let's switch to nolock variants. Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/debug/kdb/kdb_main.c')
-rw-r--r--kernel/debug/kdb/kdb_main.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c
index df17c935d3c6..1f91413edb87 100644
--- a/kernel/debug/kdb/kdb_main.c
+++ b/kernel/debug/kdb/kdb_main.c
@@ -2072,8 +2072,8 @@ static int kdb_dmesg(int argc, const char **argv)
2072 kdb_set(2, setargs); 2072 kdb_set(2, setargs);
2073 } 2073 }
2074 2074
2075 kmsg_dump_rewind(&dumper); 2075 kmsg_dump_rewind_nolock(&dumper);
2076 while (kmsg_dump_get_line(&dumper, 1, NULL, 0, NULL)) 2076 while (kmsg_dump_get_line_nolock(&dumper, 1, NULL, 0, NULL))
2077 n++; 2077 n++;
2078 2078
2079 if (lines < 0) { 2079 if (lines < 0) {
@@ -2105,8 +2105,8 @@ static int kdb_dmesg(int argc, const char **argv)
2105 if (skip >= n || skip < 0) 2105 if (skip >= n || skip < 0)
2106 return 0; 2106 return 0;
2107 2107
2108 kmsg_dump_rewind(&dumper); 2108 kmsg_dump_rewind_nolock(&dumper);
2109 while (kmsg_dump_get_line(&dumper, 1, buf, sizeof(buf), &len)) { 2109 while (kmsg_dump_get_line_nolock(&dumper, 1, buf, sizeof(buf), &len)) {
2110 if (skip) { 2110 if (skip) {
2111 skip--; 2111 skip--;
2112 continue; 2112 continue;