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 10852C5B552 for ; Mon, 9 Jun 2025 06:40:24 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9FDFE6B008C; Mon, 9 Jun 2025 02:40:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9AD6B6B0092; Mon, 9 Jun 2025 02:40:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8C30A6B0093; Mon, 9 Jun 2025 02:40:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 710056B008C for ; Mon, 9 Jun 2025 02:40:23 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 2C4B91D751F for ; Mon, 9 Jun 2025 06:40:23 +0000 (UTC) X-FDA: 83534913126.13.E6B2102 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) by imf28.hostedemail.com (Postfix) with ESMTP id CEB2BC0002 for ; Mon, 9 Jun 2025 06:40:19 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=N6+hgVEe; spf=pass (imf28.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.178 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=1749451221; 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=AOBnPobGP9YgsM1Pe2OfLfTXXne+220yuokM6yXD+2Q=; b=GWI3gdzIzst7OiQ3MMVkVo3AsfUIL7Q7+t9mVuyfytu79X8uEmzvYAU0jlAUXjRhe5vpGn sliF2Wkn79UBTF4whhKpbuI5wTgZpabi4gYRXMDFkiBn/aPsCVfl40VnsmdrMxRcFpmwBn X3jeM1QN7+afXky36WkqrPmCKm2LFTc= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=N6+hgVEe; spf=pass (imf28.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.178 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749451221; a=rsa-sha256; cv=none; b=ePRByOehvL9LHnqYp8RL9lP4rdNwTwCUJ0dxp/KQBvNaS0yWDhMhiRWLRhg8lRkv10LW5d /mJXOwgq71IfQiOk0gs5CDxxF5cSgEsDHFLDZ0of7/kL6OqTZdYweZ+NbliXopN+/vE/ic jAciSePz7bKWpfRsiACNjzkVJdt4hoE= Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-2349f096605so46939215ad.3 for ; Sun, 08 Jun 2025 23:40:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1749451218; x=1750056018; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=AOBnPobGP9YgsM1Pe2OfLfTXXne+220yuokM6yXD+2Q=; b=N6+hgVEeCmbIe/cQb9jxXLlBZPiV0KxMHy77q2d8EV6WQIkIXlOHNwJuR+FvEv7siz M81C+ZjRYwufQie52p0mh59tPnBYFa4QoOrXSpN1vxVU8zFWIr4P1Jr23XCt6dpL4AWP R+Zrr9qo0x/qENAktw2EGYkSSB5UlMB3hMZlLuRjriMfg2Dkyj6u8NNoHiVn41MND5MH 0FUybgMBLWzHcOy+JW7fo53wTpO8bem+VAL0CAbQrgqj+rxHXZgi2AWLgrgeYG81pLTc HD2tuwSEe2EUTlJUVOyS3NG9icpqBc3PyTKDNaov9phD/EQzrlScYD6yuSOl68Y9wXKo utUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749451218; x=1750056018; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=AOBnPobGP9YgsM1Pe2OfLfTXXne+220yuokM6yXD+2Q=; b=IpXFXfp0NG5N9lgfd0vdIFAw49zX3q7m2weZGclkapSaM3wfYFS98eSUlNKV3d+WxG TGdCUEqLidnoV5VO0m28nNW3Ej81H8ADjIBqfAR1mVO5c19e5oU97c1bW/fhAltxUB7x DVoMo7HoWMeUig5hR9CRa+JOUUzdONsD1y+UDtuMIgTpBphkI7sr3oXW0sf8/t8Ru/Om WSZ+323lV8rbLBn/6CrJIVo2SwhwxYke5FUufFS6WuZE0jIFGl7IB/4RFujKDCz1oK2B zZ1gWEe098j3igHj+8YRzZMwyjEzCgE8t/CGL/t9jJS79cCtlfqE1tTpC1zvamNIm7rK OdZQ== X-Forwarded-Encrypted: i=1; AJvYcCVi98vPaLDzYBjfY3dPsrHH+p3CF2pqESyo7qsPlW3mC13vBYxBzY8FavUifg4PzkZHIpkI6x+c7A==@kvack.org X-Gm-Message-State: AOJu0Yz0hCvMr+GjBXJ6LDlg7coilR1RlmOSaWD3vExOFfJpKJ41KZ2I H8jNqU7WY/cKrh2aTY5KgJKq9+TuE3xw2FHUgcjKhtYyrs1XxFSxw6LsP//9OHc8MgM= X-Gm-Gg: ASbGncvcx7ZYVa6YERTBQ/9Ym2FbZsU+JuaMbGt6x7uEMfff449tKP+pQq4SQKsLH7B Wb6QuVSkhYD78129H5HnONAWh7l8Kj6tJxtvifrlWCAcGfzgbIIwlSvYJC1HFfAbHkjAIuhUE2k XLSAiVLvBJ8xYnJgSNpj1jS8kMG9BXPZvOnQXJ99uE5h8Vt5DTmT0+I3CUGG2EIpiyrPNATwufy FwuO1CgB8sCICj6yRqS/x3xTJDzPeGhpDQoinuCd57DFS0WHlloRdiDO52H+K/QCjxdiOP0UHhT G+q0DFv4zt30iQWPk7LJUMXH24vAAk/wIWeN/brTzIL1aQx9BhFJ3zEQSMZCw5BJ4jQc1gnwbIa ZZ9E= X-Google-Smtp-Source: AGHT+IFgQnrG25ddoQWGgoXokHSHFzoI7JWs9fEQH7NcS+EBWHSRH6Zi8DV7xTIk/Qe+xMBxtIDCxg== X-Received: by 2002:a17:903:3c2f:b0:235:cb94:1399 with SMTP id d9443c01a7336-23601cf6bb3mr132731845ad.6.1749451218614; Sun, 08 Jun 2025 23:40:18 -0700 (PDT) Received: from [10.254.237.177] ([139.177.225.248]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-236032fce7esm48540165ad.114.2025.06.08.23.40.12 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 08 Jun 2025 23:40:18 -0700 (PDT) Message-ID: <5fac6f20-2643-4d98-a29a-06471f156762@bytedance.com> Date: Mon, 9 Jun 2025 14:40:09 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH RFC v2] mm: use per_vma lock for MADV_DONTNEED To: Lorenzo Stoakes Cc: Jann Horn , Barry Song <21cnbao@gmail.com>, akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Barry Song , "Liam R. Howlett" , David Hildenbrand , Vlastimil Babka , Suren Baghdasaryan , Lokesh Gidra , Tangquan Zheng References: <20250530104439.64841-1-21cnbao@gmail.com> <0fb74598-1fee-428e-987b-c52276bfb975@bytedance.com> <3cb53060-9769-43f4-996d-355189df107d@bytedance.com> <7cb990bf-57d4-4fc9-b44c-f30175c0fb7a@bytedance.com> From: Qi Zheng In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: CEB2BC0002 X-Stat-Signature: odhu3qe3ykc95io8i8ipm8o3csx5rc7i X-Rspam-User: X-HE-Tag: 1749451219-708725 X-HE-Meta: U2FsdGVkX18WeIaJO+1ybYd+fAlZgKFxGw+P9mWNylJEyHZtQuf1ZxerMMDReJkI9ghSM/nHR2pFYddaLovwOFE151LYu3zPYW7J5kUtU+kjn3O3D6lMovKuTJCm9TjE1Ss4kCX7/FSgaVobzqb/Ue3wHhjr32xfcZrar5iPXoKaJ5C67seNXliajN15eYWJYvLv5eLQe7zEJoT7zfVW8nwA7/feqolzd23Sa7WBOdw9OF/JU8unzuWMCtQM3/fIgsJwuLtBXuvO8cbtO6xCHmEQatxa99ZFMxs9Fq4by9dHitAbO0SgPWNfAcBdFPwCVBCigKYVC/jVI1+91eMe2d20+lWt8YUorOo1tlHRrih7mUAK0Y8GOWX8Im3688BRUuWmGyfwkH4aIV0jUBlhyOJyjVBOKr7WBauinO/itoBy5DoGPuAY/wWJ1tvxtdQpB/L3iZk8ovtIxeIPfhyU0KqnCZ66bBDYlui4/X0ttre+fwGourSF+wL1yzXVlx9JRUSLnndhhmdQBQJbgTVsYJ2hAvsV12Eip5g8E9oLqhyprd19WmtUTBkl3eUnyJC6/QWcTct322S2hBMlzw1FO9mXb5KxokO819W3j+b9p/iFZEw2AcKWlQkreFfHPgJNVgDdD3op5NDPqoR8tDIr6L/o0GPSTDU0qM81y+3Y5jtbqdlyJHekleZnmRatZfnQrq6jmCTD3FfxeFqQKG72ShFSoMUDHfSoFGavF2RavGQFu6ASxaUXCGdldnN5jgV80sjjoyobknpiSMrhhT+SAcszI6Dat1K64R8MjMyT4IQpZAO1iByuQhHotXeiMRn4WArzYtGMvu/b8KfxPFQ3dHPZIiB7Da0d8mhizVNfxfEPKt1NRPBhiBc9sf8KQ4OYsOHs7fO0tszEEZ9TMEOoA3S1HE+pidiyq1r1xTnXhzHAuYuAgZ5yrFg+awSzkq8uq60zuzBm0+Fman341hc TSdZkznr HFHaU9OkBxyvkOYpwGjA9l46dDmEQLtAgxTuayN9ZNcgIrswTrARExjOIL4g0Kyhgn/4P++b3ByFdSdyGPy3KYfP3NJHxd1zerJPksTXG9+oLPErB0Wk3+cUTKRQeez33VKxTdb5HrKTdnUyiwnEudW/vqLfbC9YFtN/PlEos6o782Mk6dx5WDmHbfN5eH2umI3unOofFtLJES3Xefm5vSxn2DmnbE13scTG5WyH4ldb/ftuCXA9jy055rzPD72SqyimoeQn0AJ+AftNEZX4xnhlUYaOYkHkoBe93eG6niE9kES5CPKM6Fak6TviSinNRYplnbH7EMIxNmOUNgVHOB1FFEaRFFqbz89LFnAyb7iGpbjWtfBdMeWRmhKORSMpWlj6s 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: Hi Lorenzo, On 6/6/25 6:44 PM, Lorenzo Stoakes wrote: [snip] >> >>> >>> We could in theory always add another callback .pmd_entry_sleep or >>> something for this one case and document the requirement... >> >> Maybe, but the SRCU critical section cannot prevent the PTE page from >> being freed via RCU. :( > > Idea is we'd fall back to non-RCU in this case and take locks... but then > ugh we'd race everything RCU and no it's all or nothing isn't it? So maybe the RCU+refcount method is feasible. We can release the RCU lock after incrementing the reference count, which can ensure that the page table page is not freed. > > Overall - I will stash this response somewhere and come back to it if > somebody else doesn't in the meantime :) Thanks! > >>