Hello,
while debugging why XEN domU kernels hang on psrlz, I found that, when
this happens, pserialize_switchpoint() seems to not be called for one of the
CPUs (not always the same). The CPU in question doens't show up in
psz->psz_pass. I also noticed that sometimes, pserialize_perform() seems
to take much longer (several seconds) than it should.

Now my question: how is pserialize_switchpoint() supposed to be called ?
I see it's called from softint_dispatch() but Xen doesn't use it
(no fast soft interrupts).
I see it's called from lwp_startup() and mi_switch(), but only if
there is a context switch. If the CPU is idle, it will never be called.
So how should an idle CPU be handled ?

-- 
Manuel Bouyer <[email protected]>
     NetBSD: 26 ans d'experience feront toujours la difference
--

Reply via email to