Received: by 2002:a05:6500:1b45:b0:1f5:f2ab:c469 with SMTP id cz5csp1028279lqb; Wed, 17 Apr 2024 19:43:19 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWXSi6WmyUlfHGKv9O9oKV3Rw/Nl+8SfdA/IJVG3sxSWGb/h9RkLRKScSqciiswdtRryR/cSmZuyQ45so5+FevH3UujLg2XQ6vsvSwmQA== X-Google-Smtp-Source: AGHT+IHedFMxjkYgjFkf9X6zgkj/utE44I7OAtnY1uhfMeDgptkbaXI/ZIRlvW/e+/MCKHNhTbkW X-Received: by 2002:a17:90a:688f:b0:2a4:c2c4:4a84 with SMTP id a15-20020a17090a688f00b002a4c2c44a84mr1233549pjd.43.1713408198839; Wed, 17 Apr 2024 19:43:18 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1713408198; cv=pass; d=google.com; s=arc-20160816; b=eYFjoRdj9KG4awql2I2fvQ6nZXXc+vfQr7tXZG3/NMv0VJNrapozfbdozsT3Z9UO2f OjxwoJ2HX3j2Gm6sOLLEMMGAY4oPJZExzEMOFh30f3a5nK8tMHbiqjj6DaxSO7LuguGG oua+ubRKSXqnPww3N7MMEqaHIHDOi6rC0q0nL9Rba2ZAVKYHDoeEX7N20MuwaoUqpKLV Teos/vfDxwIF9ZSTIelB5jv3TOLquo4U81Q2rh0WRoXx7EpG+tEOHzWhMcRPyM9Ssd0g apHDrS7LKnDaZ5yG8v7itn4gO/HU4FazjkhiOh82L2EcXYW5TuW7TKOqGxi6M5e/tFM0 QYUQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:list-unsubscribe:list-subscribe :list-id:precedence:dkim-signature; bh=/TQOSEIxhOk2cmOktSZ5shcHbGjzSHGcTvMcNwlLnO0=; fh=ESJWT/L8VpyKHlVs5RuiICJGBMc7RdHnTFZuKHH4r5w=; b=IGeKMYOhEHdRDQeXzfYnJL55OpM3RNO6X0gG7oOQ8vjMpKzDb5UdHEDi+OZW6s/SgM hzJFYLu2LDbnsqGoc1ywRqnEkDlGr3FJGKR+PBgD4SmN8ivJe7mdmGfPU7AKU7uqfloK ivvR5fufz9H3t/Poi2ioOg8XSqWPXaGrj1UOOtCcnub6rJWm+vKk8M2vk+mj064ZqBKh WJZWJFQi1k55Ras+UPiPp4/ejLaBaWDg0QZkEwONzGR2BAG7TgLh+jRr1WBb2RuiLERA AD9UF3XXWkCvsYZaFqxH3BTjL6lhFk888FCebIfU5FW+DdX2/5en58gyp8gxaZUqX7WR Mw9w==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b="TvU/ncvk"; arc=pass (i=1 spf=pass spfdomain=gmail.com dkim=pass dkdomain=gmail.com dmarc=pass fromdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-149446-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-149446-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [2604:1380:40f1:3f00::1]) by mx.google.com with ESMTPS id m20-20020a170902d19400b001e205782c0dsi499158plb.426.2024.04.17.19.43.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Apr 2024 19:43:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-149446-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) client-ip=2604:1380:40f1:3f00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b="TvU/ncvk"; arc=pass (i=1 spf=pass spfdomain=gmail.com dkim=pass dkdomain=gmail.com dmarc=pass fromdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-149446-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-149446-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 19DFDB21E9F for ; Thu, 18 Apr 2024 02:43:10 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0D8364F218; Thu, 18 Apr 2024 02:42:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="TvU/ncvk" Received: from mail-lj1-f174.google.com (mail-lj1-f174.google.com [209.85.208.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 887252AC29; Thu, 18 Apr 2024 02:42:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.174 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713408176; cv=none; b=jww+KGpDaT58YaPxAaUJ+RCraOp+Z2jlLSk7/JooobksBs9PRYI5rlrpr1SV6+AUZ5LovxjgsyXqF/7KpsMdif6FDA/MjDH8h1SMAiXjssTru7UrDKNWXTZlIAWYC7y7zG/2GA+yMGNQoG5Jg+XPECtimgMOwQoF/G0bAkBztt0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713408176; c=relaxed/simple; bh=nc0l6I8uY2Sfpbn0gl6LiAY4AgSqwND6FWwyoGGgez4=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=hF/HhLm+HrPTNS3RkQ009hlEuDsPCR7qEwrt7jufSZyEd2X3SgCf/bkoqh+X7LMV2hnL+3ObMKQr07GV6NPcgxCVxup9VXVafDkZ/fQu1k48RiyXY0eJ+a89/3RtjmZkDs29g2jQ1AD2VmRBDaHZwP4TGrjUGNunHxgPxCWfwlI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=TvU/ncvk; arc=none smtp.client-ip=209.85.208.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-lj1-f174.google.com with SMTP id 38308e7fff4ca-2d715638540so4336601fa.3; Wed, 17 Apr 2024 19:42:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713408173; x=1714012973; darn=vger.kernel.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=/TQOSEIxhOk2cmOktSZ5shcHbGjzSHGcTvMcNwlLnO0=; b=TvU/ncvknU4OO7x/d+H/i7v+aVx0L4D2OZ5zKHQhLaNO33awmWPMK/F9pjnMgS1Hmr qd4o5rbk++VlBWiiWbHKhvT6bqNGKbEUUXRxBfgS68vq7T6P6RzzwhNzOJhPAQVZmfEt sNGiSUzbwz159WYJlBz/iHOkGQ4XZ7bARxbRABTfLQiTYRXZvGc/5+3k0UYmhYi9fDNQ t9GnUXG5k3xtsNWuZVwM2XTdcPQpQFvE2bMhZXIUxGTgk82EnM8Rv/RFdTH/F76zhIgF H7DG609LeFN4bjgYHWG78vAyPw8tlZysa8shkAX/bLPHJJbbzhCoQSFD9w7CYV1vE/OV KPYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713408173; x=1714012973; 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=/TQOSEIxhOk2cmOktSZ5shcHbGjzSHGcTvMcNwlLnO0=; b=ZLiYNu7afm3FQNdME3Da3dIB3GkQh5L1wf0hBOSNvszRpUor56k7OcyoJSQNU+JDd1 Vz8GnRbaQY7Ijt8weQ0ARuxQxvYLULKT0NniLorJZ43GuEyL3bPlGf4gOBb2zie7oDHU TPo1L5b5ASv/XY7wUHJaowOnaxbIssa12jwvoZBp/gMHO9cvSWy8XgG0erz+OeszHzGO 5F8Sr+2tqAIaTpjxW3u1fJoNVaI7zmUBEyIEurhL2+wTOzAMmW7VJyeHl40Yr9hlhPo6 lOYz6ZK2YEOMlDwN0rusXcUAAFRyN0v7VIXgjSAj0fl6uLO8VMAQOgUmVZkmJa05EG6O R1yA== X-Forwarded-Encrypted: i=1; AJvYcCXWmnpWN93NxUjLqUlquJRxPfQy1/pM/Mueq8hc2d3id7/rgkLZ8ldeQ3zjFuZlB41wkUFPtxhmGaYTce2JYA4FFraJ/DIz02yGoNQNIUhXSdd9WtnlbEyC2CxvCZpWDAP1HjFgt86W7I4WBg== X-Gm-Message-State: AOJu0YzmrKpBnJBPOBtLvQCNc3HIYFMgnKnDk5sxm/JfI0wqjkw43mRG Q/TeIoXrw9EDGljmPhbGV5EsZ03bCTKe96dTcqPHRUmD7wugny/VmBgBqq24sZUQgDqjeOb8/Pa EqyQy3BXERFRuLmYYTaKGvPIRSI0= X-Received: by 2002:a2e:9402:0:b0:2da:d964:fc2b with SMTP id i2-20020a2e9402000000b002dad964fc2bmr435026ljh.49.1713408172451; Wed, 17 Apr 2024 19:42:52 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20240417160842.76665-1-ryncsn@gmail.com> <20240417160842.76665-8-ryncsn@gmail.com> In-Reply-To: From: Kairui Song Date: Thu, 18 Apr 2024 10:42:35 +0800 Message-ID: Subject: Re: [PATCH 7/8] mm: drop page_index/page_file_offset and convert swap helpers to use folio To: Barry Song <21cnbao@gmail.com> Cc: linux-mm@kvack.org, Andrew Morton , "Huang, Ying" , Matthew Wilcox , Chris Li , Barry Song , Ryan Roberts , Neil Brown , Minchan Kim , Hugh Dickins , David Hildenbrand , Yosry Ahmed , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Apr 18, 2024 at 9:55=E2=80=AFAM Barry Song <21cnbao@gmail.com> wrot= e: > > On Thu, Apr 18, 2024 at 4:12=E2=80=AFAM Kairui Song wr= ote: > > > > From: Kairui Song > > > > When applied on swap cache pages, page_index / page_file_offset was use= d > > to retrieve the swap cache index or swap file offset of a page, and the= y > > have their folio equivalence version: folio_index / folio_file_pos. > > > > We have eliminated all users for page_index / page_file_offset, everyth= ing > > is using folio_index / folio_file_pos now, so remove the old helpers. > > > > Then convert the implementation of folio_index / folio_file_pos to > > to use folio natively. > > > > After this commit, all users that might encounter mixed usage of swap > > cache and page cache will only use following two helpers: > > > > folio_index (calls __folio_swap_cache_index) > > folio_file_pos (calls __folio_swap_file_pos) > > > > The offset in swap file and index in swap cache is still basically the > > same thing at this moment, but will be different in following commits. > > > > Signed-off-by: Kairui Song > > Hi Kairui, thanks ! > > I also find it rather odd that folio_file_page() is utilized for both > swp and file. > > mm/memory.c <> > page =3D folio_file_page(folio, swp_offset(entry)); > mm/swap_state.c <> > return folio_file_page(folio, swp_offset(entry)); > mm/swapfile.c <> > page =3D folio_file_page(folio, swp_offset(entry)); > > Do you believe it's worthwhile to tidy up? > Hi Barry, I'm not sure about this. Using folio_file_page doesn't look too bad, and it will be gone once we convert them to always use folio, this shouldn't take too long.