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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 60D9EC61DA4 for ; Tue, 7 Mar 2023 01:03:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EF1136B0071; Mon, 6 Mar 2023 20:03:32 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E79F9280002; Mon, 6 Mar 2023 20:03:32 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D4145280001; Mon, 6 Mar 2023 20:03:32 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id C14906B0071 for ; Mon, 6 Mar 2023 20:03:32 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 932791C6288 for ; Tue, 7 Mar 2023 01:03:32 +0000 (UTC) X-FDA: 80540304264.11.509E8F7 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf02.hostedemail.com (Postfix) with ESMTP id 8907780004 for ; Tue, 7 Mar 2023 01:03:30 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=eNyiQfNp; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf02.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1678151010; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=NI0AfExXKMh7a49g+DwlRMu0IoSbzcVjYg7rYfHlygc=; b=C+EtwFV67baYpYeSnwHxdMgjVi9IXv2nvstvvngt+s2VEH2dBRyNMoycU/oM+vkf1kudZG 9qoS9KSfBk9lCdZWvS2qhExMaT+5h7Tu4yY2mhLIs0EeFxzql3vovd4I8QRthzjdOWay1a kN0dweDlQ0NEzMZLwycYgm32i+xJm5U= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=eNyiQfNp; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf02.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1678151010; a=rsa-sha256; cv=none; b=3gLuBIhm1xJcA37yRItbxi2BhbCUcH9bKKZ1divuz7p98ne4aCi1UQbMjewgdv0WuAnNNj LO8mzcZCzIOvJpKWxMJIsKAkZ1OEbHK0w/6uRrwQQ5tPVyFK5tfjxLrb52elO9kgIIwIny LdNZVJwJcPkEpay0rOS0pQPfMIHnEF0= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678151009; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=NI0AfExXKMh7a49g+DwlRMu0IoSbzcVjYg7rYfHlygc=; b=eNyiQfNpZBkAw3lmef1rBkLCWZvFFqDXH++h46Y6Q8NT+6cvCMlt0e6c5Y8FBNRnCvmxL4 1sC5FexbSkZHdeiqRBrWz/y3iSrTkRm+MC/C5B5owvC9jlH3kWhOF/7QSpf7wOJFdu9Uvx th29px9MN11+gGvPCwf7CnfBTf1J+wE= Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-600-ybgJF9Z3McKliTVlhfeBnw-1; Mon, 06 Mar 2023 20:03:28 -0500 X-MC-Unique: ybgJF9Z3McKliTVlhfeBnw-1 Received: by mail-qv1-f72.google.com with SMTP id jy22-20020a0562142b5600b005710b856106so6665030qvb.0 for ; Mon, 06 Mar 2023 17:03:28 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678151008; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=NI0AfExXKMh7a49g+DwlRMu0IoSbzcVjYg7rYfHlygc=; b=yV7c73O91gQR0pGagZOf38omgqDNihjirUzbpeynVw/RPleYiaHszwOcvlafILiPV/ UeVVUyLkGUlAj+NfJMLy6aSnXaX13Ft0uDyWicE4cXbGY4in6Rp32hy33AnMrJyCCjPc Q1xVVFtAWXlTwx/5+mxxrVl95JsJXe2dOzs9VPvPqHdoFfpElTRlaZC4wAkKSxtQJRzS jmDS4hjmP5kGd4YP1LWHkfS4MXsxZjONK6DDSoSov1FIE5kt+1yoaYVcw9fxdjW05SCX crVx5AcWpnJ3YBuNGQBxe19NtCvpQZ9N9SoJas+myocoEeZkxb3umddKKtVDpaxoTTgN 4wWg== X-Gm-Message-State: AO0yUKUHwYm/2pNqNYTSyTg70sf4+koX/4JPwW7pZR7nU4k+SSaM7yKY RRURCLFUCl7lG5P5adj4Nv/h5aEtTi4V80pUmRLIwzIoc121hcMhqJTtC//sPoSnLPN9ghogm3E vkkjck7cEbGM= X-Received: by 2002:ac8:5fc3:0:b0:3bf:f7d0:9ba9 with SMTP id k3-20020ac85fc3000000b003bff7d09ba9mr23992937qta.5.1678151008060; Mon, 06 Mar 2023 17:03:28 -0800 (PST) X-Google-Smtp-Source: AK7set99I84w/Sr8J0eBicwEQ2kHrVuPgeQl4yek18dUhhAijl5ItKvc0oafFq106NiKNmjfPX03mw== X-Received: by 2002:ac8:5fc3:0:b0:3bf:f7d0:9ba9 with SMTP id k3-20020ac85fc3000000b003bff7d09ba9mr23992906qta.5.1678151007736; Mon, 06 Mar 2023 17:03:27 -0800 (PST) Received: from x1n (bras-base-aurron9127w-grc-56-70-30-145-63.dsl.bell.ca. [70.30.145.63]) by smtp.gmail.com with ESMTPSA id t64-20020ae9df43000000b007430d280879sm8701313qkf.35.2023.03.06.17.03.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Mar 2023 17:03:27 -0800 (PST) Date: Mon, 6 Mar 2023 20:03:25 -0500 From: Peter Xu To: Axel Rasmussen Cc: Alexander Viro , Andrew Morton , Hugh Dickins , Jan Kara , "Liam R. Howlett" , Matthew Wilcox , Mike Kravetz , Mike Rapoport , Muchun Song , Nadav Amit , Shuah Khan , James Houghton , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: Re: [PATCH v3 2/5] mm: userfaultfd: don't pass around both mm and vma Message-ID: References: <20230306225024.264858-1-axelrasmussen@google.com> <20230306225024.264858-3-axelrasmussen@google.com> MIME-Version: 1.0 In-Reply-To: <20230306225024.264858-3-axelrasmussen@google.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Queue-Id: 8907780004 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: sd5rpqcrpppzwi966nwk6orkgf1nxkms X-HE-Tag: 1678151010-954828 X-HE-Meta: U2FsdGVkX19HR9IU1qPCPJ8GG9Mh/Bqc49VhUBdJ1Jk1/vGtBQB9yIWHsMrZL4/lx0EJCt1rXtuyYrt0zigBBnh4+PQPuvl13k2Ajxr30hkOLsDor0ByHKJJ3LxjH5PxFJHgDXMRpYBIgihpcWo0qLIz5PuDOSpfDk4vx7jZzzSCexsXfLmgZjfZxFVW6v3eEvlJIXMeeXpH+VBr05kPTurTvO6uMJ1bFZ+eNvDQwrv4UGs+tW9T5VTsdxQ5Yhf/7jruOmatIYte/NqsONwG7/XlW67gLMYtqPowG5yjOCKO3uRnpasIWDSHFWNt4UKnKiAyaRJEb/Z+w7KlB2ap9p1fC80kiCOh9pb7zphw0WfnMEMsQDaaPK0elqmRAz/vuKhtbPPhlxSiFFLMlhh5iKXMKdU1sCIfmuyieyxEUAeIvI7luy+KrMqdiYHsUOhFKwc4nNcgmmfqjMI3Q1b9HFA7LhIdf6/TM6wM5grvjXpK12ntzBKsCISX8rEFjz/jxBj/w04mokpAmmrGrJWaPq9RY4lE30fCUK1IxM4hTaVgHGR1kh78vgeJ3PcXsWV/nywBr9nQswLaJvQBxteMKXCrPzoHjDYtXtENVDaEgka3hk/Ii/R8tjNI2p2QpvcwOZ0IteBjfJFBy66oy4hVDpDppTetHidEpAmD9FuE0pPz4hOqpW5H1DHS6wYzBoMAzqUnJRw3R1525TXZx8AnMd3ilSdH4Rq1FKyKPN6LRVqw2Q5FLozjspt9PfWx+Oew+o8PiVmXxRDq1OGEosuOTLxYNs8C6xu6O19BnkzwiuyHfoUOXzIQR3veHa8SyxIh/FRSC5kPPWlaoy3S7GwgW66werweWMI6+MPfoftJF+EwqgtskDSU3CB4nFxo+b7W6OOpoZwG2M0H5URi92ZtqMb1c/yZ9MBpYrypfl/0c0JcWS2ryX+S9mxPnwzx45wZI3E6rmx3s/6ZPJE3pIS zrBZTLOI 1RCd5PTSfLNsXjBhd1IOvbAaLiC7/Ef+j+QGx2VTCh2U537Pzp7h8YVnvgLUs5/Ay5ey6eNQ8QeOahRz2s3poOM1E+Jlcs4kbT8tScdi1ayXaq2rT1AeQxqZSWaXv0YBFVDIDBgnaUpoauv3r5QhMMRTBn57FYHMdbS+4WkEbXX9UHymLnWDsii2b5enuDMzE8kKeL9iauNKtfgDAULXnJ3epgZX8KxIQls9PHUIHX+0cVnnrkRljGYK4Kl6XDDSrVbZNvQ5AWI4YZ0V1a0KTg+4x0W+3/ve075dLY74bNvJVy1faYaz7WoEIB5gM7T19ZjgZzv5uG2+y28hxNYYf/HAoQVwp6shTaFJ4oA6WBWuLNsEncWmXwYsXgJSzMxD/kUoGBwDoMaeJ2pGgMur7u03F7JUuPFJJxouBi76Ql5lt90A= 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: On Mon, Mar 06, 2023 at 02:50:21PM -0800, Axel Rasmussen wrote: > Quite a few userfaultfd functions took both mm and vma pointers as > arguments. Since the mm is trivially accessible via vma->vm_mm, there's > no reason to pass both; it just needlessly extends the already long > argument list. > > Get rid of the mm pointer, where possible, to shorten the argument list. > > Signed-off-by: Axel Rasmussen Acked-by: Peter Xu One nit below: > @@ -6277,7 +6276,7 @@ int hugetlb_mfill_atomic_pte(struct mm_struct *dst_mm, > folio_in_pagecache = true; > } > > - ptl = huge_pte_lock(h, dst_mm, dst_pte); > + ptl = huge_pte_lock(h, dst_vma->vm_mm, dst_pte); > > ret = -EIO; > if (folio_test_hwpoison(folio)) > @@ -6319,9 +6318,9 @@ int hugetlb_mfill_atomic_pte(struct mm_struct *dst_mm, > if (wp_copy) > _dst_pte = huge_pte_mkuffd_wp(_dst_pte); > > - set_huge_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); > + set_huge_pte_at(dst_vma->vm_mm, dst_addr, dst_pte, _dst_pte); > > - hugetlb_count_add(pages_per_huge_page(h), dst_mm); > + hugetlb_count_add(pages_per_huge_page(h), dst_vma->vm_mm); When vm_mm referenced multiple times (say, >=3?), let's still cache it in a temp var? I'm not sure whether compiler is smart enough to already do that with a reg, even if so it may slightly improve readability too, imho, by avoiding the multiple but same indirection for the reader. Thanks, -- Peter Xu