[ARM64] Printing IRQ stack usage information

2018-11-15 Thread Pintu Agarwal
Hi All, I have a requirement in printing irq stack usage information for each cpu. I am using the following: Linux Kernel: 4.9.x Board: hikey620 (arm64, armv8 with 8 cores) Platform: Ubuntu 14 debian As a vague idea, I tried to implement like this:

Re: [ARM64] Printing IRQ stack usage information

2018-11-15 Thread valdis . kletnieks
On Thu, 15 Nov 2018 18:52:39 +0530, Pintu Agarwal said: > Currently, when I tested this (as a proc interface), I got the below output: > CPUUNUSED-STACKACTUAL-STACK > 0 16368 16384 > 3) How should I test it to get the different usage values for unused stack ?

Re: [ARM64] Printing IRQ stack usage information

2018-11-15 Thread Pintu Agarwal
On Thu, 15 Nov 2018, 10:19 pm > On Thu, 15 Nov 2018 18:52:39 +0530, Pintu Agarwal said: > > > Currently, when I tested this (as a proc interface), I got the below output: > > CPUUNUSED-STACKACTUAL-STACK > > 0 16368 16384 > > > 3) How should I test it to get the

Re: [ARM64] Printing IRQ stack usage information

2018-11-16 Thread valdis . kletnieks
On Fri, 16 Nov 2018 11:44:36 +0530, Pintu Agarwal said: > > If your question is "Did one > > of the CPUs blow out its IRQ stack (or come close to doing so)?" there's > > better > > approaches. > > > Yes, exactly, this is what the main intention. > If you have any better idea about this approach,

Re: [ARM64] Printing IRQ stack usage information

2018-11-16 Thread Pintu Agarwal
On Fri, Nov 16, 2018 at 5:03 PM wrote: > > On Fri, 16 Nov 2018 11:44:36 +0530, Pintu Agarwal said: > > > > If your question is "Did one > > > of the CPUs blow out its IRQ stack (or come close to doing so)?" there's > > > better > > > approaches. > > > > > Yes, exactly, this is what the main inten

Re: [ARM64] Printing IRQ stack usage information

2018-11-16 Thread valdis . kletnieks
On Fri, 16 Nov 2018 20:10:28 +0530, Pintu Agarwal said: > > Look at the code controlled by '#ifdef CONFIG_DEBUG_STACK_USAGE' > For example: is it possible to keep storing the irq_stack_usage (for > each cpu in a variable) information from boot time, and then use this > variable to dump the irq_st

Re: [ARM64] Printing IRQ stack usage information

2018-11-16 Thread Pintu Agarwal
On Fri, Nov 16, 2018 at 10:16 PM wrote: > > On Fri, 16 Nov 2018 20:10:28 +0530, Pintu Agarwal said: > > > > Look at the code controlled by '#ifdef CONFIG_DEBUG_STACK_USAGE' > > > For example: is it possible to keep storing the irq_stack_usage (for > > each cpu in a variable) information from boot

Re: [ARM64] Printing IRQ stack usage information

2018-11-16 Thread valdis . kletnieks
On Fri, 16 Nov 2018 23:13:48 +0530, Pintu Agarwal said: > On Fri, Nov 16, 2018 at 10:16 PM wrote: > > Congrats. You just re-invented DEBUG_STACK_USAGE, which just keeps a > > high-water mark > > for stack usage. > > So, you mean to say, my implementation is good enough to get the > irq_stack usa

Re: [ARM64] Printing IRQ stack usage information

2018-11-17 Thread Pintu Agarwal
On Sat, Nov 17, 2018 at 12:02 AM wrote: > > On Fri, 16 Nov 2018 23:13:48 +0530, Pintu Agarwal said: > > On Fri, Nov 16, 2018 at 10:16 PM wrote: > > > > Congrats. You just re-invented DEBUG_STACK_USAGE, which just keeps a > > > high-water mark > > > for stack usage. > > > > So, you mean to say, m

Re: [ARM64] Printing IRQ stack usage information

2018-11-20 Thread Pintu Agarwal
On Sat, Nov 17, 2018 at 6:36 PM Pintu Agarwal wrote: > > On Sat, Nov 17, 2018 at 12:02 AM wrote: > > > > > But my concern is that if I dump it from irq handler, I will get > > > information only for the current cpu. > > > How do I store and get the information for all the cpu from the boot time

Re: [ARM64] Printing IRQ stack usage information

2018-11-20 Thread valdis . kletnieks
On Tue, 20 Nov 2018 18:21:33 +0530, Pintu Agarwal said: > + sp = current_stack_pointer; > + if (on_irq_stack(sp, cpu)) { > + stack_start = (unsigned long)per_cpu(irq_stack, cpu); > + last_usage = per_cpu(irq_stack_usage, cpu); > + curr_usage = sp - stack_start; > +