>What's "shared percpu data" ? It sounds to me like a contradiction in >terms. Isn't percpu data supposed to only be accessed by the CPU which >owns it to prevent cache line bouncing? In which case, what's the point >of sharing that data with other CPUs? Surely "shared percpu data" is >just the same as normal data?
Like said in the patch description: "per cpu data section contains two types of data. One set which is exclusively accessed by the local cpu and the other set which is per cpu, but also shared by remote cpus." The patches separate shared and aligned per cpu data from others to eliminate cache pouncing between remote and local access. The patches do not separate shared but non-aligned percpu data, e.g. cpu_idle_state, flush_state in x86-64. We can do that later if needed. I think the shared percpu data are "mainly" accessed by local cpu. We need to concentrate on their local cpu access i.e. define in percpu. If we treat them as "normal" data, we may lose percpu benefits e.g. numa allocation. Thanks. -Fenghua - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/