> > some software needs fully functional per-thread %gs base address, > > hence the diff. limited testing shows no regressions. > > INTR_RESTORE_SELECTORS changes include: > > - %r11 is used to store curpcb instead of rdx that is used for > > wrmsr and gets trashed (it's safe to use %r11 because it's > > restored after INTR_RESTORE_SELECTORS gets called); > > > > - MSR_KERNELGSBASE needs to be updated instead of MSR_GSBASE > > so that we don't lose kernel gs.base stored in MSR_GSBASE > > and swapped by the swapgs. > > > > any objections? corrections?
Ugh, I meant to ask, which software needs this?