linux-rt-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [Question] MTRR init on secondary processors
@ 2016-01-20  5:44 Peter Xu
  0 siblings, 0 replies; only message in thread
From: Peter Xu @ 2016-01-20  5:44 UTC (permalink / raw)
  To: Linux Kernel Mailing List, linux-rt-users; +Cc: Peter Xu

Hi,

Got a question about how we init MTRR for hot plugged processors.

I see that when init MTRR on new processors (online one processor,
possibly by hot-plugged), we need to stop all the active processors,
re-init MTRR on all the processors synchronously. Could anyone
explain why we need this sync-up for all the active processors
(please check mtrr_ap_init()) ?

I can understand that the OS software should make sure that every
processor's MTRR configurations are consistent, but why not we init
the new one only, just to make sure it is consistent with others
(since all the rest processors should be consistent in MTRR
configurations already)?

I am asking this since I found that this operation will force all
active processor to stop its work (the MTRR re-init is handled by
[migration/N] per-cpu kernel thread with FIFO 99 priority, which
will interrupt my RT application program), which brings very big
latency spikes on real-time CPUs.

I checked Intel manual volume 3 section 11.11.8, I think it's
following what the manual says. However I still cannot understand
the reason behind. Would appreciate if anyone knows this, and also
if anyone has suggestion on how I could avoid this spike on RT
systems.

Thanks in advance.
Peter

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-01-20  5:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-20  5:44 [Question] MTRR init on secondary processors Peter Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).