ff-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 37 -
1 file changed, 37 deletions(-)
diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c
index 5f4be507d79f..3a5408b54570 100644
--- a/kernel/debug/kdb/kdb_main.c
+++ b/kernel/debu
ail.com
[2]
https://lore.kernel.org/lkml/1348522080-32629-9-git-send-email-anton.voront...@linaro.org/
Douglas Anderson (3):
Revert "tty/serial: Add kgdb_nmi driver"
Revert "kdb: Implement disable_nmi command"
Revert "kernel/debug: Mask KGDB NMI upon entry"
drivers/tt
ff-by: Douglas Anderson
---
include/linux/kgdb.h | 3 ---
kernel/debug/debug_core.c | 14 +++---
2 files changed, 3 insertions(+), 14 deletions(-)
diff --git a/include/linux/kgdb.h b/include/linux/kgdb.h
index 14739952698b..5eebbe7a3545 100644
--- a/include/linux/kgdb.h
+++ b/in
" is not defined. No architectures define it.
[1]
https://lore.kernel.org/lkml/1348522080-32629-9-git-send-email-anton.voront...@linaro.org/
Signed-off-by: Douglas Anderson
---
drivers/tty/serial/Kconfig| 19 ---
drivers/tty/serial/Makefile | 1 -
drivers/tt
uot; functions to use "bool".
While touching this, we touch a line next to a comment using a style
that's nonstandard for the kdb codebase. Update it in passing.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 36 +---
1 file cha
When specifying a physical address allow specifying the word side and
the number of words.
NOTE: we don't do this for the "mds" command since it's pretty much a
different beast.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 16 ++--
We'd like to use the "WcN" parsing for some other "md"
variants. Abstract it out.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 55 +++--
1 file changed, 46 insertions(+), 9 deletions(-)
diff --git a/kernel/debu
Several of the integers in kdb_md() should be marked unsigned. Mark
them as such. When doing this, we need to add an explicit cast to the
address masking or it ends up getting truncated down to "int" size.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 10 +---
and "mdWcN"
handling. This breaks the above case where the user tweaked "argv[0]"
and then tried to somehow leverage the "repeat" code to do something
smart, but that feels like it was a misfeature anyway.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/k
Though the "mdr" has a similar purpose to the other "md" commands in
that they all display memory, the actual code to implement it has
almost nothing in common with the rest of the commands. Separate
things out.
Signed-off-by: Douglas Anderson
---
kernel/debug
n't really unique (it could be
the prefix for "mm" also) and it's only saving one letter. Remove the
setting of "minlen" to 1 for "md".
Signed-off-by: Douglas Anderson
---
While digging into this, I found that "minlen" doesn't seem to mean
00 ...
This doesn't seem like particularly useful behavior and adds a bunch
of complexity to the arg parsing. Remove it.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 5 -
1 file changed, 5 deletions(-)
diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb
Add commands that are like the other "md" commands but that allow you
to read memory that's in the IO space.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c| 38 +++
kernel/debug/kdb/kdb_private.h | 1 +
kernel/debug/kdb/kdb
re obvious.
As part of this, add "bogus" commands to the table for "mdW" and
"mdWcN" so we don't have to obscurely reference them in the normal
"md" help. These bogus commands don't really hurt since kdb_md()
validate
logic more obvious by initializing `repeat` to 0
and then setting it to non-zero when it should override. Then we can
do all the math at once.
While changing this, use the proper DIV_ROUND_UP() macro and introcue
a constant for KDB_MD_BYTES_PER_LINE. We'll also make and "if else"
more obv
The docs say you should use kstrtouint() instead of simple_strtoul(),
so do so. This nicely simplfies the code a little.
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_main.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/kernel/debug/kdb/kdb_main.c b
the weird corners. I have a hard time believing anyone was relying
on these, but if you think someone is then please yell.
Also note that it would probably be good to add iomapped memory writes,
but this series is already pretty long so maybe that can be done later.
Douglas Anderson (13):
kdb
Every caller to kdbgetaddrarg() didn't care about the "offset" and
"name" returned by the function. Some passed NULL and some passed the
address of a bogus local variable that was never looked at. Drop the
arguments.
Signed-off-by: Douglas Anderson
---
kernel/deb
ion. This patch is expected to functionally be a
no-op.
Fixes: 09b35989421d ("kdb: Use format-strings rather than '\0' injection in
kdb_read()")
Signed-off-by: Douglas Anderson
---
kernel/debug/kdb/kdb_io.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ker
c_smp_init() as allocation of SGIs
as IRQs/NMIs happen as part of this routine.
Co-developed-by: Sumit Garg
Signed-off-by: Sumit Garg
Acked-by: Mark Rutland
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
I'll note that this change is a little more black magic to me than
othe
eviewed-by: Sumit Garg
Acked-by: Mark Rutland
Tested-by: Mark Rutland
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
This patch is tested by Mark Rutland's LKDTM test [1].
[1] http://lore.kernel.org/lkml/20230831101026.3122590-1-mark.rutl...@arm.com
(no changes since v10)
x30c
Acked-by: Mark Rutland
Reviewed-by: Stephen Boyd
Acked-by: Sumit Garg
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
(no changes since v11)
Changes in v11:
- Updated commit message as per Stephen.
Changes in v9:
- Added to commit message that this doesn't catch all cases.
redundant IPI_RESCHEDULE IPIs, so there should be no functional
impact as a result of this change.
Signed-off-by: Mark Rutland
Reviewed-by: Stephen Boyd
Reviewed-by: Sumit Garg
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
Cc: Catalin Marinas
Cc: Marc Zyngier
Cc: Will Deacon
---
I have no i
- Moved header file out of "include" since it didn't need to be there.
- Remove arm64_supports_nmi()
- Remove fallback for when debug IPI isn't available.
- Renamed "NMI IPI" to "debug IPI" since it might not be backed by NMI.
- arch_trigger_cpumask_backtrace() no l
Garg
Signed-off-by: Sumit Garg
Reviewed-by: Daniel Thompson
Reviewed-by: Stephen Boyd
Acked-by: Mark Rutland
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
(no changes since v10)
Changes in v10:
- Don't allocate the cpumask on the stack; just iterate.
- Moved kgdb calls to
y: Mark Rutland
Reviewed-by: Stephen Boyd
Reviewed-by: Misono Tomohiro
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
(no changes since v12)
Changes in v12:
- Minor comment change to add "()" after nmi_trigger_cpumask_backtrace.
- Updated the commit hash of the commit this de
tland
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
This patch is almost completely unrelated to the rest of the series
other than the fact that it would cause a merge conflict with the
series if sent separately. I tacked it on to this series in response
to Stephen's feedback on v11 o
eviewed-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
I don't actually have any good way to test/validate this patch. It's
added to the series at Mark's request.
(no changes since v10)
Changes in v10:
- ("IPI_CPU_STOP and IPI_CPU_CRASH_STOP should try for NMI") new for
Mark the three IPI-related globals in smp.c as "__ro_after_init" since
they are only ever set in set_smp_ipi_range(), which is marked
"__init". This is a better and more secure marking than the old
"__read_mostly".
Suggested-by: Stephen Boyd
Signed-off-by: Dougl
y: Mark Rutland
Reviewed-by: Stephen Boyd
Reviewed-by: Misono Tomohiro
Signed-off-by: Douglas Anderson
---
Changes in v12:
- Minor comment change to add "()" after nmi_trigger_cpumask_backtrace.
- Updated the commit hash of the commit this depends on.
Changes in v11:
- Adjust comment abou
Garg
Signed-off-by: Sumit Garg
Reviewed-by: Daniel Thompson
Reviewed-by: Stephen Boyd
Signed-off-by: Douglas Anderson
---
I debated whether this should be in "arch/arm64/kernel/smp.c" or if I
should try to find a way for it to go into "arch/arm64/kernel/kgdb.c".
In the end th
x30c
Acked-by: Mark Rutland
Reviewed-by: Stephen Boyd
Acked-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
(no changes since v11)
Changes in v11:
- Updated commit message as per Stephen.
Changes in v9:
- Added to commit message that this doesn't catch all cases.
Changes in v8:
- "T
g IPI isn't available.
- Renamed "NMI IPI" to "debug IPI" since it might not be backed by NMI.
- arch_trigger_cpumask_backtrace() no longer returns bool
Changes in v8:
- "Tag the arm64 idle functions as __cpuidle" new for v8
- Removed "#ifdef CONFIG_SMP" sin
redundant IPI_RESCHEDULE IPIs, so there should be no functional
impact as a result of this change.
Signed-off-by: Mark Rutland
Reviewed-by: Stephen Boyd
Reviewed-by: Sumit Garg
Signed-off-by: Douglas Anderson
Cc: Catalin Marinas
Cc: Marc Zyngier
Cc: Will Deacon
---
I have no idea how to test this. I
c_smp_init() as allocation of SGIs
as IRQs/NMIs happen as part of this routine.
Co-developed-by: Sumit Garg
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
I'll note that this change is a little more black magic to me than
others in this series. I don't have a massive am
Garg
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
I debated whether this should be in "arch/arm64/kernel/smp.c" or if I
should try to find a way for it to go into "arch/arm64/kernel/kgdb.c".
In the end this is so little code that it didn't seem worth it
x30c
Acked-by: Mark Rutland
Reviewed-by: Stephen Boyd
Signed-off-by: Douglas Anderson
---
Changes in v11:
- Updated commit message as per Stephen.
Changes in v9:
- Added to commit message that this doesn't catch all cases.
Changes in v8:
- "Tag the arm64 idle functions as __cpuidle&q
There's no reason why IPI_CPU_STOP and IPI_CPU_CRASH_STOP can't be
handled as NMI. They are very simple and everything in them is
NMI-safe. Mark them as things to use NMI for if NMI is available.
Suggested-by: Mark Rutland
Reviewed-by: Stephen Boyd
Signed-off-by: Douglas Anderson
-
redundant IPI_RESCHEDULE IPIs, so there should be no functional
impact as a result of this change.
Signed-off-by: Mark Rutland
Signed-off-by: Douglas Anderson
Cc: Catalin Marinas
Cc: Marc Zyngier
Cc: Sumit Garg
Cc: Will Deacon
---
I have no idea how to test this. I just took Mark's patch and ja
c_smp_init() as allocation of SGIs
as IRQs/NMIs happen as part of this routine.
Co-developed-by: Sumit Garg
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
In v10 I removed the previous Reviewed-by and Tested-by tags since the
patch contents changed pretty drastically.
I'll
4_supports_nmi()
- Remove fallback for when debug IPI isn't available.
- Renamed "NMI IPI" to "debug IPI" since it might not be backed by NMI.
- arch_trigger_cpumask_backtrace() no longer returns bool
Changes in v8:
- "Tag the arm64 idle functions as __cpuidle"
Rutland
Signed-off-by: Douglas Anderson
---
Changes in v11:
- Adjust comment about NR_IPI/MAX_IPI.
- Don't use confusing "backed by" idiom in comment.
- Made arm64_backtrace_ipi() static.
Changes in v10:
- Backtrace now directly supported in smp.c
- Squash backtrace into patch
Garg
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
I debated whether this should be in "arch/arm64/kernel/smp.c" or if I
should try to find a way for it to go into "arch/arm64/kernel/kgdb.c".
In the end this is so little code that it didn't seem worth it
There's no reason why IPI_CPU_STOP and IPI_CPU_CRASH_STOP can't be
handled as NMI. They are very simple and everything in them is
NMI-safe. Mark them as things to use NMI for if NMI is available.
Suggested-by: Mark Rutland
Signed-off-by: Douglas Anderson
---
I don't actually ha
c_smp_init() as allocation of SGIs
as IRQs/NMIs happen as part of this routine.
Co-developed-by: Sumit Garg
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
In v10 I removed the previous Reviewed-by and Tested-by tags since the
patch contents changed pretty drastically.
I'll
Rutland
Signed-off-by: Douglas Anderson
---
Changes in v10:
- Backtrace now directly supported in smp.c
- Squash backtrace into patch adding support for pseudo-NMI IPIs.
Changes in v9:
- Added comments that we might not be using NMI always.
- Fold in v8 patch #10 ("Fallback to a regu
redundant IPI_RESCHEDULE IPIs, so there should be no functional
impact as a result of this change.
Signed-off-by: Mark Rutland
Signed-off-by: Douglas Anderson
Cc: Catalin Marinas
Cc: Marc Zyngier
Cc: Sumit Garg
Cc: Will Deacon
---
I have no idea how to test this. I just took Mark's patch and ja
Rutland
Signed-off-by: Douglas Anderson
---
(no changes since v9)
Changes in v9:
- Added to commit message that this doesn't catch all cases.
Changes in v8:
- "Tag the arm64 idle functions as __cpuidle" new for v8
arch/arm64/kernel/idle.c | 4 ++--
1 file changed, 2 insertio
uot;NMI IPI" to "debug IPI" since it might not be backed by NMI.
- arch_trigger_cpumask_backtrace() no longer returns bool
Changes in v8:
- "Tag the arm64 idle functions as __cpuidle" new for v8
- Removed "#ifdef CONFIG_SMP" since arm64 is always SMP
- debug_ipi
PANIC print.
Let's replicate the commands to flush the console in the kdb panic
entry point to avoid this.
Signed-off-by: Douglas Anderson
---
kernel/debug/debug_core.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/kernel/debug/debug_core.c b/kernel/debug/debug_core.c
index d5e9ccde3a
; out of
uart_poll_put_char(). Having that conversion at such a low level
could interfere if we ever want to transfer binary data. In
addition, if we truly made uart_poll_get_char() the inverse of
uart_poll_put_char() it would convert back to '\n' and (ironically)
kdb's parse
le is
`kernel.softlockup_all_cpu_backtrace`. This also allows us to
backtrace hard locked up CPUs in cases where the debug IPI is backed
by an NMI (or pseudo NMI).
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
Changes in v9:
- Added comments that we might not be using NMI always.
- Renamed &qu
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
I could imagine that people object to using up the last free IPI on
interrupt controllers with only 8 IPIs. However, it shouldn't be a big
deal. If we later need an extra IPI, it shouldn't be too hard to
combine some of the
l work.
Signed-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
Changes in v9:
- Remove fallback for when debug IPI isn't available.
- Renamed "NMI IPI" to "debug IPI" since it might not be backed by NMI.
arch/arm64/kernel/ipi_debug.c | 5 +
arch/arm64/k
To save architectures from needing to wrap the call in #ifdefs, add a
stub no-op version of kgdb_nmicallback(), which returns 1 if it didn't
handle anything.
Reviewed-by: Daniel Thompson
Signed-off-by: Douglas Anderson
---
In v9 this is the only kgdb dependency. I'm assuming it could
ned-off-by: Sumit Garg
Signed-off-by: Douglas Anderson
---
I didn't get any feedback from v8 patch #10 [1], but I went ahead and
folded it in here anyway since it really simplfies things. If people
don't like the fallback to regular IPI, I can also undo it.
[1]
https://lore.kernel.org/r/
this routine.
Signed-off-by: Sumit Garg
Reviewed-by: Masayoshi Mizuma
Tested-by: Chen-Yu Tsai
Signed-off-by: Douglas Anderson
---
(no changes since v1)
drivers/irqchip/irq-gic-v3.c | 29 +
1 file changed, 21 insertions(+), 8 deletions(-)
diff --git a/drivers/irqchip
h_trigger_cpumask_backtrace() no longer returns bool
Changes in v8:
- "Provide a stub kgdb_nmicallback() if !CONFIG_KGDB" new for v8
- "Tag the arm64 idle functions as __cpuidle" new for v8
- Removed "#ifdef CONFIG_SMP" since arm64 is always SMP
- debug_ipi_setup() and debug
ing looked like this:
gic_cpu_sys_reg_init+0x1f8/0x314
gic_cpu_pm_notifier+0x40/0x78
raw_notifier_call_chain+0x5c/0x134
cpu_pm_notify+0x38/0x64
cpu_pm_exit+0x20/0x2c
psci_enter_idle_state+0x48/0x70
cpuidle_enter_state+0xb8/0x260
cpuidle_enter+0x44/0x5c
do_idle+0x188/0x30c
Signed-off-
The dependency for HARDLOCKUP_DETECTOR_PREFER_BUDDY was more
complicated than it needed to be. If the "perf" detector is available
and we have SMP then we have a choice, so enable the config based on
just those two config items.
Suggested-by: Petr Mladek
Signed-off-by: Dougla
HAVE_HARDLOCKUP_DETECTOR_NON_ARCH is a mouthful and
confusing. HAVE_HARDLOCKUP_DETECTOR_PERF_OR_BUDDY is even more of a
mouthful, but probably less confusing. Rename the Kconfig names.
Signed-off-by: Douglas Anderson
---
lib/Kconfig.debug | 12 ++--
1 file changed, 6 insertions(+), 6
t, so we should match types.
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
include/linux/nmi.h | 4 ++--
kernel/watchdog.c | 15 +++
kernel/watchdog_buddy.c | 2 +-
3 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/include/linux/nmi.h b/incl
There's no reason to make a copy of the "watchdog_cpus" locally in
watchdog_next_cpu(). Making a copy wouldn't make things any more race
free and we're just reading the value so there's no need for a copy.
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
In the patch ("watchdog/hardlockup: add comments to
touch_nmi_watchdog()") we adjusted some comments for
touch_nmi_watchdog(). The comment about the softlockup had a typo and
were also felt to be too obvious. Remove it.
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
Signed-off-by: Douglas Anderson
---
kernel/watchdog.c | 6 --
kernel/watchdog_buddy.c | 21 +
2 files changed, 21 insertions(+), 6 deletions(-)
diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 6cc46b8e3d07..a351ab0c35eb 100644
--- a/kernel/watchdog
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
kernel/watchdog.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 32dac8028753..85f4839b6faf 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
In the patch ("watchdog/hardlockup: add a "cpu" param to
watchdog_hardlockup_check()") there was no reason to use
raw_cpu_ptr(). Using this_cpu_ptr() works fine.
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
kernel/watchdog.c | 2 +-
1 file changed, 1 inse
by: Petr Mladek
Signed-off-by: Douglas Anderson
---
Though this does fix a minor bug, I didn't mark this as "Fixes"
because it's super minor. One could also argue that this wasn't a bug
at all but simply was never an implemented feature. The code that
added some amount
Implement init time detection
of perf")
Reported-by: Petr Mladek
Closes: https://lore.kernel.org/r/ZHCn4hNxFpY5-9Ki@alley
Signed-off-by: Douglas Anderson
---
include/linux/nmi.h | 6 --
kernel/watchdog.c | 30 --
2 files changed, 20 insertions(+), 16 del
anup a few things that were pointed out in
review.
Douglas Anderson (10):
watchdog/hardlockup: Keep kernel.nmi_watchdog sysctl as 0444 if probe
fails
watchdog/hardlockup: HAVE_NMI_WATCHDOG must implement
watchdog_hardlockup_probe()
watchdog/hardlockup: Don't use raw_cpu_ptr() in
we
tried to add the buddy lockup detector which was not arch-specific but
wanted to hook into those same functions.
This is not expected to have any functional impact.
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
(no changes since v4)
Changes in v4:
- ("Have the perf ha
itives with turbo
modes")
Signed-off-by: Douglas Anderson
---
Changes in v5:
- ("More properly prevent false ...") promoted to its own patch for v5.
kernel/watchdog_hld.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/watchdog_hld.c b/kernel/watchdog_hld
xes: 7edaeb6841df ("kernel/watchdog: Prevent false positives with turbo
modes")
Reviewed-by: Nicholas Piggin
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
Changes in v5:
- Add Nicholas's explanation of why this didn't break builds.
- watchdog_hardlockup_perf.c
to prevent mistakes when calling the code in another
code path.
Signed-off-by: Pingfan Liu
Co-developed-by: Lecopzer Chen
Signed-off-by: Lecopzer Chen
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it
On arm64, NMI support needs to be detected at runtime. Add a weak
function to the perf hardlockup detector so that an architecture can
implement it to detect whether NMIs are available.
Signed-off-by: Douglas Anderson
---
While I won't object to this patch landing, I consider it part o
returns since it seemed more symmetric.
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
Changes in v5:
- watchdog_hardlockup_dumped_stacks => watchdog_hardlockup_all_cpu_dumped
- watchdog_hardlockup_processed => watchdog_hardlockup_warned
Changes in v4:
- ("Style ch
x27;d like to rename these functions but that is a fairly
disruptive change touching a lot of drivers. After discussion [1] the
plan is to defer this until a good time.
[1] https://lore.kernel.org/r/ZFy0TX1tfhlH8gxj@alley
Signed-off-by: Douglas Anderson
---
Changes in v5:
- No lon
arg
Co-developed-by: Pingfan Liu
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts between my series and the one adding
the arm64 perf hardlockup detec
initialized.
Co-developed-by: Sumit Garg
Signed-off-by: Sumit Garg
Co-developed-by: Pingfan Liu
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts
or, which isn't using NMIs. As
part of this, we sanitized a few names for consistency.
Signed-off-by: Douglas Anderson
---
Changes in v5:
- Found a few more names / comments to change.
- Tried to make names more consistent as per v4 feedback.
Changes in v4:
- ("Rename some "NMI wa
d as well.
This change is expected to be a no-op.
Signed-off-by: Douglas Anderson
---
Changes in v5:
- watchdog_hardlockup_interrupt_count() => watchdog_hardlockup_kick()
- watchdog_hardlockup_is_lockedup() => is_hardlockup()
Changes in v4:
- ("Move perf hardlockup checking/panic ...&
From: Lecopzer Chen
Nobody cares about the return value of watchdog_nmi_enable(),
changing its prototype to void.
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Reviewed-by: Petr Mladek
Acked-by: Nicholas Piggin
Signed-off-by: Douglas Anderson
---
I yanked this patch from the
ted hrtimer_interrupts_saved, however,
because we end up petting all affected CPUs to make sure the new and
old CPU can't end up somehow read/write hrtimer_interrupts_saved at
the same time.
Signed-off-by: Douglas Anderson
---
Changes in v5:
- Don't dump stack on the buddy CPU if we f
arm-kernel/20220903093415.15850-1-lecopzer.c...@mediatek.com/
Signed-off-by: Colin Cross
Signed-off-by: Matthias Kaehlcke
Signed-off-by: Guenter Roeck
Signed-off-by: Tzung-Bi Shih
Signed-off-by: Douglas Anderson
---
This patch has been rebased in ChromeOS kernel trees many times, and
each time
From: Lecopzer Chen
No reference to WATCHDOG_DEFAULT, remove it.
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts
hen
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts between my series and the one adding
the arm64 perf hardlockup detector, in case someone wanted to test
them both together.
As part
ewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
(no changes since v4)
Changes in v4:
- ("Rename watchdog_hld.c to watchdog_perf.c") new for v4.
kernel/Makefile| 2 +-
kernel/{watchdog_hld.c => watchdog_perf.c} | 2 +-
2 files changed
that the CPU we're running on might be different
than the one we're checking.
Currently the code in watchdog.c is guarded by
CONFIG_HARDLOCKUP_DETECTOR_PERF, which makes this change seem
silly. However, a future patch will change this.
Signed-off-by: Douglas Anderson
---
Changes in v
From: Lecopzer Chen
No reference to WATCHDOG_DEFAULT, remove it.
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts
initialized.
Co-developed-by: Sumit Garg
Signed-off-by: Sumit Garg
Co-developed-by: Pingfan Liu
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts
arg
Co-developed-by: Pingfan Liu
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts between my series and the one adding
the arm64 perf hardlockup detec
hen
Suggested-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it easier to avoid conflicts between my series and the one adding
the arm64 perf hardlockup detector, in case someone wanted to test
them both together.
As part
to prevent mistakes when calling the code in another
code path.
Signed-off-by: Pingfan Liu
Co-developed-by: Lecopzer Chen
Signed-off-by: Lecopzer Chen
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my series just to
make it
f.
It could be argued that the new name makes it less obvious that this
is a hardlockup detector. While true, it's not hard to remember that
the "perf" detector is always a hardlockup detector and it's nice not
to have names that are too convoluted.
Signed-off-by: Douglas Ander
we
tried to add the buddy lockup detector which was not arch-specific but
wanted to hook into those same functions.
This is not expected to have any functional impact.
Signed-off-by: Douglas Anderson
---
Changes in v4:
- ("Have the perf hardlockup use __weak ...") new for v4.
includ
rns since it seemed more symmetric.
Signed-off-by: Douglas Anderson
---
Changes in v4:
- ("Style changes to watchdog_hardlockup_check ...") new for v4.
kernel/watchdog.c | 32 +++-
1 file changed, 15 insertions(+), 17 deletions(-)
diff --git a/kernel/wat
From: Lecopzer Chen
Nobody cares about the return value of watchdog_nmi_enable(),
changing its prototype to void.
Signed-off-by: Pingfan Liu
Signed-off-by: Lecopzer Chen
Reviewed-by: Petr Mladek
Signed-off-by: Douglas Anderson
---
I yanked this patch from the mailing lists [1] into my
On arm64, NMI support needs to be detected at runtime. Add a weak
function to the perf hardlockup detector so that an architecture can
implement it to detect whether NMIs are available.
Signed-off-by: Douglas Anderson
---
While I won't object to this patch landing, I consider it part o
pets super fast. The new behavior
of handling super-fast perf before clearing watchdog pets seems
better.
Signed-off-by: Douglas Anderson
---
Changes in v4:
- ("Move perf hardlockup watchdog petting to watchdog.c") new for v4.
include/linux/nmi.h| 5 +++-
ounting to only be
there if the perf hardlockup detector is configured as well.
This change is expected to be a no-op.
Signed-off-by: Douglas Anderson
---
Changes in v4:
- ("Move perf hardlockup checking/panic ...") new for v4.
include/linux/nmi.h| 5 ++-
kernel/watchdog.c
1 - 100 of 256 matches
Mail list logo