From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753937AbcD0SJd (ORCPT ); Wed, 27 Apr 2016 14:09:33 -0400 Received: from mail.skyhub.de ([78.46.96.112]:38238 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753278AbcD0SJb (ORCPT ); Wed, 27 Apr 2016 14:09:31 -0400 Date: Wed, 27 Apr 2016 20:09:24 +0200 From: Borislav Petkov To: Andy Lutomirski Cc: x86@kernel.org, linux-kernel@vger.kernel.org, Peter Zijlstra Subject: Re: [PATCH v2 0/5] x86 switch_mm uninlining and IRQ improvements Message-ID: <20160427180924.GC27488@pd.tnic> References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Apr 26, 2016 at 09:39:04AM -0700, Andy Lutomirski wrote: > Hi all- > > I've been playing with context switching lately, and I'm going to start > sending out some of the patches that should be mostly self-contained and > ready for -tip. > > Here's a little batch to start improving switch_mm. It uninlines it > and makes it run with IRQs off. (AFAICT everyone who's modified it > thought it ran with IRQs off, but that's not always the case. I > don't know of any bugs that this fixes, but it'll be needed for PCID > to avoid introducing really nasty races.) > > This may also help a bit with FSGSBASE -- not sure yet. It certainly > won't hurt. > > It contains a trivial off-topic ARM patch to avoid breaking the build. > > Andy Lutomirski (5): > arm: Include linux/preempt.h from asm/mmu_context.h > sched: Add switch_mm_irqs_off and use it in the scheduler > x86/mm: Build arch/x86/mm/tlb.c even on !SMP > x86/mm: Uninline switch_mm > x86/mm: Turn off IRQs in switch_mm > > arch/arm/include/asm/mmu_context.h | 1 + > arch/x86/include/asm/mmu_context.h | 101 ++------------------------------ > arch/x86/mm/Makefile | 3 +- > arch/x86/mm/tlb.c | 116 +++++++++++++++++++++++++++++++++++++ > include/linux/mmu_context.h | 7 +++ > kernel/sched/core.c | 6 +- > 6 files changed, 133 insertions(+), 101 deletions(-) Reviewed-by: Borislav Petkov There was a concern that maybe disabling IRQs in exec_mmap->activate_mm()->switch_mm() would be a little bit of a slowdown but that's not a hot path anyway. -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply.