From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EF5A0C761A8 for ; Wed, 24 Jul 2019 01:26:13 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 80DE02253D for ; Wed, 24 Jul 2019 01:26:13 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VecBxXs5" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 80DE02253D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id BBB626B0003; Tue, 23 Jul 2019 21:26:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B6BDC6B0005; Tue, 23 Jul 2019 21:26:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A5C3D8E0002; Tue, 23 Jul 2019 21:26:12 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from mail-pl1-f198.google.com (mail-pl1-f198.google.com [209.85.214.198]) by kanga.kvack.org (Postfix) with ESMTP id 70B9B6B0003 for ; Tue, 23 Jul 2019 21:26:12 -0400 (EDT) Received: by mail-pl1-f198.google.com with SMTP id u10so23080757plq.21 for ; Tue, 23 Jul 2019 18:26:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:mime-version:content-transfer-encoding; bh=ZQ3b3+gTPmIEd6M8rc0OL/oIvyoPA2pZ++cTTSt4GKc=; b=OrRt8s1HiotWXBdqCSiCiyNibQLsvBd0miCVcUYlsrvRaVcYPccXzYZDY5dgDp6tGV gWhhonrGopUbkqUyZBDX1RrthxXDWcovbzc1txQ3cVfHeWRwjfRyQJEIrRZaf05Byfku EQRBixbTlFZz8HHYbXW64c4m/cxL1JLcV8+CZWf0rjhaSE478GLLuRVAalgU+MGThJ24 O/umGfItwb4TmSzW5RGXeccDPSbAhmLEpPeHLk/+kn0CtCN7EssG1DYLPku9xWlOZ+W2 fTis8xCZSbrLoCVDcrFNfBLxHDUKyGiibv5cNvV6JBo2yKy6Twj5pBssrldb/hrucPDj PVZQ== X-Gm-Message-State: APjAAAXFB6X6f2Y7S8W4sG+Xi74aelJO6rLdEKDar9AJ57ld3yNwoBIn zxoyFMe7u3N1z8aWsJYvIRMRI+/4zdRuQ2NTPjyTkAOCk9g6jvLrifcXWxIz3HFRk0xHjIuectQ D2JHjn8qDXR3rhNlrTAssP9hqJzBu5B42wsPUoF16MoKZ9rKTDM+bre9JmnXhhCs3yg== X-Received: by 2002:a65:49cc:: with SMTP id t12mr73861642pgs.83.1563931571735; Tue, 23 Jul 2019 18:26:11 -0700 (PDT) X-Received: by 2002:a65:49cc:: with SMTP id t12mr73861576pgs.83.1563931570461; Tue, 23 Jul 2019 18:26:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1563931570; cv=none; d=google.com; s=arc-20160816; b=c0nQwd+L/SOOBy2Dv1O43V8kpx5LRAC6WXWlbndHPOWWiL5utxh8Alr3jocH4d5GPx x8jgEvZIyp4GYoDMU5aUwVko6voMO32kp9SLPAs34NhqMMXy2UV4c8qiaXyz0wvsIa1x Abi0NDRbjvJKm6QLWfgw6HnSvMNZJz0NMnlnpsdiG6qdpkqkM1RZz0c+V687/6bBu7l2 406TPDhQJ3/8sm2UrvB2+VLivCC8LPl+20/AsqVhy/gErm8Rz6r8s4IyATZpC4Plxsa3 DYmCAq1hothyQ4hUU6m118b1RSVwttc/cFbnuHm4VyIr7A9WkDlGB3jxjQYahHCujPBR M3eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:dkim-signature; bh=ZQ3b3+gTPmIEd6M8rc0OL/oIvyoPA2pZ++cTTSt4GKc=; b=RMHqFbMt1w1tzaBImO32gLcQjRvkmDC+WwYQOEp2mUaDmmnKNucHwbGVKiG9O15lRE IjESuZVoab1CwzB+AdwuIhTrHMdBF7Jk9osmLI7OLvWUDjpQw+HxZN98gXEbekue8iAA tmej/4zHvyFuSEuZXZ9828et19G8jiYQDufrHCRVyeXAGAnRXFXnragBmo8zAwCLgUoT Q0WLnzd+s2IxeSin5La8wCA25lEJoNt4yCJaErNyTCKpRiHJtDi2sAVLa6pnL6oTMcnv pwOTTBeWaKzU+/K3GUK1no7Nm5DwMlUkKe+HOJ3L2XMKW/20TC6rqquBCRiTk+JSN2eY qyKw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=VecBxXs5; spf=pass (google.com: domain of john.hubbard@gmail.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=john.hubbard@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id q62sor53556871pjb.10.2019.07.23.18.26.10 for (Google Transport Security); Tue, 23 Jul 2019 18:26:10 -0700 (PDT) Received-SPF: pass (google.com: domain of john.hubbard@gmail.com designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=VecBxXs5; spf=pass (google.com: domain of john.hubbard@gmail.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=john.hubbard@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ZQ3b3+gTPmIEd6M8rc0OL/oIvyoPA2pZ++cTTSt4GKc=; b=VecBxXs5rJxIUXj5tAX6w+Hu36MM21fpWyIYdvzDbaV5EtbHPF+1+bu2YHIo2FoU+h qgdi6MriW4QsnS2XTxhZ3CT9hHBmc1EVrlmoNyXHkWprvBI+Yn65R2PNVIuyQj7C+uon nfiSugQzYYHYckLsUa6rRl7irNjE5w2jdXZw55VW7ABnrd4ZUv6TxGXUQO6u5cvjdexn tPG75hjNwSOtjk7bSxDRlH3uvppfjJjUfzoCSGVP1Fe1uh8JE829or5noA5IrKenAWjY MKbFlG+EhvoMwVq1OJV+07GqhN9qs3wTDTL/YhnOg1Or6Ml8smZa2ujck3hWINs1JfYu 58Lw== X-Google-Smtp-Source: APXvYqzuP5FE7dHH/rrJY8+GDem6uPH4CkCkgfNEStXt8Z11+GRlVjtJCHbhttMVX4qqkHRdu6Qg0Q== X-Received: by 2002:a17:90a:bc42:: with SMTP id t2mr84709587pjv.121.1563931570150; Tue, 23 Jul 2019 18:26:10 -0700 (PDT) Received: from blueforge.nvidia.com (searspoint.nvidia.com. [216.228.112.21]) by smtp.gmail.com with ESMTPSA id k36sm45950119pgl.42.2019.07.23.18.26.08 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Tue, 23 Jul 2019 18:26:09 -0700 (PDT) From: john.hubbard@gmail.com X-Google-Original-From: jhubbard@nvidia.com To: Andrew Morton Cc: Alexander Viro , =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , Boaz Harrosh , Christoph Hellwig , Daniel Vetter , Dan Williams , Dave Chinner , David Airlie , "David S . Miller" , Ilya Dryomov , Jan Kara , Jason Gunthorpe , Jens Axboe , =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , Johannes Thumshirn , Magnus Karlsson , Matthew Wilcox , Miklos Szeredi , Ming Lei , Sage Weil , Santosh Shilimkar , Yan Zheng , netdev@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-mm@kvack.org, linux-rdma@vger.kernel.org, bpf@vger.kernel.org, LKML , John Hubbard Subject: [PATCH v2 0/3] mm/gup: add make_dirty arg to put_user_pages_dirty_lock() Date: Tue, 23 Jul 2019 18:26:03 -0700 Message-Id: <20190724012606.25844-1-jhubbard@nvidia.com> X-Mailer: git-send-email 2.22.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-NVConfidentiality: public Content-Transfer-Encoding: 8bit X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: John Hubbard Changes since v1: * Instead of providing __put_user_pages(), add an argument to put_user_pages_dirty_lock(), and delete put_user_pages_dirty(). This is based on the following points: 1. Lots of call sites become simpler if a bool is passed into put_user_page*(), instead of making the call site choose which put_user_page*() variant to call. 2. Christoph Hellwig's observation that set_page_dirty_lock() is usually correct, and set_page_dirty() is usually a bug, or at least questionable, within a put_user_page*() calling chain. * Added the Infiniband driver back to the patch series, because it is a caller of put_user_pages_dirty_lock(). Unchanged parts from the v1 cover letter (except for the diffstat): Notes about the remaining patches to come: There are about 50+ patches in my tree [2], and I'll be sending out the remaining ones in a few more groups: * The block/bio related changes (Jerome mostly wrote those, but I've had to move stuff around extensively, and add a little code) * mm/ changes * other subsystem patches * an RFC that shows the current state of the tracking patch set. That can only be applied after all call sites are converted, but it's good to get an early look at it. This is part a tree-wide conversion, as described in commit fc1d8e7cca2d ("mm: introduce put_user_page*(), placeholder versions"). John Hubbard (3): mm/gup: add make_dirty arg to put_user_pages_dirty_lock() drivers/gpu/drm/via: convert put_page() to put_user_page*() net/xdp: convert put_page() to put_user_page*() drivers/gpu/drm/via/via_dmablit.c | 10 +- drivers/infiniband/core/umem.c | 5 +- drivers/infiniband/hw/hfi1/user_pages.c | 5 +- drivers/infiniband/hw/qib/qib_user_pages.c | 5 +- drivers/infiniband/hw/usnic/usnic_uiom.c | 5 +- drivers/infiniband/sw/siw/siw_mem.c | 8 +- include/linux/mm.h | 5 +- mm/gup.c | 116 +++++++++------------ net/xdp/xdp_umem.c | 9 +- 9 files changed, 62 insertions(+), 106 deletions(-) -- 2.22.0