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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id F296DC41535 for ; Mon, 31 Jan 2022 11:31:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1350576AbiAaLbo (ORCPT ); Mon, 31 Jan 2022 06:31:44 -0500 Received: from ams.source.kernel.org ([145.40.68.75]:39570 "EHLO ams.source.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1358707AbiAaLVh (ORCPT ); Mon, 31 Jan 2022 06:21:37 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 82138B82A5D; Mon, 31 Jan 2022 11:21:36 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id AF059C340EE; Mon, 31 Jan 2022 11:21:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1643628095; bh=RQ4L08h1IUK7PpYk9Wr7oozTMHL0Zyc7vLxsWVZV6O4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FqotgQ3oxv1PtiCBR4bU23zo0+qCuGU3cDREX0vNZleqYd63KVaHG6rHZ2UslgSGD XhdFQYXU+RC8+DK75fRyW3LV17WCCdOeZ/xxPfgQV5pQQCTAOMpJMxX2FM0kgwv2B4 uiptjMUQk6yByJ107VbJAHQJL/EbkpjSen8fGCA4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Trond Myklebust , Anna Schumaker , Sasha Levin Subject: [PATCH 5.16 122/200] NFS: Ensure the server has an up to date ctime before renaming Date: Mon, 31 Jan 2022 11:56:25 +0100 Message-Id: <20220131105237.665782839@linuxfoundation.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220131105233.561926043@linuxfoundation.org> References: <20220131105233.561926043@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Trond Myklebust [ Upstream commit 6ff9d99bb88faebf134ca668842349d9718e5464 ] Renaming a file is required by POSIX to update the file ctime, so ensure that the file data is synced to disk so that we don't clobber the updated ctime by writing back after creating the hard link. Fixes: f2c2c552f119 ("NFS: Move delegation recall into the NFSv4 callback for rename_setup()") Signed-off-by: Trond Myklebust Signed-off-by: Anna Schumaker Signed-off-by: Sasha Levin --- fs/nfs/dir.c | 2 ++ 1 file changed, 2 insertions(+) --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -2488,6 +2488,8 @@ int nfs_rename(struct user_namespace *mn } } + if (S_ISREG(old_inode->i_mode)) + nfs_sync_inode(old_inode); task = nfs_async_rename(old_dir, new_dir, old_dentry, new_dentry, NULL); if (IS_ERR(task)) { error = PTR_ERR(task);