All of lore.kernel.org
 help / color / mirror / Atom feed
* [Adeos-main] ipipe_suspend_domain vs. pipeline state of caller
@ 2009-11-18 16:30 Jan Kiszka
  2009-11-18 16:49 ` Philippe Gerum
  0 siblings, 1 reply; 10+ messages in thread
From: Jan Kiszka @ 2009-11-18 16:30 UTC (permalink / raw)
  To: Philippe Gerum; +Cc: adeos-main

Hi Philippe,

on x86, trace_hardirqs_on in safe_halt feels unhappy about the fact that
it is called with neither real irqs disable nor the root domain stalled.
Call path is cpu_idle -> default_idle -> safe_halt. We loose the
stalling of the root domain in cpu_idle via ipipe_suspend_domain.

That raises the question how ipipe_suspend_domain is supposed to deal
with the pipeline state of the calling domain. Currently it clears the
stall unconditionally, which is obviously not correct for the idle path.
My feeling is that it should not alter the state, rather restore it on
exit. But this is an exported interface (though a widely unused today, I
guess), and I don't claim to oversee all corner cases.

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux


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

end of thread, other threads:[~2009-11-18 23:13 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-18 16:30 [Adeos-main] ipipe_suspend_domain vs. pipeline state of caller Jan Kiszka
2009-11-18 16:49 ` Philippe Gerum
2009-11-18 17:12   ` [Adeos-main] [PATCH] Restore pipeline state on exit from ipipe_suspend_domain Jan Kiszka
2009-11-18 17:21     ` Philippe Gerum
2009-11-18 17:25       ` Jan Kiszka
2009-11-18 17:37         ` Jan Kiszka
2009-11-18 17:48           ` Philippe Gerum
2009-11-18 23:10             ` [Adeos-main] [PATCH] x86: Move ipipe_suspend_domain out of IRQ-disabled section Jan Kiszka
2009-11-18 23:13               ` Jan Kiszka
2009-11-18 17:41         ` [Adeos-main] [PATCH] Restore pipeline state on exit from ipipe_suspend_domain Philippe Gerum

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.