diff options
Diffstat (limited to 'arch/x86/kernel/process.c')
| -rw-r--r-- | arch/x86/kernel/process.c | 18 | 
1 files changed, 2 insertions, 16 deletions
| diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c index f362ce0d5ac0..fe67dbd76e51 100644 --- a/arch/x86/kernel/process.c +++ b/arch/x86/kernel/process.c @@ -322,20 +322,6 @@ void arch_setup_new_exec(void)  }  #ifdef CONFIG_X86_IOPL_IOPERM -static inline void tss_invalidate_io_bitmap(struct tss_struct *tss) -{ -	/* -	 * Invalidate the I/O bitmap by moving io_bitmap_base outside the -	 * TSS limit so any subsequent I/O access from user space will -	 * trigger a #GP. -	 * -	 * This is correct even when VMEXIT rewrites the TSS limit -	 * to 0x67 as the only requirement is that the base points -	 * outside the limit. -	 */ -	tss->x86_tss.io_bitmap_base = IO_BITMAP_OFFSET_INVALID; -} -  static inline void switch_to_bitmap(unsigned long tifp)  {  	/* @@ -346,7 +332,7 @@ static inline void switch_to_bitmap(unsigned long tifp)  	 * user mode.  	 */  	if (tifp & _TIF_IO_BITMAP) -		tss_invalidate_io_bitmap(this_cpu_ptr(&cpu_tss_rw)); +		tss_invalidate_io_bitmap();  }  static void tss_copy_io_bitmap(struct tss_struct *tss, struct io_bitmap *iobm) @@ -380,7 +366,7 @@ void native_tss_update_io_bitmap(void)  	u16 *base = &tss->x86_tss.io_bitmap_base;  	if (!test_thread_flag(TIF_IO_BITMAP)) { -		tss_invalidate_io_bitmap(tss); +		native_tss_invalidate_io_bitmap();  		return;  	} |