On Tue, 4 Dec 2018, Greg Kroah-Hartman wrote: > --- a/arch/x86/kernel/process_32.c > +++ b/arch/x86/kernel/process_32.c > @@ -234,7 +234,6 @@ __switch_to(struct task_struct *prev_p, > struct fpu *prev_fpu = &prev->fpu; > struct fpu *next_fpu = &next->fpu; > int cpu = smp_processor_id(); > - struct tss_struct *tss = &per_cpu(cpu_tss_rw, cpu); > > /* never put a printk in __switch_to... printk() calls wake_up*() indirectly */ > > @@ -266,12 +265,7 @@ __switch_to(struct task_struct *prev_p, > if (get_kernel_rpl() && unlikely(prev->iopl != next->iopl)) > set_iopl_mask(next->iopl); > > - /* > - * Now maybe handle debug registers and/or IO bitmaps > - */ > - if (unlikely(task_thread_info(prev_p)->flags & _TIF_WORK_CTXSW_PREV || > - task_thread_info(next_p)->flags & _TIF_WORK_CTXSW_NEXT)) > - __switch_to_xtra(prev_p, next_p, tss); > + switch_to_extra(prev_p, next_p); This is missing the hunk below. Thanks, tglx 8<------------------ diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c index 67cecc9a2b6f..c2df91eab573 100644 --- a/arch/x86/kernel/process_32.c +++ b/arch/x86/kernel/process_32.c @@ -59,6 +59,8 @@ #include <asm/intel_rdt_sched.h> #include <asm/proto.h> +#include "process.h" + void __show_regs(struct pt_regs *regs, int all) { unsigned long cr0 = 0L, cr2 = 0L, cr3 = 0L, cr4 = 0L;