linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] vfs: allow copy_file_range from a swapfile
@ 2019-06-10 17:26 Amir Goldstein
  2019-06-11  1:16 ` Darrick J. Wong
  0 siblings, 1 reply; 6+ messages in thread
From: Amir Goldstein @ 2019-06-10 17:26 UTC (permalink / raw)
  To: Darrick J . Wong
  Cc: Dave Chinner, Christoph Hellwig, Theodore Ts'o, linux-xfs,
	Olga Kornievskaia, Luis Henriques, Al Viro, linux-fsdevel,
	linux-api, ceph-devel, linux-nfs, linux-cifs

read(2) is allowed from a swapfile, so copy_file_range(2) should
be allowed as well.

Reported-by: Theodore Ts'o <tytso@mit.edu>
Fixes: 96e6e8f4a68d ("vfs: add missing checks to copy_file_range")
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---

Darrick,

This fixes the generic/554 issue reported by Ted.

I intend to remove the test case of copy from swap file from
generic/554, so test is expected to pass with or without this fix.
But if you wait for next week's xfstests update before applying
this fix, then at lease maintainer that run current xfstests master
could use current copy-file-range-fixes branch to pass the tests.

Thanks,
Amir.

 mm/filemap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/filemap.c b/mm/filemap.c
index aac71aef4c61..f74e5ce7ca50 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -3081,7 +3081,7 @@ int generic_copy_file_checks(struct file *file_in, loff_t pos_in,
 	if (IS_IMMUTABLE(inode_out))
 		return -EPERM;
 
-	if (IS_SWAPFILE(inode_in) || IS_SWAPFILE(inode_out))
+	if (IS_SWAPFILE(inode_out))
 		return -ETXTBSY;
 
 	/* Ensure offsets don't wrap. */
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-06-11  5:44 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-10 17:26 [PATCH] vfs: allow copy_file_range from a swapfile Amir Goldstein
2019-06-11  1:16 ` Darrick J. Wong
2019-06-11  2:51   ` Theodore Ts'o
2019-06-11  3:29     ` Darrick J. Wong
2019-06-11  5:08       ` Christoph Hellwig
2019-06-11  5:44       ` Amir Goldstein

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).