|
@@ -600,6 +600,16 @@ struct task_struct *__switch_to(struct task_struct *prev,
|
|
|
struct ppc64_tlb_batch *batch;
|
|
|
#endif
|
|
|
|
|
|
+ /* Back up the TAR across context switches.
|
|
|
+ * Note that the TAR is not available for use in the kernel. (To
|
|
|
+ * provide this, the TAR should be backed up/restored on exception
|
|
|
+ * entry/exit instead, and be in pt_regs. FIXME, this should be in
|
|
|
+ * pt_regs anyway (for debug).)
|
|
|
+ * Save the TAR here before we do treclaim/trecheckpoint as these
|
|
|
+ * will change the TAR.
|
|
|
+ */
|
|
|
+ save_tar(&prev->thread);
|
|
|
+
|
|
|
__switch_to_tm(prev);
|
|
|
|
|
|
#ifdef CONFIG_SMP
|