Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp4115838pxu; Wed, 9 Dec 2020 08:44:08 -0800 (PST) X-Google-Smtp-Source: ABdhPJxOdCcbcMf1NxuiXBETZQ34SXNXtd+XJC4Av68d/kwnC42snwsYmcPsKmFzblYeh3oCWEUd X-Received: by 2002:a17:906:718b:: with SMTP id h11mr2770089ejk.241.1607532248229; Wed, 09 Dec 2020 08:44:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607532248; cv=none; d=google.com; s=arc-20160816; b=l/N/+ds7/4kYdN0xhk2nX20zx6oeImWvehYAmfJm/TGTMQaOCnmOnrfih0K2LEhooz I6mr8xY90vAoGmBI1eFZvh8N5OvaFzN0RxrnCd44BNh3FRPQuX4tS1TyttYTTEHABFrq tBBXeVv4zwnuUfdI9yFEVW3BaZEvk4WZZAyjGXpNF+Bjk8fQpnGK3MO6B/e+aTeZ6wSS haTnxl7+E0qEVN6a08kRNTWlBXnON+pHpNt1al/aC1D/pl2uIf8v3LfyHGSu5l1h3zHu +SWDEdbSmWCw5HiP3K77zorWgiCSzAYUXGngHO+PuiUnxzagJKQz1kvwULnfhMnuXFTj ADLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=SIjr0GgYEbcbS+XQRAngDQRzNHChP5W8gjv1cyL6X8k=; b=jsl36G80J0JNWpDWcof1o9799lN2RBraaOgxhcjD3qVnmWSx1C++17URETYHi389WI G3TShKP5ScRek4wp44UTig5pTUopJF0QvBHgWSsc9rMdiPocrVSxA5H+VJFLCVo56kLQ 0jb1H9nwpGSmoYV3Jzf9MKSS0RHyj7Rr10ll7OsvjEe5Ezd5Dlktsi7rIFyeDRuyJNYk aWykgNuihTj2ShmBwIyJattOS1o16WLEOjNtdn0N4D3cqRdNw8Wj9p2IuNeTHmJAUGC7 7SNTFxh1gCf/9TeLw5WYt1/k81IkwrqH9QGur0yh/JFTao7oL+Sg9CYQMXgjpGw6XM9S uiDg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x18si1175867ejd.449.2020.12.09.08.43.44; Wed, 09 Dec 2020 08:44:08 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732052AbgLIQks (ORCPT + 99 others); Wed, 9 Dec 2020 11:40:48 -0500 Received: from mail.kernel.org ([198.145.29.99]:44194 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731879AbgLIQkg (ORCPT ); Wed, 9 Dec 2020 11:40:36 -0500 From: Will Deacon Authentication-Results: mail.kernel.org; dkim=permerror (bad message/signature format) To: linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, Will Deacon , Catalin Marinas , Jan Kara , Minchan Kim , Andrew Morton , "Kirill A . Shutemov" , Linus Torvalds , Vinayak Menon , kernel-team@android.com Subject: [PATCH 0/2] Create 'old' ptes for faultaround mappings on arm64 with hardware access flag Date: Wed, 9 Dec 2020 16:39:48 +0000 Message-Id: <20201209163950.8494-1-will@kernel.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi folks, This series allows architectures to opt-in at runtime for faultaround mappings to be created as 'old' instead of 'young'. Although there have been previous attempts at this, they failed either because the decision was deferred to userspace [1] or because it was done unconditionally and shown to regress benchmarks for particular architectures [2]. Since this patch has demonstrated considerable benefits for arm64-based Android devices with hardware access flag capabilities, patch two enables this functionality there. Cheers, Will [1] https://www.spinics.net/lists/linux-mm/msg143831.html [2] 315d09bf30c2 ("Revert "mm: make faultaround produce old ptes"") Cc: Catalin Marinas Cc: Jan Kara Cc: Minchan Kim Cc: Andrew Morton Cc: Kirill A. Shutemov Cc: Linus Torvalds Cc: Vinayak Menon Cc: Andrew Morton Cc: --->8 Will Deacon (2): mm: Allow architectures to request 'old' entries when prefaulting arm64: mm: Implement arch_wants_old_faultaround_pte() arch/arm64/include/asm/cpufeature.h | 12 +++++++++++ arch/arm64/include/asm/pgtable.h | 8 +++++++- include/linux/mm.h | 5 ++++- mm/memory.c | 31 ++++++++++++++++++++++++++--- 4 files changed, 51 insertions(+), 5 deletions(-) -- 2.29.2.576.ga3fc446d84-goog