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 94A42C369A2 for ; Thu, 10 Apr 2025 08:14:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E80256B02EE; Thu, 10 Apr 2025 04:14:24 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E30E26B02EF; Thu, 10 Apr 2025 04:14:24 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CF83A6B02F0; Thu, 10 Apr 2025 04:14:24 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id AEBDA6B02EE for ; Thu, 10 Apr 2025 04:14:24 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 5EC89C05EB for ; Thu, 10 Apr 2025 08:14:24 +0000 (UTC) X-FDA: 83317422048.03.8794502 Received: from mail-ua1-f51.google.com (mail-ua1-f51.google.com [209.85.222.51]) by imf04.hostedemail.com (Postfix) with ESMTP id B22454000C for ; Thu, 10 Apr 2025 08:14:22 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=S8FT9wqV; spf=pass (imf04.hostedemail.com: domain of 21cnbao@gmail.com designates 209.85.222.51 as permitted sender) smtp.mailfrom=21cnbao@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744272862; 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=jtxtEPm4AJ4x8N9WKm8NCFmZGdmUJB0tpx7bPjFWOsQ=; b=Jdbc01zRbdjCRd9/SV6HUtdWmgpWl2nR12qsjEuBoFEHUXQwszBplMAqZS7yJ3dDgFwoce kGW6PYdO/3djsVPO+GITqIaZAH0tnJwDAMx9oqrgsgXWB9ujq6p8RPL+30DLlEZvxfwUJZ hz75pxVTorP8ICvlNiF/IAjqSozus+E= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744272862; a=rsa-sha256; cv=none; b=oA6lF2YeV/git9qMG4YoVcD9U0yGf5y1tD3tqCQXY9juYRQfOMx5pfgA+PW0mBGgVxcVbD JIIB2HdsQijYxHgcHBSN6bi6w+l+BbKIRclprf2q8FLu2olVX5pk4FAClOy+6nqSg+LdKd VQJdEkVzkpuFNKfNrMgFdEdcuf4/ym0= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=S8FT9wqV; spf=pass (imf04.hostedemail.com: domain of 21cnbao@gmail.com designates 209.85.222.51 as permitted sender) smtp.mailfrom=21cnbao@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ua1-f51.google.com with SMTP id a1e0cc1a2514c-86d6ac4d5a9so212379241.1 for ; Thu, 10 Apr 2025 01:14:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744272862; x=1744877662; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=jtxtEPm4AJ4x8N9WKm8NCFmZGdmUJB0tpx7bPjFWOsQ=; b=S8FT9wqVI8loxDau0vk/Nq+Zlx/UqmUjsXp87GLAnRElNMj2YOzirKiEqQ9yJ2S81c +4zBrS/5Nz5ORyl9gi51/dSEApqC2piz+cVTMoGC9aTXYUNSJw8qNB1TN6X2XwNa51mG J2E6I9jIoUw8apdOLaQaeygfqp/oS5WrnXko+weRX6MuBJfnUOV1dq2Q5RpIw46w0j7V hKrCIYBDgBAmhomgcrIZ11eI0KBuu9NVCnN6B1FW4nP6PAbRtJF0koEz60j8BiWLxO3Z htu/iAeHStudcDTpv0c0MTcxSRjjdS17AGBDffcrOJE8wzEquKV2xE3+TIB2zOW0YG0u ASRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744272862; x=1744877662; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jtxtEPm4AJ4x8N9WKm8NCFmZGdmUJB0tpx7bPjFWOsQ=; b=bm3++ruTmp4YQA5HKyLlRF93NGBGsP1ru6e9yf1wFoIKbZqWs581M17o/omGOPvA7K ixllSR+HGnqJuO0faGl4yBUjQPe1xOcdRazppxhPqEGzQqe5nHqPh6mAMKNBtTfEOcjk RLPlmBsxe/7aWeO/OjGD6asmJKkbVbADBbuppzFbylNbzRBougCVHznhMzhIymLSPJtv XGvf2nAePfcRERwyCLHb1D4mbr8mcqIGVJ+l/acXiZwdjdo0oQVne9iFyqjJMZuAk6Cc UypSx2gQPHEuzj+FuM7vgR/6kxeP8gUp7wLFweg/X8XJLrhXv38LR+TC3OUjzCZKYbp/ 6kUA== X-Forwarded-Encrypted: i=1; AJvYcCWdNzB4o64mT0W+TGK0+rirbiVNBFvCq8FXhLqevNwfZo6Er2Ko9sixkUoIbbyiEgF9nXuT1apQ7g==@kvack.org X-Gm-Message-State: AOJu0Yw+/MeGFdmSJpPznInuWReHELm4PhvOb4Nql/iW2vP4ewodKv3a LxaPUv1+mtYblL+ughBSdVjhSkJlmrEhPoGNwkCokyzZa5ahPc+asJ2QyU1hp+dPLp6KTzg7GGd R6Hkyihm7d/qQBpd9E9OdYhE/2JA= X-Gm-Gg: ASbGncs7ihC0mmSBfhs0jEnhWcFpkcu2BQ04N2DaICWhE9GKH4B359v60RodQ9AQ0fn zSG7px72Bzj0P00e0Pe/vcug6SsPefHjDGWYQEK0PKX38nRvG1VIyK25alfi/e+VTfJ0HUL8Ppw GPWCmF/LOt7C6+G8cICurgyw== X-Google-Smtp-Source: AGHT+IEvvdv2zhbd2kmBRW/VXRKVNHK0VCLXKSsF936ydH1BymHDzBmNdbASxkp5/ld3dYzDQ87xGWs9lmDwJUlBsU4= X-Received: by 2002:a05:6102:554b:b0:4c1:924e:1a1d with SMTP id ada2fe7eead31-4c9d637ce29mr444134137.18.1744272861494; Thu, 10 Apr 2025 01:14:21 -0700 (PDT) MIME-Version: 1.0 References: <34bab7a60930472377afbfeefe05b980d0512aa4.1744118089.git.baolin.wang@linux.alibaba.com> In-Reply-To: <34bab7a60930472377afbfeefe05b980d0512aa4.1744118089.git.baolin.wang@linux.alibaba.com> From: Barry Song <21cnbao@gmail.com> Date: Thu, 10 Apr 2025 20:14:10 +1200 X-Gm-Features: ATxdqUE1WBJVdkJVoCKU-96qwZBSus7wuVglO-eIEbf-QHWL-gLfppSUuTaAttE Message-ID: Subject: Re: [RFC PATCH] mm: huge_memory: add folio_mark_accessed() when zapping file THP To: Baolin Wang Cc: akpm@linux-foundation.org, willy@infradead.org, david@redhat.com, ryan.roberts@arm.com, ziy@nvidia.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: B22454000C X-Stat-Signature: g56jtqbaqew3kg76b3fhip317d1p6ji7 X-HE-Tag: 1744272862-820995 X-HE-Meta: U2FsdGVkX18XtnqB5gRN4V3VqQqFDI97XbKsH/cX6zYdGwZNUd3YJzH3oZ/xvcOxac8gxLSJdAe/TXGtYCojUnyJKTyBlOwyl9Gd1EfNmyJCYgYuaJLcyNU+FvP8iyCiyqMt48s+4VfCOT50bSvvJbUOQsouf5UBb0eO+MZJ7rX6wuAea0PeFL4F3y0oa0XI/dxhC4QsIDDM+dIn7NJzRa0RRv8nW5VSkE+4y1AB0UKo/h6jgyTPc/eoB08V+LxXsPogTBne3fasUT2RNKx8XVGdyBxtMs+49uceMPf5f83XLcrGfLj5EMuwnBpS8+le/DB6Lxk8CD99iI14ispUH5XqAtxzGcOucUNGHbhOW+3N1MIoUSbt2N9EKhxu217qizCYn5JDEH/sFPwFGOzx5J8emmoWtdhdtI1SkH/df8WLFe7dwUPGzdFlPvOJvBBLZ+a/6+ezY+h51z3ntw/cpjHcDd87eWukEattmSaiMT6dOvCqtU+IuYO3qQnjplmZhMpC9liVxhPLg1796+/7HeZ8+uGlfmuHuzmd3+irRBXezMkIrQmidwu5CUd5Uo3Vkc2IZ3o37Tpf/qrr/eU69vm3ez+mTOKvHRG6Ld81TVsQ+w346wP8RtmjESMv3s4aVFLhf3+vjnLh89TP7NnlgFG4FfvJ20V7Xu8+nCrzcavPigDqTdQWnoxCJhFao8CecuFJgyFUHgWxw9zPiiVbs9kwTFT+dzlL858w7aaD/8n25n2lfCaKg3X+Zn9qctwbZyp5fYX4pWmWKwlkfVshEnOvryNLsgHhL3x1eQm3b9M/g2o998aO884RPZSZXu6eN9pqId3AnrhfTIP5C7QIoSRQsoKj7rMWxl13vRGOxiE+NDeyG62FNqMWVgrGbYs6oCN5ExBE4zbz/njdPGFSE2g0WaMVHG25wJkxOXvMv/bQsv2h2ArjOZxAJwyhglq27EYg6fH2vkSkFzO4L9V xloJRUQN b4bDkf1mw5Y2f3TVqqLcgZ3xVJQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000357, 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 Wed, Apr 9, 2025 at 1:16=E2=80=AFAM Baolin Wang wrote: > > When investigating performance issues during file folio unmap, I noticed = some > behavioral differences in handling non-PMD-sized folios and PMD-sized fol= ios. > For non-PMD-sized file folios, it will call folio_mark_accessed() to mark= the > folio as having seen activity, but this is not done for PMD-sized folios. > > This might not cause obvious issues, but a potential problem could be tha= t, > it might lead to more frequent refaults of PMD-sized file folios under me= mory > pressure. Therefore, I am unsure whether the folio_mark_accessed() should= be > added for PMD-sized file folios? > > Signed-off-by: Baolin Wang > --- > mm/huge_memory.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/mm/huge_memory.c b/mm/huge_memory.c > index 6ac6d468af0d..b3ade7ac5bbf 100644 > --- a/mm/huge_memory.c > +++ b/mm/huge_memory.c > @@ -2262,6 +2262,10 @@ int zap_huge_pmd(struct mmu_gather *tlb, struct vm= _area_struct *vma, > zap_deposited_table(tlb->mm, pmd); > add_mm_counter(tlb->mm, mm_counter_file(folio), > -HPAGE_PMD_NR); > + > + if (flush_needed && pmd_young(orig_pmd) && > + likely(vma_has_recency(vma))) > + folio_mark_accessed(folio); Acked-by: Barry Song I also came across an interesting observation: on a memory-limited system, demoting unmapped file folios in the LRU=E2=80=94specifically when their ma= pcount drops from 1 to 0=E2=80=94can actually improve performance. If others have observed the same behavior, we might not need to mark them as accessed in that scenario. > } > > spin_unlock(ptl); > -- > 2.43.5 > Thanks barry