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 7BCB7C52D6F for ; Wed, 21 Aug 2024 09:51:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CEF846B00D0; Wed, 21 Aug 2024 05:51:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CA02F6B00D4; Wed, 21 Aug 2024 05:51:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B16EA6B00D7; Wed, 21 Aug 2024 05:51:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 8DA6D6B00D0 for ; Wed, 21 Aug 2024 05:51:35 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id AD8081A09F7 for ; Wed, 21 Aug 2024 09:51:34 +0000 (UTC) X-FDA: 82475785308.08.79AAE90 Received: from mail-pg1-f182.google.com (mail-pg1-f182.google.com [209.85.215.182]) by imf19.hostedemail.com (Postfix) with ESMTP id DFCE81A0009 for ; Wed, 21 Aug 2024 09:51:31 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Nj3Qmh4p; spf=pass (imf19.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.215.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1724233814; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=QrfsoI7+/y7gPIc6zH2vT6eGjRus/vFY8lyFc42bTUs=; b=l7Iw/+GRpjS9Ix+6jWi2s4RBB++Sl7XcdaocvJxpu9/zum1sO04K+XZY8JTXP5NcrEiT3U Rp0Yq9ozj7gPKhvxhF+fegj1GOgpLXpjkty+p5fmeYJ4PA14q4v5vszo+8CNxaGjSBKqG2 tFM/9l2IIilaXlDnmxQXNL8xzaD8okI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1724233814; a=rsa-sha256; cv=none; b=rQGa0ms37Ik8HGHf8ge4DnRHcvIXWLhbU3iOqW5EX/9SsuSOlBI2O5WN1wcpFkQf6FZY1L D2ugrIFGk5ubJcVqTklZPAs6fEH/Fwmjhja1cWQw2m5vy3tn9jtMo532RXmEXWhBiJO0oR YcOtjbfI5eeP4WP9gGuIDmWp74Q9ss4= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Nj3Qmh4p; spf=pass (imf19.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.215.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com Received: by mail-pg1-f182.google.com with SMTP id 41be03b00d2f7-7cd830e0711so535326a12.0 for ; Wed, 21 Aug 2024 02:51:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1724233890; x=1724838690; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=QrfsoI7+/y7gPIc6zH2vT6eGjRus/vFY8lyFc42bTUs=; b=Nj3Qmh4pAaIeKztNhCR6mhupZ4L7EClYDXAU7SlAbuvqylbWxQBbCx+K+nlAjXN/Ri IjDs9SYag9weHDv7mSyEbgF/SD/es6jrGxoIeHzXazC4PCyEtt/2I2tKQ/IIGzltQ0xm /lpFIMT1VCwNwmw7BBS7m3/Czgd0M4Qt6MGL7f5+1pNWnU2cL19mWLI6FL/kGS/+4wCx 6FohCo55JbnK6yRH+wIM0sNk8CyUBgVrdMIjjjmTfl/+9WDDXXLebFl++RAp6SzjqQ/5 LY44gAP6/lgNMvYoS0CKNxo54qsxtJjIhurtogSqzuAD2HYkZF6BZNSu3AkYhjTbfsMM 0auQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724233890; x=1724838690; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=QrfsoI7+/y7gPIc6zH2vT6eGjRus/vFY8lyFc42bTUs=; b=uZ6MZZSPMaMHBhN/Cn6HdKyKtQhrSHKgQ6uinwlWOVs1lNc9ILnALR0zWFlkJOrlDt A1ZSDSkagnvE1LR1KN+SJkHV5M9iXcfOKGPYUeEyah93LYW2DIYfcGnSqDTXeGDUKtIT M2MYo1Zpi9CW7EvqOgodtthhMKPyzecqOIqvdYyUooKaMFR5/HORabpUgkuO+X2E6RC7 jq9UjylsMkYLh3NR1cTzxIm8XZG9LfbcLy6HrsE15zZD+K0MwIxVmwxwoi50UBjNn4Uj Wmr00NGGmAE+IMelDXsZrf3hbb6oIsKaJnbDQ5WE9lSA9SBilJGctlcPIW0S5pLkvpBi pvIg== X-Forwarded-Encrypted: i=1; AJvYcCX0S/ru2ytG8pE2sTfM2xrGyT/qu1nTQz75p1OKoNkk+Kyt+SYkrp887cqtZe8BZuz8ZDndswH4OA==@kvack.org X-Gm-Message-State: AOJu0YxmZDLGPVHqxJxhmoBtS89QT6dhxu4B0qSczBeXVtuXBuAI+Za2 qsR5ID8qqbhm1eI6ohFf8+WGsKgBZ2p4CWXVbsSFG9/BJ4sgTOND09EzWd5SUY0= X-Google-Smtp-Source: AGHT+IH39FxZGyvulFfIBDs9fMR7pRrcFkJNeekEukWGwpJYqyx+HQvEFVfN+uyRXPCwbuMHV6p+iw== X-Received: by 2002:a17:90a:ca04:b0:2cb:56bd:5d7 with SMTP id 98e67ed59e1d1-2d5e995be3emr3063558a91.5.1724233890327; Wed, 21 Aug 2024 02:51:30 -0700 (PDT) Received: from [10.84.144.49] ([203.208.167.148]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2d5ebbb0b27sm1297201a91.45.2024.08.21.02.51.25 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Aug 2024 02:51:29 -0700 (PDT) Message-ID: Date: Wed, 21 Aug 2024 17:51:21 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 06/14] mm: handle_pte_fault() use pte_offset_map_maywrite_nolock() Content-Language: en-US To: David Hildenbrand Cc: LEROY Christophe , "hughd@google.com" , "willy@infradead.org" , "muchun.song@linux.dev" , "vbabka@kernel.org" , "akpm@linux-foundation.org" , "rppt@kernel.org" , "vishal.moola@gmail.com" , "peterx@redhat.com" , "ryan.roberts@arm.com" , "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" , "linux-arm-kernel@lists.infradead.org" , "linuxppc-dev@lists.ozlabs.org" References: <239432a0bc56464e58a6baf3622fdc72526c8d57.1724226076.git.zhengqi.arch@bytedance.com> <6a586524-5116-4eaf-b4f3-c1aea290d7c1@cs-soprasteria.com> <4b867535-8481-4fa1-bed1-ad25a76682f0@redhat.com> From: Qi Zheng In-Reply-To: <4b867535-8481-4fa1-bed1-ad25a76682f0@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DFCE81A0009 X-Stat-Signature: zgkn3ddmd497wfnrg4trtgqo3ukdqest X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1724233891-121632 X-HE-Meta: U2FsdGVkX1+pNGUSPdpyZDwORcMCLpSkATcM5KtYKLdeF8PU1uwpcs7yb6NzNAcG6T8xHXHWGmvfDhMKj8mlLeVqLCjivLpfiRU2l1uoB/t/z0CCETbRjAFsYo1098haj0UFFOTT5sB8k8J6PfLL1KzxcabsrmjoYrDuoJA5I5tv+aa/Yg7UzgN4o0nG3FepPicaVPkTgH5DnOP4mC2Go1jLUJfA/Q/cTb9P2r79TOOdtFL0BSBTIrGSQpeVupK70aKSAdmqp7fD9MfBqljmRXbDGkN1/OEBeuYdOGRQsEXMYqvksK0UVo9D29ItdhK2uUoTM9QtKimrQgeBKt+1udEJDpI4QwSrdOhsG0i8CLZvBDpbh6X8PVYyqWnvZFBxyemp58nkjApcN4oSDnCmPXxP/35TcI25pHHnWy28frX4mAZ+ozfnpFLDyPAvnIAAb6+6NlWg7INhVgkqrPbD/vuGyKoc3SfA7A+y7KJ62l4K0GI0zjNNA0uB5+/L8KOKnsKX1N1ewpyOHCCOWWMFHEFb7Flm47oQ/Bd1mbHgJpx24McN0NVbUxQONteqYROYlqnAEDC7gJmFYdly3Nh2812nFMmHB7eYn1HRtQefiAFmg5ducw6dbXi5Fur/9Ww+d/1KkBBDl/ccLJRSVCIf0bIO85EITPN/ep5hSARXrmnamMi3g91cJ+EO6CapAMvW+EGT+O7lLYlqb4Wj5L/LX3CWwvzX6rBCapLeyWk2SVLavzsBBj0Y+Y0vt4QeT1Bh9f+jYVF7jAgpe6clV0JmhGDDERxmtknEhBTA9VzZ1bQ6ckFvuJmk62cb7or7lDTDtc79OmdHJRo51BHWbtQjbfB2wOXZVnrK9TwJ1bfsyIzDkuQA9uchZShM/dsyZAVkQ/441EvrevAU0l3qRqjapAfPa9uLxQJHOuflfWAEiH8XPMPvTYKJKlSDCuTk5KwGhTifV2cdG4bGUuCG5Or C8PuXjRz gzdIrLO4EXXK7ups7g2N155jsnKB1pYLCRxcaAIpgwJ2azh0M/IeZnp5xJG3BZXidz4Tbso52tcqkWN2NRrme+YMVx1xb/dXJGmtcOC2t+c/AyNPTkvnZsuSXYR1FoJYOkaDk1rOY1MPJwGuvQ6zJz10LocahmumpUeCoima4G93ziYvyC6pzOpEJG0Q/j7NX83YMeYkDH+sbRWAXnskGmm5fkHRJAq6N9Efh981gvCGuXIb1Afq/EF0s3N/WWhJz8hwZBptVXZKp1FC5NTE4A8Tgxd+4tF7LiFuhZ0yJ43uVIe1N4vH9k9hoEpIEuJn2XI1qQM7Ojn99NP3dHP0Dzvdst0LgoNS+fGV4Iw2nyz9he0frtZp3oIFRFW05R7t8y2r8+kKFDcKOC3AaIICgPlcW9rijaccE0EIADTA0xQPX0elTiQ4ihfsE9br9RyWJ7nE5LNVXocEV5iWXqmlXX7H5TrqBbYfHXrYHVE64NUJRw8C6AwKtryJwTzhGv8QBkmE9BeLAUAcsRdY7/Qk+d8aPVA4wB1FBbLECKrxAlGMsohWG3mIw9hn73g== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2024/8/21 17:41, David Hildenbrand wrote: > On 21.08.24 11:24, Qi Zheng wrote: >> >> >> On 2024/8/21 17:17, LEROY Christophe wrote: >>> >>> >>> Le 21/08/2024 à 10:18, Qi Zheng a écrit : >>>> In handle_pte_fault(), we may modify the vmf->pte after acquiring the >>>> vmf->ptl, so convert it to using pte_offset_map_maywrite_nolock(). But >>>> since we already do the pte_same() check, so there is no need to get >>>> pmdval to do pmd_same() check, just pass NULL to pmdvalp parameter. >>>> >>>> Signed-off-by: Qi Zheng >>>> --- >>>>     mm/memory.c | 9 +++++++-- >>>>     1 file changed, 7 insertions(+), 2 deletions(-) >>>> >>>> diff --git a/mm/memory.c b/mm/memory.c >>>> index 93c0c25433d02..d3378e98faf13 100644 >>>> --- a/mm/memory.c >>>> +++ b/mm/memory.c >>>> @@ -5504,9 +5504,14 @@ static vm_fault_t handle_pte_fault(struct >>>> vm_fault *vmf) >>>>              * pmd by anon khugepaged, since that takes mmap_lock in >>>> write >>>>              * mode; but shmem or file collapse to THP could still >>>> morph >>>>              * it into a huge pmd: just retry later if so. >>>> +         * >>>> +         * Use the maywrite version to indicate that vmf->pte will be >>>> +         * modified, but since we will use pte_same() to detect the >>>> +         * change of the pte entry, there is no need to get pmdval. >>>>              */ >>>> -        vmf->pte = pte_offset_map_nolock(vmf->vma->vm_mm, vmf->pmd, >>>> -                         vmf->address, &vmf->ptl); >>>> +        vmf->pte = pte_offset_map_maywrite_nolock(vmf->vma->vm_mm, >>>> +                              vmf->pmd, vmf->address, >>>> +                              NULL, &vmf->ptl); > > I think we discussed that passing NULL should be forbidden for that > function. Yes, but for some maywrite case, there is no need to get pmdval to do pmd_same() check. So I passed NULL and added a comment to explain this. > >>> >>> This might be the demonstration that the function name is becoming >>> too long. >>> >>> Can you find shorter names ? >> >> Maybe use abbreviations? >> >> pte_offset_map_ro_nolock() >> pte_offset_map_rw_nolock() > > At least the "ro" is better, but "rw" does not express the "maywrite" -- > because without taking the lock we are not allowed to write. But maybe > "rw" is good enough for that if we document it properly. OK, will change to it in the next version. > > And you can use up to 100 characters, if it helps readability Got it. >