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 2C069C30653 for ; Mon, 1 Jul 2024 13:49:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A9E216B008C; Mon, 1 Jul 2024 09:49:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A4F466B0092; Mon, 1 Jul 2024 09:49:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 915AA6B0093; Mon, 1 Jul 2024 09:49:40 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 73FA46B008C for ; Mon, 1 Jul 2024 09:49:40 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 24616A49D8 for ; Mon, 1 Jul 2024 13:49:40 +0000 (UTC) X-FDA: 82291316520.29.1A5D423 Received: from mail-qv1-f53.google.com (mail-qv1-f53.google.com [209.85.219.53]) by imf10.hostedemail.com (Postfix) with ESMTP id 4C18DC0017 for ; Mon, 1 Jul 2024 13:49:38 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=toxicpanda-com.20230601.gappssmtp.com header.s=20230601 header.b=27C9U39x; dmarc=none; spf=none (imf10.hostedemail.com: domain of josef@toxicpanda.com has no SPF policy when checking 209.85.219.53) smtp.mailfrom=josef@toxicpanda.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1719841754; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=4/JXsQY1meprtTaQCBMH/rREZnhH9nYDIg327XZYrLM=; b=7B9h6L+hfCdpbX3iRytpxxRnr8r7JVTcN9H3csrNAkg4z2pgbE6SSPT2mTHrYvg9L9gtO/ 7X3lk6GrybRNjAKYm51oej+wTRLv1S2q0dkC/6Ajv5OiD2qxBfyIaTVyWtDRfJhN90RC3q Ak/R4bOPotSSNy+p+rZQnq6yuvJE5jY= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719841754; a=rsa-sha256; cv=none; b=QecS+C29n9Se0BdL6j43VVyjjOhLONP6JPbwX3Y0vsDKCiVyPXaq/clYgU/o7SvLVPb+Ul MzdjBnsxFNeIFlTM5edPEVU6m8pDpV0cf7Jg7bzI3euu0BSW9jonWMYpDWNSy4iDsnXp3h a+P2gU8rZxJl1amXie1XTTbKVQQZpGw= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=toxicpanda-com.20230601.gappssmtp.com header.s=20230601 header.b=27C9U39x; dmarc=none; spf=none (imf10.hostedemail.com: domain of josef@toxicpanda.com has no SPF policy when checking 209.85.219.53) smtp.mailfrom=josef@toxicpanda.com Received: by mail-qv1-f53.google.com with SMTP id 6a1803df08f44-6b4ffc2a7abso22392486d6.1 for ; Mon, 01 Jul 2024 06:49:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=toxicpanda-com.20230601.gappssmtp.com; s=20230601; t=1719841777; x=1720446577; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=4/JXsQY1meprtTaQCBMH/rREZnhH9nYDIg327XZYrLM=; b=27C9U39xCqqB8wiZoSGSWHBhr0HG+Fzva3KfVzY7tt9ivriK4B4DwtMLGJ2ax0VzsY El0zGjTSy+8gKontYX8n+q7VnZXVQWqBH+4QSs6/lhnWPhkS8MrodjB46od1/3R7eiU2 OmYx5ND8UNzU0QpzZC2BWfrj0XPxtdB5hWCD3FOJ2favxjZ9ZcjRhEJeF+OCqu8HYL9P hOt/KtY4SniMXjMaGc6sDiotAHbMOrCDWxW9K1/oob2kktqfZGIhUiZ8zBhIi9RXKfBu oomTEkJdCPTqyfX9wjc25NGdZ5IDWqPFo1eTR11KIvZsidNGqIakcBUtRxsTalTt2u49 1WSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719841777; x=1720446577; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=4/JXsQY1meprtTaQCBMH/rREZnhH9nYDIg327XZYrLM=; b=J4Di0I6qK7c2EMglLWnstz9fzpQaKNpUYXabr8DC93/eDgYL3iz0LOVc2wTCnmrPRW kwSLu47517Jn+cM5jZA4jMYh8Zdfk3U6AI4B8/XvmgEZp5lMKbddisTZFJ4/ukefE83H oIWuD+Apv7/LUhDxbg6mqg854IAlsyOZJn60J/cANIQAGU+ofcfuGihcGoPW/M13rS6m OsTq/ImmOqdwvOGtVvxzrmMoMWNueovxrjJ+yxWC/p4UqHAJaq1xjUVodlR03m3AKFnR neReWfsArskdTQW0UfS3hp5NBzVMrrhe25MjtDiAD1TBW8XZo9Hyk28WfzqqhWsE5ByP Z0ig== X-Forwarded-Encrypted: i=1; AJvYcCV1TbmJEIDu7O9NnGO86ZJIq/k3YB/j1nOBB/I6oX3uEM3B8pH96ushGgsr8pwkNQo8i6sbc7pudgY4myz9T9yd7bc= X-Gm-Message-State: AOJu0YyLYhhj617PWgHJ9L8+vh8Dyvsp1Q/FgWhiCJCGjBHTpbUz7zNd scNczEMocn4tzdiiI1EKsWVLaWBC6KtTta6K5WhhfMA9FYnvp0rjF6FTryNHpy8= X-Google-Smtp-Source: AGHT+IF5Q8o3oVoprCBhbVVvWMvB1AzB5Fn65AX5L6dAkIaxIGZIh7YN74qptGSpJhUhQ3WfUDtBdQ== X-Received: by 2002:a05:6214:e6a:b0:6b5:198e:353d with SMTP id 6a1803df08f44-6b5a541bfcbmr122142846d6.10.1719841777433; Mon, 01 Jul 2024 06:49:37 -0700 (PDT) Received: from localhost (syn-076-182-020-124.res.spectrum.com. [76.182.20.124]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6b59e7436dcsm32788866d6.142.2024.07.01.06.49.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 01 Jul 2024 06:49:37 -0700 (PDT) Date: Mon, 1 Jul 2024 09:49:36 -0400 From: Josef Bacik To: Jeff Layton Cc: Alexander Viro , Christian Brauner , Jan Kara , Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers , Chandan Babu R , "Darrick J. Wong" , Theodore Ts'o , Andreas Dilger , Chris Mason , David Sterba , Hugh Dickins , Andrew Morton , Andi Kleen , 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 Subject: Re: [PATCH v2 09/11] btrfs: convert to multigrain timestamps Message-ID: <20240701134936.GB504479@perftesting> References: <20240701-mgtime-v2-0-19d412a940d9@kernel.org> <20240701-mgtime-v2-9-19d412a940d9@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240701-mgtime-v2-9-19d412a940d9@kernel.org> X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 4C18DC0017 X-Stat-Signature: oqntnhe3uroskc1s9ee5373pezwxufdm X-Rspam-User: X-HE-Tag: 1719841778-157528 X-HE-Meta: U2FsdGVkX19fDiZ2/lZKKlRKY2T/ioPvZCX3nZfNZYq3xWe+WLEgPhMjkOGQeeBiq3G6JqdIVlcpHHHYfRIcFK5v2fKm3APZLPJNy2WLlrkIgPw8cOAvuGoUsqSubKJuOG4fOLY6ooJgy8ROzvc46PwFDQxwLhnIecSyEIBvdqpcwGC2RG+ZgWBoWh5aEKwnb2CDiUaw57Yt2J5hdjSALMEPTCMUvIkhRCTMSpTLESgv3OwyYsaqtdnM+J4OXcmea8Wa/u3l8jG6D+DOD6AcF5p5AepKOVZfL/9JLpuwr7Ng9SqNxITu9AxEorrYKwcAVKs4utaBGMZVjzPVOOx/o1YOKHHrLrJGkWxLvpQgHbobDdoe9SKCK2wqM5glIl/8HkxGIMOPAAClRJXmP3PM3/vT4GC9/97ALbW4ZLYEk3fmK0oUDsBGtoV3cRXhPkWsXQn2JA23XPlKeh5VyyHCcGern2DcxoQY6HuZYCih5+zkmAPpTrjPk7wytpolMtkdQE27DBMqF0Sp2UOwcpGQHu5q5Fe8HZCleHXFYeYtOT5noEZLGsrBHOGjgqutUtsV7y/JdWt3Yfs1KZpjJKMfNHtB/oeVRlMflNiLc75qTUYivbfP2Fxuc3GckJchnYfE0fRUKXBcUq7SAR2+Jie6QVqiYJzqS6FutEnQozIY3TMCnAliJQ38qie4Sfz9ALZsxZrCstVxXEgwo8ZodZtVMagRPlSIT+JyDAI1/jLHQBcbooX8xKugHoh/apNjBGv1dQ6hcNzGrMUfmbvp+yrU9bgpS39ocNh5iSmln0V3kOcWoUDdKbo3mNN2TS4P6ScaGe7nMRV695jegCyCK/Uh7s53NTwym4wEUpQK8v6tAX+lzFV7b+QJA2DQyN78zTuBgprNeogid7+x0lYwxVzv5xSEWbxG63xJmChBYh5W8SVHuWdFJ5sI4hz5+DUYsi27s+YCox0mPqF7KIdzSRw NGLQb6XE xLa4tfx+YB4x2I4YtCFs3uXagLUAxCScte2w79eYmjCw2h2Pu1irDRnWDi6tNLpLR+XvwgadDjbcmKRwTUTBUvpI8iHOAoAUNhZGSd5CXtJ+0aishvR/cw5iLbpmP1jyZ38truf26RxRSrpr4zpBsGL+f6olxTi/LTmOh3x1PAUIN+rN8W3CJnEd8TNwpop6xwziIpO08V8BfUjmpGzyo9kYIDaag1A8akFnggU/BxLhMdHoZVrvbLJ4CcsQTUiUcuAzmlSRuweH6V/5NVqYbeerBaRE2bRWkIn0Rjy2z6c3rZdAQFhv0repyZ9rZic56TW6siAqahPI+AJMBd/3+q612V0kMSyhqeHSNby18styayCNmit5Uljf+rcZBZFHuqZJl 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 Mon, Jul 01, 2024 at 06:26:45AM -0400, Jeff Layton wrote: > Enable multigrain timestamps, which should ensure that there is an > apparent change to the timestamp whenever it has been written after > being actively observed via getattr. > > Beyond enabling the FS_MGTIME flag, this patch eliminates > update_time_for_write, which goes to great pains to avoid in-memory > stores. Just have it overwrite the timestamps unconditionally. > > Signed-off-by: Jeff Layton > --- > fs/btrfs/file.c | 25 ++++--------------------- > fs/btrfs/super.c | 3 ++- > 2 files changed, 6 insertions(+), 22 deletions(-) > > diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c > index d90138683a0a..409628c0c3cc 100644 > --- a/fs/btrfs/file.c > +++ b/fs/btrfs/file.c > @@ -1120,26 +1120,6 @@ void btrfs_check_nocow_unlock(struct btrfs_inode *inode) > btrfs_drew_write_unlock(&inode->root->snapshot_lock); > } > > -static void update_time_for_write(struct inode *inode) > -{ > - struct timespec64 now, ts; > - > - if (IS_NOCMTIME(inode)) > - return; > - > - now = current_time(inode); > - ts = inode_get_mtime(inode); > - if (!timespec64_equal(&ts, &now)) > - inode_set_mtime_to_ts(inode, now); > - > - ts = inode_get_ctime(inode); > - if (!timespec64_equal(&ts, &now)) > - inode_set_ctime_to_ts(inode, now); > - > - if (IS_I_VERSION(inode)) > - inode_inc_iversion(inode); > -} > - > static int btrfs_write_check(struct kiocb *iocb, struct iov_iter *from, > size_t count) > { > @@ -1171,7 +1151,10 @@ static int btrfs_write_check(struct kiocb *iocb, struct iov_iter *from, > * need to start yet another transaction to update the inode as we will > * update the inode when we finish writing whatever data we write. > */ > - update_time_for_write(inode); > + if (!IS_NOCMTIME(inode)) { > + inode_set_mtime_to_ts(inode, inode_set_ctime_current(inode)); > + inode_inc_iversion(inode); You've dropped the if (IS_I_VERSION(inode)) check here, and it doesn't appear to be in inode_inc_iversion. Is there a reason for this? Thanks, Josef