Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp3663108pxk; Mon, 7 Sep 2020 21:47:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxGuaVg+FawMXSPDHYVDCD9ia6OC80LvC9QFSCjo2E2JV3aGhMxAUKlUE5VKhWfuv1X9ocS X-Received: by 2002:a05:6402:1495:: with SMTP id e21mr24233937edv.146.1599540429346; Mon, 07 Sep 2020 21:47:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599540429; cv=none; d=google.com; s=arc-20160816; b=Qmg/aGNAIqUF6J54XldOJ9go2kMEKgd7Ur554bq91+18vNqSqApZFS3ZLIYa3tQw62 CYnjX39GYSGCW+jjMOVi9JKFnyAYrzIzBQCbZ83PYGpQFQL7XX5u+o9Htsd2RFZqN8TH LHixbs53v5ibgVhBF7Bjtd2T/sy8oOQZaLcHyTex/E/rXLoxF3FkTFTzLGlPFQq08tuv 0QWtEhQkOflT3eyKZvIpjBUMlu7wr48+rurdiz7s9huIMN07ZnGdI71hXrcqYtX1G1AW gD2+/+fVQW2b5LlAGNbOw0FN7yeNK5HiHQy5ZeLfPNz9tHMvbFU6kt9V7SUN0DQ85mZ4 3mDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=mZF+AajVFXP4gzQRqBOUmSsqn5o5rArjRoC3ko8kQZU=; b=e/GxkpQs2E+vFOXZBZsrAOYo4oDUHdAVXyVVwAUKvueALeceg/j8GD2pou6e9qXCi1 IqDs1MZsMXSfziZPp5Khgwe4GlPo7gXmX6YMTJ5z9+06LEHqJZcgx3ryBHacrq/8Nh+n LjSQT2DTBmZBNgOeOmkUNzs+nbzuXm5OJEQmRCRC4wODtyJj58gQuLj0zOuvOCeV4fgJ t/yZ6zWok/KlPr4jTK7DeiTZgV25eSKBRGAwlbT4m7PAFnSoIQKG3Np9hBxvKj9zpmck cXZa3bMgKJqP1gkjhNG4rafqnavAVV/Ms8CkXM3/kyFa7kqpGMys36kMLZi5va0G1Q5m IQMw== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id op27si11209177ejb.413.2020.09.07.21.46.46; Mon, 07 Sep 2020 21:47:09 -0700 (PDT) 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728629AbgIHEnH (ORCPT + 99 others); Tue, 8 Sep 2020 00:43:07 -0400 Received: from pegase1.c-s.fr ([93.17.236.30]:64482 "EHLO pegase1.c-s.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728576AbgIHEnD (ORCPT ); Tue, 8 Sep 2020 00:43:03 -0400 Received: from localhost (mailhub1-int [192.168.12.234]) by localhost (Postfix) with ESMTP id 4Blsw04dynz9v07M; Tue, 8 Sep 2020 06:42:56 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at c-s.fr Received: from pegase1.c-s.fr ([192.168.12.234]) by localhost (pegase1.c-s.fr [192.168.12.234]) (amavisd-new, port 10024) with ESMTP id 1zRgiYU2XgXP; Tue, 8 Sep 2020 06:42:56 +0200 (CEST) Received: from messagerie.si.c-s.fr (messagerie.si.c-s.fr [192.168.25.192]) by pegase1.c-s.fr (Postfix) with ESMTP id 4Blsw02Lphz9v07L; Tue, 8 Sep 2020 06:42:56 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by messagerie.si.c-s.fr (Postfix) with ESMTP id 0E1EE8B775; Tue, 8 Sep 2020 06:42:57 +0200 (CEST) X-Virus-Scanned: amavisd-new at c-s.fr Received: from messagerie.si.c-s.fr ([127.0.0.1]) by localhost (messagerie.si.c-s.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id IWq5rXD7F6WV; Tue, 8 Sep 2020 06:42:56 +0200 (CEST) Received: from [192.168.4.90] (unknown [192.168.4.90]) by messagerie.si.c-s.fr (Postfix) with ESMTP id D80618B768; Tue, 8 Sep 2020 06:42:54 +0200 (CEST) Subject: Re: [RFC PATCH v2 0/3] mm/gup: fix gup_fast with dynamic page table folding To: Gerald Schaefer , Jason Gunthorpe , John Hubbard Cc: Peter Zijlstra , Dave Hansen , linux-mm , Paul Mackerras , linux-sparc , Alexander Gordeev , Claudio Imbrenda , Will Deacon , linux-arch , linux-s390 , Vasily Gorbik , Richard Weinberger , linux-x86 , Russell King , Christian Borntraeger , Ingo Molnar , Catalin Marinas , Andrey Ryabinin , Heiko Carstens , Arnd Bergmann , Jeff Dike , linux-um , Borislav Petkov , Andy Lutomirski , Thomas Gleixner , linux-arm , linux-power , LKML , Andrew Morton , Linus Torvalds , Mike Rapoport References: <20200907180058.64880-1-gerald.schaefer@linux.ibm.com> From: Christophe Leroy Message-ID: <9f9acde7-c400-53b0-38ec-ad3e48de5371@csgroup.eu> Date: Tue, 8 Sep 2020 06:42:50 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <20200907180058.64880-1-gerald.schaefer@linux.ibm.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: fr Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Le 07/09/2020 à 20:00, Gerald Schaefer a écrit : > This is v2 of an RFC previously discussed here: > https://lore.kernel.org/lkml/20200828140314.8556-1-gerald.schaefer@linux.ibm.com/ > > Patch 1 is a fix for a regression in gup_fast on s390, after our conversion > to common gup_fast code. It will introduce special helper functions > pXd_addr_end_folded(), which have to be used in places where pagetable walk > is done w/o lock and with READ_ONCE, so currently only in gup_fast. > > Patch 2 is an attempt to make that more generic, i.e. change pXd_addr_end() > themselves by adding an extra pXd value parameter. That was suggested by > Jason during v1 discussion, because he is already thinking of some other > places where he might want to switch to the READ_ONCE logic for pagetable > walks. In general, that would be the cleanest / safest solution, but there > is some impact on other architectures and common code, hence the new and > greatly enlarged recipient list. > > Patch 3 is a "nice to have" add-on, which makes pXd_addr_end() inline > functions instead of #defines, so that we get some type checking for the > new pXd value parameter. > > Not sure about Fixes/stable tags for the generic solution. Only patch 1 > fixes a real bug on s390, and has Fixes/stable tags. Patches 2 + 3 might > still be nice to have in stable, to ease future backports, but I guess > "nice to have" does not really qualify for stable backports. If one day you have to backport a fix that requires patch 2 and/or 3, just mark it "depends-on:" and the patches will go in stable at the relevant time. Christophe