[lkml]   [2018]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [ARM64] Printing IRQ stack usage information
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:
> 0 16368 16384

> 3) How should I test it to get the different usage values for unused stack ?
> Can I get these values by implementing a sample interrupt handler,
> and printing information from there?

Hint 1: If you're in a state where seq_printf() is legal, how many IRQ's are
on this processor's IRQ stack?

Hint 2: What are the chances that some other CPU is currently in an IRQ?
(run 'top' and look for what percent of time that's happening)

Hint 3: what are the chances that the value of irq_stack_ptr is already stale
by the time seq_printf() finishes running?

Hint 4: what happens to the validity of your output if you get rescheduled
in the middle of that for_each loop?

(In other words, this code is terribly racy and is probably not going to answer
whatever debugging question you were working on.. If your question is "Did one
of the CPUs blow out its IRQ stack (or come close to doing so)?" there's better

[unhandled content-type:application/pgp-signature]
 \ /
  Last update: 2018-11-15 17:49    [W:0.087 / U:5.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site