Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp298521pxb; Wed, 24 Feb 2021 02:25:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJzv36gtSiEMplxgbdHfvFhOM1PUqsupfaB0qIuStfh8WFrX5fs4xn+7DFWqTlq/6FwVLafF X-Received: by 2002:aa7:d8da:: with SMTP id k26mr32616504eds.364.1614162311387; Wed, 24 Feb 2021 02:25:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614162311; cv=none; d=google.com; s=arc-20160816; b=uhuPZySAxYUqVtoo5hPNhdyO7Vto+FjT8OrACp1GQiFgj1w7SvgKKibG2Xi1w39Sc0 BQOPUa2zp/XocvSn3A7ReM3P5r5lW69t04d+KQo/VQlBrY0g0lKckQvn7Lf0LjW0yfyH 4o8MzCJBzoplaxgmThHPHcS0KEnzTrI+QY5V7jQad9ohTFHJ2nHGjAtxBWV3QRNEFyQK 569xn07eI2IUtnCDIAjWhzbLlG0jYF+vAKQTJZb7eGUveSraHGixMciQLCfOrVdlEC85 hEnItCuKfcmCL43Wp28kgIYiq4KYVEsZ0jg/iI7hw8El5dorlAd231BzsbWLvX7V4XQ/ 7GZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=al2PniugjeWkYZqRbYEP8FIqPYpSHc18eKL+g+XWcVk=; b=mUT5hGCa8DmYS84r6tkITFcz9C8JuF+H6DTk0J1pxjb5pi5JMfikYmTncOAuUVeMrf GL8O8iajtX/OtG6j0NKuDdOFuKaS+i3OjHabDLPqtvOO7YiXilqCYjpPtpL7/Aman1sP fb6PM637uCxmVMr9YDCg1OXLY4ObUMx1eaGM1JskMBmu1WLanM91AJnC+ZBJFsez2NZ/ S6UD4K3ph+exdQAPlQnvpzZMZ8OXIgX6m9tMI0m9GoqiED6b9NLtj3aSNtRs64vXRg88 YqxQCdD7WMnW8buFcLX7qtPB5IN2wKSRa6+pifFCSgwIf+2vd4oQwPk/sVR3wAZYzkjI AfzA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k22si940276eds.374.2021.02.24.02.24.37; Wed, 24 Feb 2021 02:25:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234374AbhBXKXM (ORCPT + 99 others); Wed, 24 Feb 2021 05:23:12 -0500 Received: from mx2.suse.de ([195.135.220.15]:51778 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234650AbhBXKXD (ORCPT ); Wed, 24 Feb 2021 05:23:03 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 92C26B03A; Wed, 24 Feb 2021 10:22:20 +0000 (UTC) Received: from localhost (brahms [local]) by brahms (OpenSMTPD) with ESMTPA id 4d05c3a6; Wed, 24 Feb 2021 10:23:26 +0000 (UTC) Date: Wed, 24 Feb 2021 10:23:25 +0000 From: Luis Henriques To: Olga Kornievskaia Cc: Amir Goldstein , Jeff Layton , Steve French , Miklos Szeredi , Trond Myklebust , Anna Schumaker , Alexander Viro , "Darrick J. Wong" , Dave Chinner , Greg KH , Nicolas Boichat , Ian Lance Taylor , Luis Lozano , Andreas Dilger , Christoph Hellwig , ceph-devel , linux-kernel , CIFS , samba-technical , linux-fsdevel , linux-nfs Subject: Re: [PATCH v8] vfs: fix copy_file_range regression in cross-fs copies Message-ID: References: <20210221195833.23828-1-lhenriques@suse.de> <20210222102456.6692-1-lhenriques@suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org On Tue, Feb 23, 2021 at 08:00:54PM -0500, Olga Kornievskaia wrote: > On Mon, Feb 22, 2021 at 5:25 AM Luis Henriques wrote: > > > > A regression has been reported by Nicolas Boichat, found while using the > > copy_file_range syscall to copy a tracefs file. Before commit > > 5dae222a5ff0 ("vfs: allow copy_file_range to copy across devices") the > > kernel would return -EXDEV to userspace when trying to copy a file across > > different filesystems. After this commit, the syscall doesn't fail anymore > > and instead returns zero (zero bytes copied), as this file's content is > > generated on-the-fly and thus reports a size of zero. > > > > This patch restores some cross-filesystem copy restrictions that existed > > prior to commit 5dae222a5ff0 ("vfs: allow copy_file_range to copy across > > devices"). Filesystems are still allowed to fall-back to the VFS > > generic_copy_file_range() implementation, but that has now to be done > > explicitly. > > > > nfsd is also modified to fall-back into generic_copy_file_range() in case > > vfs_copy_file_range() fails with -EOPNOTSUPP or -EXDEV. > > > > Fixes: 5dae222a5ff0 ("vfs: allow copy_file_range to copy across devices") > > Link: https://lore.kernel.org/linux-fsdevel/20210212044405.4120619-1-drinkcat@chromium.org/ > > Link: https://lore.kernel.org/linux-fsdevel/CANMq1KDZuxir2LM5jOTm0xx+BnvW=ZmpsG47CyHFJwnw7zSX6Q@mail.gmail.com/ > > Link: https://lore.kernel.org/linux-fsdevel/20210126135012.1.If45b7cdc3ff707bc1efa17f5366057d60603c45f@changeid/ > > Reported-by: Nicolas Boichat > > Signed-off-by: Luis Henriques > > I tested v8 and I believe it works for NFS. Thanks a lot for the testing. And to everyone else for reviews, feedback,... and patience. I'll now go look into the manpage and see what needs to be changed. Cheers, -- Lu?s