Core isolation, cpu hotplug and stop_machine
From: Fredrik MarkstrÃm
Date: Mon May 22 2017 - 09:07:48 EST
Hello,
As I understand it the recommended way to force pending timers of a
core when trying to isolate it (runtime) is to use cpu hotplug. The
current implementation of cpu hotplug has a serious drawback in that
it uses stop_machine() which disturbs already isolated cores. This is
a serious problem in our usecase.
I would guess we are not the only ones with this problem, but as far
as I can see there is currently no solution for this in the latest
next. There was a patchset back in 2013 that implemented
stop_machine-free hotplug, but that was never accepted.
(https://lwn.net/Articles/538819/)
So is there any ongoing work to solve this problem and what is the
preferred way to solve it, is it:
1) stop_machine() free hotplug. It seems to be quite complex but
probably solves more problems
then the one above.
2) Invent some new mechanism/interface separate from hotplug to
migrate timers and hrtimers.
3) Don't, because this isn't a use-case that linux should support.
/Fredrik