Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp874343pxb; Tue, 1 Feb 2022 12:11:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJxJ0HSBYgwA7qOWUYC0c2Gskt7syL9gbPIkRZeJd7sDDbOISrQneQmGU9k4OFeREzISHn/8 X-Received: by 2002:a17:902:e54c:: with SMTP id n12mr26805399plf.78.1643746317578; Tue, 01 Feb 2022 12:11:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643746317; cv=none; d=google.com; s=arc-20160816; b=mia3i3+NpfE3b2w30nq/ndGf1XDHebeb5dfiX03IfHgR12/MfDsKPn/oJk857V64sP lvjmRN/AoVfHJE/PHegJV3UUSKVoBXUerXOMK5i3Er16BjP1Lb8xsVDf4Dw2KbbOLCaD pOB8tSJhsMf+BJUWp0sLUSifNOmNe/m5eDjQzUSNxJn+YYoKkig22cGAVRlr5R1mDTZj eyLozgfobRJ7gc2LeiV7n3KsLVGs7OeYwHpUrh88jW5ZljTrzth+at1VkNq5ZqNCGKQE xlKWRDG/W1knnQR/l7zl+zHkJlLAyE7OGFrMZlPc6ORNbog4mJLkma0JQNQxjj7SzfaH O67Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=XYrQY0Bf3+oODn/Yi4p0Zm856chznyCROTWIXpYoo74=; b=fh/cR4cewTaGRdb6rxUJTcAqYo51d6xMt8rWs95VGOyDygo0ZfCnucghf605yX3wpz UWFxZ2ZckTof6Q8Xi00aDwFDo29GDt8InCctWYj/emWltZhn5wjYZIccswxlHRZKMHtG CnczWMmjmY5tjy8uq51hMWgIKOeLop/6tgP5bCppfzgyLtIForXgmR+hODkEuTWO3lkW s7naXkzRRR0MOpjpjdFt+F+87TliJVhx7ACI4q0IMm5EN/FdRLGHQh8Q2t0MBiHK0MvY ea0AUzzJn3Retvp3u02O0scjADJjXXY0mZXNixc/Y0vTyqfsFVYyb8gbPOjAFf7GMmav +K6g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=KeSSAle7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id pc4si3834549pjb.36.2022.02.01.12.11.45; Tue, 01 Feb 2022 12:11:57 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=KeSSAle7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1378958AbiAaLnY (ORCPT + 99 others); Mon, 31 Jan 2022 06:43:24 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49638 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379805AbiAaLal (ORCPT ); Mon, 31 Jan 2022 06:30:41 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7654AC061357; Mon, 31 Jan 2022 03:21:31 -0800 (PST) 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 3E7BCB82A5D; Mon, 31 Jan 2022 11:21:30 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4E501C340E8; Mon, 31 Jan 2022 11:21:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1643628089; bh=FC0HL9ckTH4WkOIPSHmL9p4xnio/Co3QBc9awdjyvTg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KeSSAle7vtDHORnj71d64DUgpVnvyboerhoGIFaufb48LCjO3zzQ0G4K/S8OLvX8G IG/kKGKZe7nW0nbvBBeXNYuLzxRTdjcAFOgC1g5v6AtbNU3pAP+2uwecLYcAsMyW6a DM6WC5XZbYMfzM5WghtgSjyNTRoDrVn2+LsOfo+k= 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 121/200] NFS: Ensure the server has an up to date ctime before hardlinking Date: Mon, 31 Jan 2022 11:56:24 +0100 Message-Id: <20220131105237.634620475@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 204975036b34f55237bc44c8a302a88468ef21b5 ] Creating a hard link 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: 9f7682728728 ("NFS: Move the delegation return down into nfs4_proc_link()") 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 @@ -2397,6 +2397,8 @@ nfs_link(struct dentry *old_dentry, stru trace_nfs_link_enter(inode, dir, dentry); d_drop(dentry); + if (S_ISREG(inode->i_mode)) + nfs_sync_inode(inode); error = NFS_PROTO(dir)->link(inode, dir, &dentry->d_name); if (error == 0) { nfs_set_verifier(dentry, nfs_save_change_attribute(dir));