* arm: Export save_stack_trace_tsk()
@ 2017-08-28 20:53 Dustin Brown
2017-09-09 15:30 ` Russell King - ARM Linux
0 siblings, 1 reply; 3+ messages in thread
From: Dustin Brown @ 2017-08-28 20:53 UTC (permalink / raw)
To: linux-arm-kernel
The kernel watchdog is a great debugging tool for finding tasks that
consume a disproportionate amount of CPU time in contiguous chunks. One
can imagine building a similar watchdog for arbitrary driver threads
using save_stack_trace_tsk() and print_stack_trace(). However, this is
not viable for dynamically loaded driver modules on ARM platforms
because save_stack_trace_tsk() is not exported for those architectures.
Export save_stack_trace_tsk() for the ARM architecture to align with x86
and support various debugging use cases such as arbitrary driver thread
watchdog timers.
Signed-off-by: Dustin Brown <dustinb@codeaurora.org>
---
arch/arm/kernel/stacktrace.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/kernel/stacktrace.c b/arch/arm/kernel/stacktrace.c
index 3a2fa203637a..564bb468b7ba 100644
--- a/arch/arm/kernel/stacktrace.c
+++ b/arch/arm/kernel/stacktrace.c
@@ -171,6 +171,7 @@ void save_stack_trace_tsk(struct task_struct *tsk,
struct stack_trace *trace)
{
__save_stack_trace(tsk, trace, 1);
}
+EXPORT_SYMBOL_GPL(save_stack_trace_tsk);
void save_stack_trace(struct stack_trace *trace)
{
--
2.12.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* arm: Export save_stack_trace_tsk()
2017-08-28 20:53 arm: Export save_stack_trace_tsk() Dustin Brown
@ 2017-09-09 15:30 ` Russell King - ARM Linux
2017-09-11 17:12 ` Dustin Brown
0 siblings, 1 reply; 3+ messages in thread
From: Russell King - ARM Linux @ 2017-09-09 15:30 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Aug 28, 2017 at 01:53:49PM -0700, Dustin Brown wrote:
> The kernel watchdog is a great debugging tool for finding tasks that
> consume a disproportionate amount of CPU time in contiguous chunks. One
> can imagine building a similar watchdog for arbitrary driver threads
> using save_stack_trace_tsk() and print_stack_trace(). However, this is
> not viable for dynamically loaded driver modules on ARM platforms
> because save_stack_trace_tsk() is not exported for those architectures.
> Export save_stack_trace_tsk() for the ARM architecture to align with x86
> and support various debugging use cases such as arbitrary driver thread
> watchdog timers.
Hi Dustin,
I'm not sure why, but when I merged this, your commit log appears to be
entirely on two very long lines. Linux requires that commit messages
are sensibly wrapped such that they can be read in git log on an 80
column display - please take care in future to ensure that commit
messages are appropriately wrapped.
I'm having to reformat the commit manually.
There are cases where wrapping is not appropriate (eg, when quoting
program output or kernel messages.)
Thanks.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up
^ permalink raw reply [flat|nested] 3+ messages in thread
* arm: Export save_stack_trace_tsk()
2017-09-09 15:30 ` Russell King - ARM Linux
@ 2017-09-11 17:12 ` Dustin Brown
0 siblings, 0 replies; 3+ messages in thread
From: Dustin Brown @ 2017-09-11 17:12 UTC (permalink / raw)
To: linux-arm-kernel
Hi Russell,
I apologize for the trouble! I'm not sure how it happened (it looks fund
below after all), but I will try to be extra careful in the future.
Thanks,
-Dustin
-----Original Message-----
From: Russell King - ARM Linux [mailto:linux at armlinux.org.uk]
Sent: Saturday, September 9, 2017 8:30 AM
To: Dustin Brown <dustinb@codeaurora.org>
Cc: linux-arm-kernel at lists.infradead.org
Subject: Re: arm: Export save_stack_trace_tsk()
On Mon, Aug 28, 2017 at 01:53:49PM -0700, Dustin Brown wrote:
> The kernel watchdog is a great debugging tool for finding tasks that
> consume a disproportionate amount of CPU time in contiguous chunks.
> One can imagine building a similar watchdog for arbitrary driver
> threads using save_stack_trace_tsk() and print_stack_trace(). However,
> this is not viable for dynamically loaded driver modules on ARM
> platforms because save_stack_trace_tsk() is not exported for those
architectures.
> Export save_stack_trace_tsk() for the ARM architecture to align with
> x86 and support various debugging use cases such as arbitrary driver
> thread watchdog timers.
Hi Dustin,
I'm not sure why, but when I merged this, your commit log appears to be
entirely on two very long lines. Linux requires that commit messages are
sensibly wrapped such that they can be read in git log on an 80 column
display - please take care in future to ensure that commit messages are
appropriately wrapped.
I'm having to reformat the commit manually.
There are cases where wrapping is not appropriate (eg, when quoting program
output or kernel messages.)
Thanks.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-09-11 17:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-28 20:53 arm: Export save_stack_trace_tsk() Dustin Brown
2017-09-09 15:30 ` Russell King - ARM Linux
2017-09-11 17:12 ` Dustin Brown
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).