Received: by 2002:a05:7412:bc1a:b0:d7:7d3a:4fe2 with SMTP id ki26csp938379rdb; Sun, 20 Aug 2023 09:22:04 -0700 (PDT) X-Google-Smtp-Source: AGHT+IENle46uNb2vXPMPL5C3gQYH+t3jh/jJv5gUBrLHaJSBad/2W8NFVtwQrfhAt5QKBQJdLv3 X-Received: by 2002:a17:902:f54a:b0:1bc:1e17:6d70 with SMTP id h10-20020a170902f54a00b001bc1e176d70mr6921921plf.24.1692548523864; Sun, 20 Aug 2023 09:22:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1692548523; cv=none; d=google.com; s=arc-20160816; b=Sm4cZevMGT6JAd+6iActf79Eqh7//ddUtopj/tCpuYu0TsKC6NS3ZZSGNftzjf8cvO JYTtkEInQBcfPfhiHy3MkXFA+lOX0ax5TDX63mKO7itjmAsh+Opa6fM4FVNrQCcvD/dc 71K9iJUt/bhQDzyUaVAb8dmMHRg9dP8oCZWP6WPoyc4opvyNW8lFgz4YngBGq2wtOge7 MPqzN7pb0FnFCt1O6S2FKDm/wy+kE2fwaVPKpYNy/1Gm4CLAVaOqPm3MdJqoMpcPDDkv VsyELLk+A9o/yZIYLWdnWa+538FcSwVnG2/OyozG8rRG6M+wFskgnv3OgS7XZB/EQ7JI 21Bg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=JZwhCwjDtTWBjVB0IrnL1Vfvj4aOSGOZqsrM0tJ8VXU=; fh=7DjQjOvXmZz2gD48FVWpdfAQHRW+VG9n0SIt8EAT5EM=; b=UaAPNecJh2wtZeVbVnrvFTkN/lhoUNtWbXvy5azW1Pf8IfsbYIb+WgdzJPAaKnIl9v s2i3mvKVbawDb6lf3aWbwiJ7TF+taF2OxG6DLZ5KhRawNezz5rpS0qc199LN7uGxhEHU sgslsp6vGqlrpzO7+OyX3QLCagtgeWn2a7gOWXnmPOBKozuJz+iiy9LVcTuFaVQedDKw L0Nt6vnHom61g8OziKpSiPdsRvslH24OfWcRvmU1dFfY/nuR2N0lWHFGUeZRgv5jd47s uM5GOfUaqNaoFrLydjQ5j0rMr/bCyG5XgfBdVx2odDmaPKTUhNAHnPqej1p4WDL3u4dd cj2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=nzmSWNYh; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id n15-20020a170903110f00b001b9ce7a85cbsi5694587plh.281.2023.08.20.09.22.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 20 Aug 2023 09:22:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=nzmSWNYh; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 52A703221F0; Sat, 19 Aug 2023 11:59:34 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244145AbjHSCjC (ORCPT + 99 others); Fri, 18 Aug 2023 22:39:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43424 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244117AbjHSCik (ORCPT ); Fri, 18 Aug 2023 22:38:40 -0400 Received: from mail-qt1-x82b.google.com (mail-qt1-x82b.google.com [IPv6:2607:f8b0:4864:20::82b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 35E143AAF; Fri, 18 Aug 2023 19:38:39 -0700 (PDT) Received: by mail-qt1-x82b.google.com with SMTP id d75a77b69052e-4106eb44e64so7405691cf.0; Fri, 18 Aug 2023 19:38:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1692412718; x=1693017518; 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=JZwhCwjDtTWBjVB0IrnL1Vfvj4aOSGOZqsrM0tJ8VXU=; b=nzmSWNYhIZKGfoBBbZn6xNLlQzWETNY8VMRRjojHTh4tqElvCO+mDkL4DgsLylrxRW /KX3jVWQGAvKHpcfBgvYtJRnXTRVkIC0kC/v+EElN1ILwv4SIryRgRV/whqlpDdbvU4c +PRRbRTMLImlBDAUJLCWUCLoZw0ftT/FL67Hu46ZHCRWkRGSckzRPsSngqfHSsP4GAu4 /DZhIi9mBFgSAKC50C/NzGEgw9t0BojdYZFhjqB1eT/7qugsMgY6z1039AryfLOOX06p x4JLbieD+CJ82f9/4Dd/B3IM7/DoAXFYyPnPQ4iUa7FQfEQdmhiZd7j9ji+7CDD6h7HP GbRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692412718; x=1693017518; 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=JZwhCwjDtTWBjVB0IrnL1Vfvj4aOSGOZqsrM0tJ8VXU=; b=jnOY8g0VdnK1z2TP/UaXacRWPlybiX/SdP1kCEwoCYTSKo38LBD17PD+xEWHLCjGyk +wsaH+pCnb7mnQxrUgQF6DdDs1Q6Z6OWVmsncbcDW6NwxuNwmos9ya1od3hGjPFKSRsK l3tuQ6RGS/taGGloMyCRccW9tWRR0+XycJkXHFicKUuVeIG5nVQgpxgrnh28nj31mYlN 1zBaCTyLLW3s9GxHouiqP9zu6ExsquTEULxcGC1yTsN9rulFCgwdYnPwy/kAMjUofTx+ lYQ9jkv5mPOW4JAM7k3QmyIYOFtUpT/sU2mY2RZJXaAf2NhLTXU3+C+09KeuCtnpej/P yWRw== X-Gm-Message-State: AOJu0YwjSfVBKOHNFKv8O7EgAEH/MahXF1bSA6RUcXZgGipJP7shkA4U F5oi5coDbSmodw5lfiWInXkG6pQpEykolY33ycP53Puz6h2qa1m+ X-Received: by 2002:a05:622a:309:b0:407:c2e2:2a06 with SMTP id q9-20020a05622a030900b00407c2e22a06mr1421607qtw.8.1692412718074; Fri, 18 Aug 2023 19:38:38 -0700 (PDT) MIME-Version: 1.0 References: <20230807012654.55951-1-zhangshida@kylinos.cn> <20230817173123.GD2247938@mit.edu> In-Reply-To: <20230817173123.GD2247938@mit.edu> From: Stephen Zhang Date: Sat, 19 Aug 2023 10:38:02 +0800 Message-ID: Subject: Re: [PATCH] ext4: Modify the rec_len helpers to accommodate future cases To: "Theodore Ts'o" Cc: adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, Andreas Dilger Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Theodore Ts'o =E4=BA=8E2023=E5=B9=B48=E6=9C=8818=E6=97=A5= =E5=91=A8=E4=BA=94 01:31=E5=86=99=E9=81=93=EF=BC=9A > > On Mon, Aug 07, 2023 at 09:26:54AM +0800, zhangshida wrote: > > From: Shida Zhang > > > > Following Andreas' suggestion, it is time to adapt these helpers > > to handle larger records during runtime, especially in preparation > > for the eventual support of ext4 with a block size greater than > > PAGE_SIZE. > > Is there a reason for landing this now? We don't have support for > block_size > PAGE_SIZE yet, and this patch doesn't come for free, at > least not systems with page_size < 64k. These inline functions are > *very* hot and get used in a large number of places. Have you looked > to see what it might do to text size of the ext4 code? And whether > the expansion to the icache might actually impact performance on CPU > bound workloads with very large directories? > > I will note that there are some opportunities to optimize how often we > use ext4_rec_len_from_disk. For example, it gets called from > ext4_check_dir_entry(), and often the callers of that function will > need the directory record length. So having ext4_check_dir_entry() > optionally fill in the rec_len via a passed-in pointer might be > worthwhile. Yep, the best way to do it is to leave it unmerged until it is necessary. At the same time, I will try to eliminate these regression concerns based on these suggestions. Cheers, Shida > > Cheers, > > - Ted