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 7E564D5E124 for ; Fri, 8 Nov 2024 04:29:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C34D96B00A7; Thu, 7 Nov 2024 23:29:56 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BBDA56B00AE; Thu, 7 Nov 2024 23:29:56 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A8EDE6B00AF; Thu, 7 Nov 2024 23:29:56 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 88BAE6B00A7 for ; Thu, 7 Nov 2024 23:29:56 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 37D041C4A83 for ; Fri, 8 Nov 2024 04:29:56 +0000 (UTC) X-FDA: 82761648354.19.A54A77E Received: from mail-ua1-f48.google.com (mail-ua1-f48.google.com [209.85.222.48]) by imf26.hostedemail.com (Postfix) with ESMTP id DFC4314000D for ; Fri, 8 Nov 2024 04:29:26 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=kolf3Aq3; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf26.hostedemail.com: domain of 21cnbao@gmail.com designates 209.85.222.48 as permitted sender) smtp.mailfrom=21cnbao@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1731040134; a=rsa-sha256; cv=none; b=BBqxnHhFCr6LH9nhX1tGsxIR4lclN3u350Ew+lDgKpMAGcg4PRagFRdiVyS4l32v5+A7nQ usMz3A8DxJ4PtZI2tpsjpf4pLJxV5eG7m+lzpMvsBmIQYLe+b2EeFkjqAqrwOV4xfIJ5KO c1HZZo/CmUsnWHGLkOStaZt+CXUZax0= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=kolf3Aq3; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf26.hostedemail.com: domain of 21cnbao@gmail.com designates 209.85.222.48 as permitted sender) smtp.mailfrom=21cnbao@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1731040134; 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=5KhdoN9bArhTrwgpxv+larwx17yLL0HfLyrjcE6G1uA=; b=V9yn/7Gw9aBiA8MzwbTW4fOMvJvv5IiXKu0n2Ia/HgFPrkoXYtdbLcuQoisUrsr8GcELxS qMGM1W1hrbEihkfTbqfxBQ9h4NSpXMvDQ/zTl1CkojfRWDFSnsaLthf6wAaqgPrArGhE3f X3RScjN9ZpAEEhCkz17XA1t0b9TKAjc= Received: by mail-ua1-f48.google.com with SMTP id a1e0cc1a2514c-84ff43e87cbso695776241.1 for ; Thu, 07 Nov 2024 20:29:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1731040193; x=1731644993; 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=5KhdoN9bArhTrwgpxv+larwx17yLL0HfLyrjcE6G1uA=; b=kolf3Aq3lTl4Rse0Ytor7eg91TmMA9zV9zFAiUlakBjWkY/A29cE3h+xFsi/BRIRil 6dXZLMpmw91N5/5dKn0mLcICCHZ94+6s6gMIbL31tViDeceshVhZ7F8YCoiqxuAFA/7H 78A+JF2ZOuy6I4e4jVTaZqJNf2YIuDi5EgRsY78WfOZEKU/UUNYjX8IEdFbXvz5drD2o tohmfUKDMfYGt4oOWflvKlZWgU71HIkRujzz/e/ctLknkJMUALZT7R8H6CHWeFoM03oX EZEX7xbjhocN4Vm6algBtZJHu/yTwKcWUTWoOpv4xYoyjJRwfjku1RXn48aZ+jho8EBB 8Czg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731040193; x=1731644993; 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=5KhdoN9bArhTrwgpxv+larwx17yLL0HfLyrjcE6G1uA=; b=fKXenNC9ZbCi+SRbjVQwg2+9G25o2LAhg7ofv+YZYZXrdVAAiGyepqrPCmVWncAROx MhQo8lNbgPYQc0EezcTwKNRskAaQtvZSE7o3JAoWh8wl8sNLzqY99SqhE2Jq++bZySjU iHkKJf1I7zHf+vpIWh/CCLFf9ZuW9xqoe2QY6AsnUjixcbALqn82jPwti4yPyLCa5qer patEVniqMC5y126sPHVUch2qzNr4rudafuhj2Qy8SUPGnmBIBDM9nUh7LerKLHvBMy+3 CEZr6CFIKddPNAVeQJvKOjrVr8ANcsYXRTKQIsyojFY66bE7N2Q433YZh4u2kYW4WsdY w01Q== X-Forwarded-Encrypted: i=1; AJvYcCUSEWqRnorh7tsa2lBZ1O8Tbqj4xnsRQjIgPkgYlCwNHNhYHOqQkF2On92Az85sF/rkXfm9l6cH7w==@kvack.org X-Gm-Message-State: AOJu0Yz+FeR7NylKjjxn+H1kxPWEhQjKMFN1JDtPfVTSHggPCRz0QCuT saANQ0f1o3dBpFJKgwUJNbj6M35XJ4lhpj2mU/IbIBr7o4R2zWXsQUl5nPrG1/XxMQ3um4nA2pi QK+gDIM2N7BeI1NOtHw58hxXXwoQ= X-Google-Smtp-Source: AGHT+IGJLJRDRzWDhRUpKcISWO5NIDXFY4Ph11bFYJ3wT966olIayX8mlGqQ4aSiI2ZMn+/Vnc7dWubftBhWwpiFIdw= X-Received: by 2002:a05:6102:549e:b0:4a3:d9da:16d6 with SMTP id ada2fe7eead31-4aae134b977mr1890824137.3.1731040193425; Thu, 07 Nov 2024 20:29:53 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Barry Song <21cnbao@gmail.com> Date: Fri, 8 Nov 2024 17:29:42 +1300 Message-ID: Subject: Re: [PATCH 1/4] mm: factor out the order calculation into a new helper To: Baolin Wang Cc: akpm@linux-foundation.org, hughd@google.com, willy@infradead.org, david@redhat.com, wangkefeng.wang@huawei.com, ryan.roberts@arm.com, ioworker0@gmail.com, da.gomez@samsung.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-Queue-Id: DFC4314000D X-Rspamd-Server: rspam11 X-Stat-Signature: wxkfuzbmzyywqbxtjospn34a97wsf539 X-HE-Tag: 1731040166-272392 X-HE-Meta: U2FsdGVkX1/AvsVwcVHK1RxELICHBTaItB6uoEbc7wjJ2u9+VkuCnHf+wSMNcd2Ef6rJGBaUvVSYc+CMfgpE1kzi8Ykw7RDfkF/xz3Pe4tCOnAMZn5p8TAq/jjftXNgeropNvigvHs66TP2MmCWlZRwEoVOA+WOApbjFrBPPjdL6yDrsqU314dLc3KkWZXPqKA14nhYw+iWXjKFNS6Jfw2GRQMQ6JGLzP9FPbELBRG9R+e1O3QxSGq7PrDLIBAN+RUP1anonGdnyVgmfrm/le9e3CTIbO7zg9ySquJ8vA/r2vxh1yshy0T40fNjEikwI1wYC8X2FpWfIyvFHbnbdZxLNTHn0P83EZRfBfJR2x8M7wUrEUxOidIILaL9jiS2XEILvnGqEuFnWIwdKegKFcDXfV2LhDd/rjIUAim9DjBov6C+/zJIVh6T6A3m321BGK6MhQqwP5r19Bv6bBnIvnd0CTpaAklEUUYDExZlFxcle0HWh9uxPJ5MUYtRF1GcLVd9dpCNBtSZKjIhBZosDoY5WrrFRa/K+r9qofo2s4AHUslws9Sh90EMyFLh3LmwMH1biAUR0A+cFnGq0fbxkA/o8VMc+1OC1r9DE14pIikgd+EfgjPsYGTbqWumCkDuS7bDs9tng+1G6hLG1IRi+rawwtCH4Nvy27G4rajlUkEyx1PN/3B6Dxu6YBD83j0nepQphKXnVvx7oGVS7JJMuTBeu9PLyjjC8+YxGdj2fC9LGqaBHBnJRk6N0o+LthRQxvoTIkl5D4ZuzUoftA7aMrli+oMLH7EPO0+CnpAH/a4DAThgiQk99y+hLOOfkl/Ugvi0GEiq6VGv6NK9TWBJyqWZBTzoAeiq095PwyZomBBHps7DFfjRBwpadUqlwWuikNbGqd1KPZn66Q2/+dYJtxKaLNfU0cVa/4SuWdWJD85naw62WMxzzeqJ8mbIFe97fnSldJRwI6axLHRUN40C PePEm0ai BTFzOCMp1nLFk6I8wUjY+hwT2NitPcaNx6WIM+P/pgBvmAg2L2j8TdkVCi6v86lsfrtSgLcWSdHffdNE+YV1wGbrRW3iioC5bpRE1mXoLuWbEJp8SswvSP1l7dVY2u3y37Ppz0JZ93nIqmxX0GFQAVD/S+7HGeSG4dgr22198UpeDKZAJkoLu9jSI2aJWgE94jZdQI8r5GGLeiHXD3SaAp5GxOMUD0DqAY3aaCntpd+6hm8nhEUpmZVEVgYMZeJAvbN3aUmZ6a9PpetR4K/Fq122akrdwt5cr6NcTaIohwN2A7T6HUubK+MRmhujvE5id7S1ZDSmUKMUcp7dYzk42MeiiRW/8of4CF/1RCO+qGBCs71OtAz4iN67gl8vy9PRz9tM+VvEaflxRKjaZZUZ4HooXU5CVrUzWVvEr/OZlt9Ibu2k= 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 Fri, Nov 8, 2024 at 5:13=E2=80=AFPM Baolin Wang wrote: > > Factor out the order calculation into a new helper, which can be reused > by shmem in the following patch. > > Suggested-by: Matthew Wilcox > Signed-off-by: Baolin Wang Reviewed-by: Barry Song > --- > include/linux/pagemap.h | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h > index bcf0865a38ae..d796c8a33647 100644 > --- a/include/linux/pagemap.h > +++ b/include/linux/pagemap.h > @@ -727,6 +727,16 @@ typedef unsigned int __bitwise fgf_t; > > #define FGP_WRITEBEGIN (FGP_LOCK | FGP_WRITE | FGP_CREAT | FGP_S= TABLE) > > +static inline unsigned int filemap_get_order(size_t size) > +{ > + unsigned int shift =3D ilog2(size); > + > + if (shift <=3D PAGE_SHIFT) > + return 0; > + > + return shift - PAGE_SHIFT; > +} > + > /** > * fgf_set_order - Encode a length in the fgf_t flags. > * @size: The suggested size of the folio to create. > @@ -740,11 +750,11 @@ typedef unsigned int __bitwise fgf_t; > */ > static inline fgf_t fgf_set_order(size_t size) > { > - unsigned int shift =3D ilog2(size); > + unsigned int order =3D filemap_get_order(size); > > - if (shift <=3D PAGE_SHIFT) > + if (!order) > return 0; > - return (__force fgf_t)((shift - PAGE_SHIFT) << 26); > + return (__force fgf_t)(order << 26); > } > > void *filemap_get_entry(struct address_space *mapping, pgoff_t index); > -- > 2.39.3 >