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 3832FC52D6F for ; Wed, 21 Aug 2024 09:24:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9F2E66B00EB; Wed, 21 Aug 2024 05:24:14 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9A21B6B00EC; Wed, 21 Aug 2024 05:24:14 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 81C536B00ED; Wed, 21 Aug 2024 05:24:14 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 602A86B00EB for ; Wed, 21 Aug 2024 05:24:14 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id D09CA40ACD for ; Wed, 21 Aug 2024 09:24:13 +0000 (UTC) X-FDA: 82475716386.13.402C50B Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by imf17.hostedemail.com (Postfix) with ESMTP id 35A0240007 for ; Wed, 21 Aug 2024 09:24:10 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=DKh4qqew; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf17.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.216.44 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1724232163; 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=wSX2UW/W8B7Ffz8kkQMnXKOYBxRf7RK7/SpflK+Hcb8=; b=B14rNN8BZ888UUpxAFApEL7m70rTq/cv2AGXmMLQ6wxyX++gzS04/TK+ipmJ9qngxtPAEG v4LmwkwiAGAGMoLv2oHqNa4eA6rr3v5l22rzn48PfVjlcqG3zXTs25dH543Tvl29h8a1mq NGCJxPP8HH6DAl2bIP+3NpcEkIhIKdM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1724232163; a=rsa-sha256; cv=none; b=xeE0e2vnOF759HFuWeBEU1Pdel3AyDGZVXA1weRXhYEhu48nZOVoamCNndj5oSJEzSaoJE C/fTH9crNuuOc47Z5Xn2G39jK4ciWJfFHJA+pa/K6gu5KfeKdmX/ml5UQCqFu3FnkL2Vh2 tY0hWSFVMbydlk5jCzeYF0Nh/sDK170= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=DKh4qqew; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf17.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.216.44 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2d3dc25b1b5so3902852a91.2 for ; Wed, 21 Aug 2024 02:24:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1724232249; x=1724837049; 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=wSX2UW/W8B7Ffz8kkQMnXKOYBxRf7RK7/SpflK+Hcb8=; b=DKh4qqewwglVhdCtsb6zSLMJmRZRHZYI6hkqTva3GfMxZGXi4NhDVMtR4yOeYvnnUG pRbEtrLPB4P+SL6j8IFk6Ma5DEqu8d/xUDMOLwmWN5bgsy+xQ7ESvFBK4GdfS03EYvur 9F0ZuIkqc3I/udJ/MWxHZRQyNsrsQSkUSdUoAgFIKsHjDKIGufVhNndd4r0L6qZ99T7V CeMmqmgJ+/87hnF8qunFf/GGM29vryZCqCXFBzPbKWfzmGK1lgMZmfqIIyYQsFml49Kr JHpviANrVkHgQj0RiKuyAeHQeqBitUB7oFS1AowWBl0U47tJ1ZPWf0JuReaBX3HAzVeE NIsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724232249; x=1724837049; 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=wSX2UW/W8B7Ffz8kkQMnXKOYBxRf7RK7/SpflK+Hcb8=; b=qFMk/IX5tOJgmv62m2/pOSI28VqZdFDDi7v/Zr4il43GrxKpkEbIdw0zo6jKVXZucr p+w+nvFV4vQCY+USA5X/2nQ9bmDnN/jlyzTkDdx+M9wIirqSz0LuMvoz7PIwqdfo0hnP mRfiQ0skBrpJFwYj5vWKFiPCxbbn22mZjmgeZPpJBtcdvv5yQq7RWI0I2LDcDR9SQqYB 0ErQeSkL4IAmm3Xq9KpJlBu4Q77bHPMj6BZ2xH1Wj5aZxYMAY5RIjLemuC6t6QrpKcJx 3JYuBVHav3QWzQ/9Ov1YvhXILq5S2jfm3gnFZa4P9krmI3ZMyVFBJvqcAZS65ZlZbKWy HJnQ== X-Forwarded-Encrypted: i=1; AJvYcCVC7a/VXmq3CHowLbH2b/XIGuJ626HWFT0mR2BYlGcfwR9RhPZNOxAdqQmnYtogK3HLO4mRf2kiIQ==@kvack.org X-Gm-Message-State: AOJu0YxdAcKuou7lz3hRKDcVbfUaWnDsGMHv4ePPEYctj1xwdQLpPl8d kgvCHd5y0sKUPrEgLUvaSidRnJbNCxXh2prGf4zriuS0d/KgsKJ9M1G4jrvu/9A= X-Google-Smtp-Source: AGHT+IEgVXX8+VxDvZcoW1SKZwBL11MhagLS8dAsfWdFenURBSvzCDIeLTwfbkrSYGW7mFvGjU6V4w== X-Received: by 2002:a17:90a:7893:b0:2c9:635b:7271 with SMTP id 98e67ed59e1d1-2d5e9a24ea2mr1735850a91.21.1724232249566; Wed, 21 Aug 2024 02:24:09 -0700 (PDT) Received: from [10.84.144.49] ([203.208.167.150]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2d5ebb69487sm1232288a91.45.2024.08.21.02.24.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Aug 2024 02:24:09 -0700 (PDT) Message-ID: Date: Wed, 21 Aug 2024 17:24:01 +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: LEROY Christophe Cc: "david@redhat.com" , "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> From: Qi Zheng In-Reply-To: <6a586524-5116-4eaf-b4f3-c1aea290d7c1@cs-soprasteria.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 35A0240007 X-Stat-Signature: pnr1pm65jx8gxeb1fjjircgiseiy54mt X-Rspam-User: X-HE-Tag: 1724232250-310961 X-HE-Meta: U2FsdGVkX1/DaedRvKYp31Dz9PqzT4u07FhMxEuwrLlvyj9OnCrqHugxRRFsiTW5lo6UPOmldzDjSSsTg3cMV3+PIF166f1nEX74u9TD4j2ToTAuLYmA5BcbSB3flbZPJgVrVapfVxTiNHhBSwytbS+ZZLFzH+N4o/crApaNvBhnl8Fs/scTFRx/3b2riZ600TOjH+H/hYTkdUuo4VNws1gilzEL9z4KSJP1EnVH/J7ypGT7t+YvcbtUY2aAK63HpEdxGUedOnaV3tW4dtf53mvloUCMQGzR+9kar5gsC0+whSLcFfaCsAj11U++WjOmw0o6RieZ+z0J9cjB61TBxODR/X7/4ph+QN/j5rBYh7mlb5t2k6sNndp8mZYfOFUCzFiDNlZ9Fam0PhC/LTe0dPxU/YXezYTpJcnYCDZ8/a7QsUg7iWcx5Eaipi0xTtfjkWgwN/fyDSkj4fKujhg3WD/i7SGYFKidBEGDXzCPsTCfAJxyY8G4ut3pmIRVX2tbmp3m/kU/H2TH/rULELsK39U/mp0SHDqUPeTfjEUe9RwoKhZ/kpj0r86GlZR2QUWholMFiXnLeWcUkg8yFYTdvBF4cORTU1432nAf381fJYIdSEJZUzVQbLT+0vFEnt4QurUl03CwNtTiIdh4JfvUiakdFwhqMdF0WBLi5zLzBPMnJWAgSz3ajDKvdT+XSA1pmVLKroEBfBrJagDHh0qm1J0GqcFeU6HtPixY7vqH7s6IXB7BBZWYD0vQs7rPPWVa1xub4TIs9U9KZkJHbofF+cSSIXhdS2XRGELPfb3qTGODvKblfJkBEP1TMteBR9GMHZMmHI+XabLibElL7PsfMRqQJG5erLHNvBzb9Kh9JzV1s05iQHQTk9oadAl4TTosAYyrgQI+R+YzxI1Kgp1FgO8qvljwLXzTQYRnVRwXbTfVKUwCUwLHL4RdwNFm0mYTAaeQ0pi+kuHAEWnmA0U sSDsoXeR kKpNROo7vAzIqeJ6Z2fnb7ZDXnqnKt78wL0gdx+rW5cyppikoXAHdmnXMUHPbbcn7Vxg8SWJkM9JgNE9Z/w5A7jX3oU6aJoJUisSjTHFuWcSfaY4CwVxjcq0ZT4grxnycUVSaEQuAD1Kt1GNJ0OnYJH61F9y1GtSIzrHJp/vTRXlNxkIdvWbXDvgZ/8fNjEWCtkfE+iEGEaq93BRYodne7qe4H0E7XgvwGPAoDAJPrxmX1B8kCmReNm+t7DZ/RYwfi7sNF0BESIxEAz6dvlj/waXJhp5RwlFSprffOyCiuq+5OLxpXm95QDJMzwvqLt+FJK6HeTzcFblfu+9fqzsjO/PgwRx2mOqk3CGmTU7Pt2TPgeNvL/XmpQtajNLQ3NXPqJyDD55a3hJR0S6Tm2DECXPYhGVi7GNef8hmmksX1NZcjO9dUqNOVqs0bhK2pV2gsK4nThAHJZDy5TsWREFH+NGyQ5j5tPXf6AGC9fZnbahCxBPU38xelvPQDOvnElMCM9ql7oXTHNGF4RENH9tcJ+spkfdoyqx8QBBiA7SZPlNjytk0YsOoH+1jhQ== 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: List-Subscribe: List-Unsubscribe: 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); > > 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() > >> if (unlikely(!vmf->pte)) >> return 0; >> vmf->orig_pte = ptep_get_lockless(vmf->pte);