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 AA27CC3064D for ; Tue, 2 Jul 2024 15:58:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 293146B0095; Tue, 2 Jul 2024 11:58:14 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 243CD6B0096; Tue, 2 Jul 2024 11:58:14 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0E3846B0098; Tue, 2 Jul 2024 11:58:14 -0400 (EDT) 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 E54F26B0095 for ; Tue, 2 Jul 2024 11:58:13 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 864A1160368 for ; Tue, 2 Jul 2024 15:58:13 +0000 (UTC) X-FDA: 82295269266.10.8BE4030 Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf23.hostedemail.com (Postfix) with ESMTP id 0C33614000B for ; Tue, 2 Jul 2024 15:58:10 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=VwVHIaKM; spf=pass (imf23.hostedemail.com: domain of jlayton@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=jlayton@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1719935868; 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=yAxpNc/j1H0lyF8Ynd7Qrc3hhJ0EXoOLvIipfqRn/+4=; b=v6Ru/0aLjqseLLeALmDy1AV6RX3RiPNYJUVSbpvsEz28JLkWwW2cO59ESmRrw9q0jzNKTy yUDnnfJSZ4PTTTpocTr44kA7f1ABhVeY/SY2r3pjXLEpnvnZrwgfmor1uQ90wPuGfA6tT6 /+DUcxwJShmef9Oc2L5Af3kaAThOT58= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719935868; a=rsa-sha256; cv=none; b=oeu4iWX6LNThydbnbLQkbh0V/LNhHSY6d6CAGA6UtROb6NMjex3Vc0mLqIxjOlOLsIL8Wo PDv9nAPD77/MzSEsEahB1YlGlAWXJQ6ADwF1d239AprwqIvL3wm+8yEkOSLv8uapH1fh2U RDScISxphXiCjFuY7Ha5mS3DCcnWdyM= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=VwVHIaKM; spf=pass (imf23.hostedemail.com: domain of jlayton@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=jlayton@kernel.org; dmarc=pass (policy=none) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 28619CE1D48; Tue, 2 Jul 2024 15:58:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 24005C116B1; Tue, 2 Jul 2024 15:58:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1719935886; bh=yAxpNc/j1H0lyF8Ynd7Qrc3hhJ0EXoOLvIipfqRn/+4=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=VwVHIaKMM6joL2OslHAIAERB/dK2OuRh+N0Rf+7RMwG7aMwTxfVAG3DGHCTWgLyxD D9QtAFozBzc0dfXK/zUPJkn93gkFxJX6y4A9x4CCxeoKydX1JVfdG4H9JISZZgBxoP u+Tu5bHyJGR070eTHxhXAu/RzX0XoNtClq0VehfB6+i/tQOvIlW8TLOIad+lsIWlF9 8Rsucv9SKOiMNOqpzS32EjPT8qjnE+2EZ/7cl3xwlnLCawNDUCcvHg62u28nndcycD VaCvTYyaBg5zquzAKQ3wkGbsjU3mTAY2vaEGX7W5z3cnlk3IU2OSbQ0MmJeXSYlNr2 CupBjaiOz8EqA== Message-ID: <4ec1fbdc6568e16da40f41789081805e764fd83e.camel@kernel.org> Subject: Re: [PATCH 01/10] fs: turn inode ctime fields into a single ktime_t From: Jeff Layton To: Christoph Hellwig Cc: Jan Kara , "Darrick J. Wong" , Alexander Viro , Christian Brauner , Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers , Chandan Babu R , Theodore Ts'o , Andreas Dilger , Chris Mason , Josef Bacik , David Sterba , Hugh Dickins , Andrew Morton , kernel-team@fb.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org, linux-xfs@vger.kernel.org, linux-ext4@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-mm@kvack.org, linux-nfs@vger.kernel.org Date: Tue, 02 Jul 2024 11:58:02 -0400 In-Reply-To: References: <20240701224941.GE612460@frogsfrogsfrogs> <3042db2f803fbc711575ec4f1c4a273912a50904.camel@kernel.org> <20240702101902.qcx73xgae2sqoso7@quack3> <958080f6de517cf9d0a1994e3ca500f23599ca33.camel@kernel.org> <09ad82419eb78a2f81dda5dca9caae10663a2a19.camel@kernel.org> Autocrypt: addr=jlayton@kernel.org; prefer-encrypt=mutual; keydata=mQINBE6V0TwBEADXhJg7s8wFDwBMEvn0qyhAnzFLTOCHooMZyx7XO7dAiIhDSi7G1NPxwn8jdFUQMCR/GlpozMFlSFiZXiObE7sef9rTtM68ukUyZM4pJ9l0KjQNgDJ6Fr342Htkjxu/kFV1WvegyjnSsFt7EGoDjdKqr1TS9syJYFjagYtvWk/UfHlW09X+jOh4vYtfX7iYSx/NfqV3W1D7EDi0PqVT2h6v8i8YqsATFPwO4nuiTmL6I40ZofxVd+9wdRI4Db8yUNA4ZSP2nqLcLtFjClYRBoJvRWvsv4lm0OX6MYPtv76hka8lW4mnRmZqqx3UtfHX/hF/zH24Gj7A6sYKYLCU3YrI2Ogiu7/ksKcl7goQjpvtVYrOOI5VGLHge0awt7bhMCTM9KAfPc+xL/ZxAMVWd3NCk5SamL2cE99UWgtvNOIYU8m6EjTLhsj8snVluJH0/RcxEeFbnSaswVChNSGa7mXJrTR22lRL6ZPjdMgS2Km90haWPRc8Wolcz07Y2se0xpGVLEQcDEsvv5IMmeMe1/qLZ6NaVkNuL3WOXvxaVT9USW1+/SGipO2IpKJjeDZfehlB/kpfF24+RrK+seQfCBYyUE8QJpvTZyfUHNYldXlrjO6n5MdOempLqWpfOmcGkwnyNRBR46g/jf8KnPRwXs509yAqDB6sELZH+yWr9LQZEwARAQABtCBKZWZmIExheXRvbiA8amxheXRvbkBrZXJuZWwub3JnPokCOAQTAQIAIgUCWe8u6AIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQAA5oQRlWghUuCg/+Lb/xGxZD2Q1oJVAE37uW308UpVSD2tAMJUvFTdDbfe3zKlPDTuVsyNsALBGclPLagJ5ZTP+Vp2irAN9uwBuacBOTtmOdz4ZN2tdvNgozzuxp4CHBDVzAslUi2idy+xpsp47DWPxYFIRP3M8QG/aNW052L aPc0cedY xp8+9eiVUNpxF4SiU4i9JDfX/sn9XcfoVZIxMpCRE750zvJvcCUz9HojsrMQ1NFc7MFT1z3MOW2/RlzPcog7xvR5ENPH19ojRDCHqumUHRry+RF0lH00clzX/W8OrQJZtoBPXv9ahka/Vp7kEulcBJr1cH5Wz/WprhsIM7U9pse1f1gYy9YbXtWctUz8uvDR7shsQxAhX3qO7DilMtuGo1v97I/Kx4gXQ52syh/w6EBny71CZrOgD6kJwPVVAaM1LRC28muq91WCFhs/nzHozpbzcheyGtMUI2Ao4K6mnY+3zIuXPygZMFr9KXE6fF7HzKxKuZMJOaEZCiDOq0anx6FmOzs5E6Jqdpo/mtI8beK+BE7Va6ni7YrQlnT0i3vaTVMTiCThbqsB20VrbMjlhpf8lfK1XVNbRq/R7GZ9zHESlsa35ha60yd/j3pu5hT2xyy8krV8vGhHvnJ1XRMJBAB/UYb6FyC7S+mQZIQXVeAA+smfTT0tDrisj1U5x6ZB9b3nBg65ke5Ag0ETpXRPAEQAJkVmzCmF+IEenf9a2nZRXMluJohnfl2wCMmw5qNzyk0f+mYuTwTCpw7BE2H0yXk4ZfAuA+xdj14K0A1Dj52j/fKRuDqoNAhQe0b6ipo85Sz98G+XnmQOMeFVp5G1Z7r/QP/nus3mXvtFsu9lLSjMA0cam2NLDt7vx3l9kUYlQBhyIE7/DkKg+3fdqRg7qJoMHNcODtQY+n3hMyaVpplJ/l0DdQDbRSZi5AzDM3DWZEShhuP6/E2LN4O3xWnZukEiz688d1ppl7vBZO9wBql6Ft9Og74diZrTN6lXGGjEWRvO55h6ijMsLCLNDRAVehPhZvSlPldtUuvhZLAjdWpwmzbRIwgoQcO51aWeKthpcpj8feDdKdlVjvJO9fgFD5kqZQiErRVPpB7VzA/pYV5Mdy7GMbPjmO0IpoL0tVZ8JvUzUZXB3ErS/dJflvboAAQeLpLCk QjqZiQ/D CmgJCrBJst9Xc7YsKKS379Tc3GU33HNSpaOxs2NwfzoesyjKU+P35czvXWTtj7KVVSj3SgzzFk+gLx8y2Nvt9iESdZ1Ustv8tipDsGcvIZ43MQwqU9YbLg8k4V9ch+Mo8SE+C0jyZYDCE2ZGf3OztvtSYMsTnF6/luzVyej1AFVYjKHORzNoTwdHUeC+9/07GO0bMYTPXYvJ/vxBFm3oniXyhgb5FtABEBAAGJAh8EGAECAAkFAk6V0TwCGwwACgkQAA5oQRlWghXhZRAAyycZ2DDyXh2bMYvI8uHgCbeXfL3QCvcw2XoZTH2l2umPiTzrCsDJhgwZfG9BDyOHaYhPasd5qgrUBtjjUiNKjVM+Cx1DnieR0dZWafnqGv682avPblfi70XXr2juRE/fSZoZkyZhm+nsLuIcXTnzY4D572JGrpRMTpNpGmitBdh1l/9O7Fb64uLOtA5Qj5jcHHOjL0DZpjmFWYKlSAHmURHrE8M0qRryQXvlhoQxlJR4nvQrjOPMsqWD5F9mcRyowOzr8amasLv43w92rD2nHoBK6rbFE/qC7AAjABEsZq8+TQmueN0maIXUQu7TBzejsEbV0i29z+kkrjU2NmK5pcxgAtehVxpZJ14LqmN6E0suTtzjNT1eMoqOPrMSx+6vOCIuvJ/MVYnQgHhjtPPnU86mebTY5Loy9YfJAC2EVpxtcCbx2KiwErTndEyWL+GL53LuScUD7tW8vYbGIp4RlnUgPLbqpgssq2gwYO9m75FGuKuB2+2bCGajqalid5nzeq9v7cYLLRgArJfOIBWZrHy2m0C+pFu9DSuV6SNr2dvMQUv1V58h0FaSOxHVQnJdnoHn13g/CKKvyg2EMrMt/EfcXgvDwQbnG9we4xJiWOIOcsvrWcB6C6lWBDA+In7w7SXnnokkZWuOsJdJQdmwlWC5L5ln9xgfr/4mOY38B0U= Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.50.4 (3.50.4-1.fc39) MIME-Version: 1.0 X-Stat-Signature: q3shqruumwuwgejjas18k5ktthbx3mmi X-Rspamd-Queue-Id: 0C33614000B X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1719935890-245150 X-HE-Meta: U2FsdGVkX1+0W7b/shlUSzbJ56QlYxsevjwe8F8bIR6TOGbNZWddhFlslYk+WS6lMrmmUFJ2PnNL9hRWnQo9ufBbHBnLEWvkDWxGnFsXZs9HbXeLmfJidRPFQXkqBlrk8NLjZCqaTnNNDrlhM5pvpSU0gEEy1Tn/7wCAwI6pkLGFyMa5ev9FNTZVppXsootFKrCrUCYdZe17KJ40JlxIG4NylKS2F9Uy0OO7PwXrxxvSEyfDxLz3frX8tq6q56dL9aFS0Cy6H3NEUrquZipgtLPMOP0pDIBtcGGQT4fdzm8c3WEmEqLBpmhb5QEYWUwz3PnjrFlL5oLC7sggeqUz8QDlWqwZbnBhq7HfB0bo8S3s0rPKGw4OpV4BTQVs1kR738qLiNSI9Yoy9Bs3XZ2hubP0+Sc6GyOGXPiMM1J4+U48Lwpehqod4TqOLit4L047ekPJYQUVB15cyVp42+08Pi/G0vPM1huCRpxx4inqf+BFKG6Zv76EhXoAXLXf7aIWo3PNAJDfTvF8tZT+qSL2NFbxjxjk4TvZTX1ro0LuE/8BCP/m+oMCjrJ5lPUSdCczKb+xoZYVNxCE5sCxFUK22eGXHHMMkCLYbIgCNDIVbltogUzOh10cWx3BGwvUwfLhTt8c1PBwkZan7jreIu0m0ClW/lqpdFjGAOwO3+5oyyaw/rsdRrREc6qeouqRXPJ92Q+xiyqa4Ag2AjMtGt+HQYXXNzHbqmbkwMIW8ILqktZBSnw804Y1QZH7gnwnt2eO6uxdd0q4CUkvA41llMWy606IwikjY9mCHIbJ+biMBWCoG0isuHfK80bRNoAlfPDNKkzMSYYhlZdvvZslZSNd8Be9iCa1ecWu7XuvSqDsA9fEPXXkkwC6pJlDXh2pImcr/+6tz64mBj42iAXFQezlwpqjHH+pYlrUFLAihsPpefBcVOBlStBzl7WM6P3WZ5fvD3XqTl1cTebPV7S9KCC JIxbpHxh mwgk5q4/ns3NSvYxXUml5NKsIlpKS9TTXVVeY/wD7M/2iXpxQm01cliUDT884nv/5pu7SMEhNRqBGKLDzDyz0RSl9swm961FgQ6yWKJA5AepZFqZCHk9vohmYMCMjR1JEkfnhGmWGiidEKFm1b7IYKa7TdcBCEvI/TNxLHJoaHl2QWlLPwyk0fY1Sol19Vutz1mEm4uwbE9BCrU/To49TXSy+PM3//9jpZ5q1tPYNNjKaBiBEurhIHoBxdAzfbjNvH+sTDq35DVgC/6CIEy4Q87r7SNoA2Yx+XacK 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 Tue, 2024-07-02 at 08:12 -0700, Christoph Hellwig wrote: > On Tue, Jul 02, 2024 at 08:21:42AM -0400, Jeff Layton wrote: > > Many of the existing callers of inode_ctime_to_ts are in void > > return > > functions. They're just copying data from an internal > > representation to > > struct inode and assume it always succeeds. For those we'll > > probably > > have to catch bad ctime values earlier. > >=20 > > So, I think I'll probably have to roll bespoke error handling in > > all of > > the relevant filesystems if we go this route. There are also > > differences between filesystems -- does it make sense to refuse to > > load > > an inode with a bogus ctime on NFS or AFS? Probably not. > >=20 > > Hell, it may be simpler to just ditch this patch and reimplement > > mgtimes using the nanosecond fields like the earlier versions did. >=20 > Thatdoes for sure sound simpler.=C2=A0 What is the big advantage of the > ktime_t?=C2=A0 Smaller size? >=20 Yeah, mostly. We shrink struct inode by 8 bytes with that patch, and we (probably) get a better cache footprint, since i_version ends up in the same cacheline as the ctime. That's really a separate issue though, so I'm not too worked up about dropping that patch. As a bonus, leaving it split across separate fields means that we can use unused bits in the nsec field for the flag, so we don't need to sacrifice any timestamp granularity either. I've got a draft rework that does this that I'm testing now. Assuming it works OK, I'll resend in a few days. Thanks for the feedback! --=20 Jeff Layton