Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3613655imu; Sun, 11 Nov 2018 19:27:36 -0800 (PST) X-Google-Smtp-Source: AJdET5cLRN+/YNHWydA1sRotzOsXo9nXHRkKLV8lwP8vDi9V6ZoWbBgbHs8tTolaR+1zTIxo05Cu X-Received: by 2002:aa7:8348:: with SMTP id z8-v6mr18332411pfm.81.1541993256235; Sun, 11 Nov 2018 19:27:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541993256; cv=none; d=google.com; s=arc-20160816; b=n9ql1ktpi/hLhhhU1ZH4Un7X1x1BMgyUK0+keqnQNcc+M6bxayzS+RBDIJYzOy7kGH 7fRxnT+tPjgW98KuzOrgSTdE3v1NzsLVV2VUibRpvIfcOfUqBmvoQH/+5oUJpZzCiPij czNGoS7NHzzVOLsNbph/m24gq7PIIQNH1fvP/BOYdfi6mxEY8GQK5wC0nfey8s8BLIdi T7kQ70kzkn/71sRdASPFmoAMz40PeAcISIaA953csPw/4+N96CIsrczDorcoQ4yOM8yG oCkZlVCZzILp0k1zh6brsvfCzOBRrn01koV5Pf5RCs536nVKiZPlUSC76ODlqDcu12Rp JtDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=BafMzbWoCdT9MzHsSkevAVZTEowKzTEEu0U4aUFaijQ=; b=dAfwg4ojYYZeQjbPyZ1qUD+F7nk7aQ8YHaVg9K3ExdGUVGCyT4gY11HPs87wugo5kR miiW0Fl64kL5rBiSrAbm3t5ngOAxVN0zT/9OU0mdrUPBNr3VR3KKOi8DlwDu/z1EV0wa bJK3g8RDCuZe55Tii91WgrWocJXRR/7l6nGz7+1eLx5XEeaE3H2mro/m+wNJMQQ5Jtk9 XeiaQyWyaitV0dXQVolHP6JCe4v9dV9LJeQtwwN+FnGVeAtzfz/TJ6Z0lmEVPwnFuaLs vr5m0PCkyZ2beLUgM2UR2abR/emoJJfEsfyk0uSuGZqiBiYT5AJassPTDRlrxNLWhNYR WEKA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@zx2c4.com header.s=mail header.b=tbZthC60; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zx2c4.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v3si15810813pgh.305.2018.11.11.19.27.20; Sun, 11 Nov 2018 19:27:36 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@zx2c4.com header.s=mail header.b=tbZthC60; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zx2c4.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730518AbeKLNSC (ORCPT + 99 others); Mon, 12 Nov 2018 08:18:02 -0500 Received: from frisell.zx2c4.com ([192.95.5.64]:51699 "EHLO frisell.zx2c4.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726270AbeKLNSC (ORCPT ); Mon, 12 Nov 2018 08:18:02 -0500 Received: by frisell.zx2c4.com (ZX2C4 Mail Server) with ESMTP id e8fdf320; Mon, 12 Nov 2018 03:21:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=zx2c4.com; h=mime-version :references:in-reply-to:from:date:message-id:subject:to:cc :content-type; s=mail; bh=jOjz5RLvhngllkJAWpmZjSocdwY=; b=tbZthC 60adBBcwtnyUXI0AuQbwmtWWnTuZwYEnEEDtxGJjnXM4FAa4KRj0Idu0pA5ItcBQ fY58Wc2pL61zjexH0NJA9g9MzD4yT4fInuRRK8Fq0oynAGwQab55wj4NHzoJS7w1 cQozgbjieIC7VOx+Ue9tY7kvN/4aLmsK1uusdFjcHMeY4M4vPiLG0CVM0/kInwBv Xh3UPy5+Fz0gIeWjlzH8S+Zvy+n9RQBkBhK7LUw6jS0Rh4QQDkGGhiQjZ3PZamkD ISlJpsHJBx/U/OTtzgFs4/PB6Q6b3n/fOnw1a8ZbkWCmG5XgYC1DrAaNbKQs00de b5+8xwQaIOls1TOA== Received: by frisell.zx2c4.com (ZX2C4 Mail Server) with ESMTPSA id e51cc922 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); Mon, 12 Nov 2018 03:21:46 +0000 (UTC) Received: by mail-ot1-f43.google.com with SMTP id w25so5992947otm.13; Sun, 11 Nov 2018 19:26:49 -0800 (PST) X-Gm-Message-State: AGRZ1gJKBdwMYfj7N22tah6nMQRFsP21Y0KeIXEV26aa0XYw4SStRRIq 8t0Jfk3oezXTcq7IcUv0V0SizHj5A59UX++cNBM= X-Received: by 2002:a9d:837:: with SMTP id 52mr10397985oty.143.1541993208829; Sun, 11 Nov 2018 19:26:48 -0800 (PST) MIME-Version: 1.0 References: <20181107194858.9380-1-bigeasy@linutronix.de> In-Reply-To: From: "Jason A. Donenfeld" Date: Sun, 11 Nov 2018 22:26:37 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v4] x86: load FPU registers on return to userland To: kernellwp@gmail.com Cc: Sebastian Siewior , LKML , X86 ML , Andrew Lutomirski , Paolo Bonzini , rkrcmar@redhat.com, KVM list , Rik van Riel , dave.hansen@linux.intel.com Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Nov 11, 2018 at 10:02 PM Wanpeng Li wrote: > On Thu, 8 Nov 2018 at 03:55, Sebastian Andrzej Siewior > wrote: > > > > This is a refurbished series originally started by by Rik van Riel. The > > goal is load the FPU registers on return to userland and not on every > > context switch. By this optimisation we can: > > - avoid loading the registers if the task stays in kernel and does > > not return to userland > > - make kernel_fpu_begin() cheaper: it only saves the registers on the > > first invocation. The second invocation does not need save them again. > > Do you have any performance data? In WireGuard, the savings in not having to save/restore/save/restore/save/restore the registers winds up being in the order of hundreds of megabits.