diff options
author | Fenghua Yu <fenghua.yu@intel.com> | 2016-11-18 15:18:04 -0800 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2016-11-28 11:07:50 +0100 |
commit | 0efc89be9471b152599d2db7eb47de8e0d71c59f (patch) | |
tree | e655063054738ce96614b8ae2154a1ddbb7be368 /mm/workingset.c | |
parent | 2659f46da8307871989f475accdcdfc4807e9e6c (diff) | |
download | talos-obmc-linux-0efc89be9471b152599d2db7eb47de8e0d71c59f.tar.gz talos-obmc-linux-0efc89be9471b152599d2db7eb47de8e0d71c59f.zip |
x86/intel_rdt: Update task closid immediately on CPU in rmdir and unmount
When removing a sub directory/rdtgroup by rmdir or umount, closid in a
task in the sub directory is set to default rdtgroup's closid which is 0.
If the task is running on a CPU, the PQR_ASSOC MSR is only updated
when the task runs through a context switch. Up to the context switch,
the task runs with the wrong closid.
Make the change immediately effective by invoking a smp function call on
all CPUs which are running moved task. If one of the affected tasks was
moved or scheduled out before the function call is executed on the CPU the
only damage is the extra interruption of the CPU.
[ tglx: Reworked it to avoid blindly interrupting all CPUs and extra loops ]
Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
Cc: "Ravi V Shankar" <ravi.v.shankar@intel.com>
Cc: "Tony Luck" <tony.luck@intel.com>
Cc: "Sai Prakhya" <sai.praneeth.prakhya@intel.com>
Cc: "Vikas Shivappa" <vikas.shivappa@linux.intel.com>
Cc: "H. Peter Anvin" <h.peter.anvin@intel.com>
Link: http://lkml.kernel.org/r/1479511084-59727-2-git-send-email-fenghua.yu@intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'mm/workingset.c')
0 files changed, 0 insertions, 0 deletions