public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* get_irq_regs() from soft IRQ
@ 2009-06-29 14:31 Jean Pihet
  2009-06-29 15:19 ` Russell King - ARM Linux
  2009-06-29 16:36 ` Siarhei Siamashka
  0 siblings, 2 replies; 16+ messages in thread
From: Jean Pihet @ 2009-06-29 14:31 UTC (permalink / raw)
  To: linux-omap, linux-arm-kernel, oprofile-list

Hi,

I am trying to get the latest IRQ registers from a timer or a work queue but I 
am running into problems:
- get_irq_regs() returns NULL in some cases, so it is unsuable and even causes 
crash when trying to get the registers values from the returned ptr
- I never get user space registers, only kernel

The use case is that the performance unit (PMNC) of the Cortex A8 has some 
serious bug, in short the performance counters overflow IRQ is to be avoided.
The solution I am implementing is to read and reset the counters from a work 
queue that is triggered by a timer.

Some questions:
- is there a way to get the last 'real' IRQ registers from a timer or work 
queue handler?
- is there some other way to do it?

Any thoughts?

Thanks & regards,
Jean

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2009-06-29 19:45 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-29 14:31 get_irq_regs() from soft IRQ Jean Pihet
2009-06-29 15:19 ` Russell King - ARM Linux
2009-06-29 15:35   ` Jean Pihet
2009-06-29 16:07     ` Russell King - ARM Linux
2009-06-29 16:12       ` Jean Pihet
2009-06-29 16:36 ` Siarhei Siamashka
2009-06-29 16:58   ` Jean Pihet
2009-06-29 17:46     ` Russell King - ARM Linux
2009-06-29 17:57       ` Jean Pihet
2009-06-29 17:54     ` Siarhei Siamashka
2009-06-29 18:08       ` Jean Pihet
2009-06-29 17:37   ` Russell King - ARM Linux
2009-06-29 17:52     ` Jean Pihet
2009-06-29 18:38     ` Siarhei Siamashka
2009-06-29 18:49       ` Jean Pihet
2009-06-29 19:45         ` Siarhei Siamashka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox