On Fri, Jul 04, 2014 at 09:14:57AM +0900, Yasuaki Ishimatsu wrote:
If so, why following maps are cleared by CPU offline?
- cpu_sigling_map
- cpu_core_map
I'll let you figure that out on your own by doing some quality code
staring. Hint: search for usages outside of the CPU hotplug path.
In any case, let me try to explain it to you one more time: if the core
numbers are static and don't change across physical hotplug, the cores
which share last level cache also remain the same. This is a static
property which doesn't simply change.
For example, if cores 6-11 and 34-41 have been sharing the last level
cache, then if the node containing them gets unplugged and replugged
back again - then the same cores share that exact same cache and nothing
has changed.
Except the core numbers, as you've shown. Which would be not only a
problem for the llc_shared_mask but also a big annoyance for sysadmins
and users having to realize that the topology enumeration has changed
and trying to make sense of what node went where and why isn't it the
same as when the machine booted.
So what I'm trying to say is, we should keep the core numbering stable
across hotplug to avoid unnecessary confusion; the llc_shared_mask is
just a small issue which results from not doing that.