linux_dsm_epyc7002/arch/x86/kernel/cpu
Fenghua Yu 0efc89be94 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>
2016-11-28 11:07:50 +01:00
..
mcheck x86/mce/AMD: Extract the error address on SMCA systems 2016-09-13 15:23:13 +02:00
microcode x86/microcode/AMD: Fix more fallout from CONFIG_RANDOMIZE_MEMORY=y 2016-10-28 10:29:59 +02:00
mtrr x86: Apply more __ro_after_init and const 2016-08-10 14:55:05 +02:00
.gitignore
amd.c x86/AMD: Apply erratum 665 on machines without a BIOS fix 2016-09-02 20:42:28 +02:00
bugs_64.c
bugs.c
centaur.c Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 09:32:27 -07:00
common.c Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-10-03 16:13:28 -07:00
cpu.h
cyrix.c x86/cpufeature: Replace cpu_has_fpu with boot_cpu_has() usage 2016-04-13 11:37:40 +02:00
hypervisor.c virt, sched: Add generic vCPU pinning support 2016-09-05 13:52:38 +02:00
intel_cacheinfo.c x86/intel_cacheinfo: Enable cache id in cache info 2016-10-26 23:12:37 +02:00
intel_rdt_rdtgroup.c x86/intel_rdt: Update task closid immediately on CPU in rmdir and unmount 2016-11-28 11:07:50 +01:00
intel_rdt_schemata.c x86/intel_rdt: Add schemata file 2016-10-30 19:10:16 -06:00
intel_rdt.c x86/intel_rdt: Add scheduler hook 2016-10-30 19:10:16 -06:00
intel.c Merge branch 'x86-headers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-08-01 14:23:42 -04:00
Makefile x86/intel_rdt: Add schemata file 2016-10-30 19:10:16 -06:00
match.c x86/kernel: Audit and remove any unnecessary uses of module.h 2016-07-14 15:06:41 +02:00
mkcapflags.sh
mshyperv.c x86/kernel: Audit and remove any unnecessary uses of module.h 2016-07-14 15:06:41 +02:00
perfctr-watchdog.c x86/kernel: Audit and remove any unnecessary uses of module.h 2016-07-14 15:06:41 +02:00
powerflags.c x86/cpu: Add advanced power management bits 2016-03-29 11:12:11 +02:00
proc.c
rdrand.c x86, asm: Use CC_SET()/CC_OUT() and static_cpu_has() in archrandom.h 2016-06-08 12:41:20 -07:00
scattered.c Merge branch 'x86/cpufeature' into x86/cache 2016-11-16 14:19:34 +01:00
topology.c
transmeta.c Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 09:32:27 -07:00
umc.c
vmware.c x86/vmware: Skip timer_irq_works() check on VMware 2016-10-19 17:36:33 +02:00