From: Linus Torvalds <torvalds@linux-foundation.org>
To: Joel Becker <Joel.Becker@oracle.com>
Cc: Mark Fasheh <mfasheh@suse.com>,
Andrew Morton <akpm@linux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
ocfs2-devel@oss.oracle.com
Subject: Re: [GIT PULL] ocfs2 changes for 2.6.32
Date: Mon, 14 Sep 2009 19:01:06 -0700 (PDT) [thread overview]
Message-ID: <alpine.LFD.2.01.0909141828070.4950@localhost.localdomain> (raw)
In-Reply-To: <20090915005417.GD4507@mail.oracle.com>
On Mon, 14 Sep 2009, Joel Becker wrote:
>
> In the reflink discussion before, I proposed that a separate
> copyfile() syscall could be written that uses the same ->reflink() inode
> operation but allows degradation in the storage handling.
.. exactly how?
If you're talking about falling back to manually just copying the data,
then nobody is interested in that. User space can do that better with a
simple read-write loop or with splice, or whatever. There's no reaason
what-so-ever to do that.
But the thing is, network filesystems may be able to do server-side
copies, and the point being that they can do so _without_ transferring the
data to the client (and back). And if we do 'copyfile' (under whatever
name) for one filesystem, then I think we should strive to make sure that
it's useful for other filesystems too.
Just google for "NFS Server-side Copy". And SMB has had a COPY command
from the very beginning, I think.
And as far as I can tell, neither NFS nor CIFS could use your definition
of 'reflink()'. They aren't reflinks. Or rather, _could_ be, on the
server, of course, but what some people want to do is to avoid moving data
over the network. So it's not about "don't use more diskspace" for that
kind of application.
Do we really want to introduce a new filesystem operation that is likely
to be broken for something like that?
Now, it's possible that nobody will ever care, and that NFS server-side
copy goes the way of a lot of other failed trials. But I really hope you
have at least _talked_ to some CIFS/NFS people about this.
[ Btw, it's quite possible that CIFS/NFS people would want more than a
single entrypoint. I think they might want partial copies and status
updates etc, which would likely mean that a single ->copyfile() thing
isn't sufficient.
Maybe it's not worth it, and the complexity of something like that gets
to be too annoying. But I don't get the feeling that you've even _tried_
to see if this can be generalized to something that would be much more
widely useful ]
Now, I can see that you might want to say "fail rather than use double
the diskspace for data". But why not just do that as a flag? You already
have flags for 'copy extended attributes or not'. Why not have a flag that
says 'copy only if you can do it without any extra space'?
Linus
next prev parent reply other threads:[~2009-09-15 2:01 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-11 20:04 Joel Becker
2009-09-14 21:32 ` Linus Torvalds
2009-09-14 22:14 ` Joel Becker
2009-09-14 23:27 ` Linus Torvalds
2009-09-15 0:04 ` Joel Becker
2009-09-15 0:31 ` Linus Torvalds
2009-09-15 0:54 ` Joel Becker
2009-09-15 2:01 ` Linus Torvalds [this message]
2009-09-15 4:05 ` Arjan van de Ven
2009-09-15 4:35 ` Joel Becker
2009-09-15 4:06 ` Joel Becker
2009-09-15 16:30 ` Linus Torvalds
2009-09-15 21:45 ` Joel Becker
2009-09-16 4:20 ` Linus Torvalds
2009-09-16 4:40 ` Joel Becker
2009-09-17 16:29 ` Linus Torvalds
2009-09-17 16:38 ` Arjan van de Ven
2009-09-17 20:16 ` Linus Torvalds
2009-09-17 18:40 ` Roland Dreier
2009-09-17 20:17 ` Linus Torvalds
2009-09-17 20:34 ` Joel Becker
2009-09-18 0:29 ` Linus Torvalds
2009-09-17 20:42 ` Roland Dreier
2009-09-17 20:55 ` Linus Torvalds
2009-09-18 1:43 ` [Ocfs2-devel] " Joel Becker
2009-09-18 13:34 ` Pádraig Brady
2009-09-18 18:37 ` Joel Becker
2009-09-18 17:23 ` Peter W. Morreale
2009-09-18 18:39 ` Joel Becker
2009-09-15 6:44 ` Miklos Szeredi
2009-09-23 11:02 ` [GIT PULL] ocfs2 changes for 2.6.32 (take 2, no syscall) Joel Becker
2009-09-22 0:51 [GIT PULL] ocfs2 changes for 2.6.32 George Spelvin
2009-09-22 3:28 George Spelvin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LFD.2.01.0909141828070.4950@localhost.localdomain \
--to=torvalds@linux-foundation.org \
--cc=Joel.Becker@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mfasheh@suse.com \
--cc=ocfs2-devel@oss.oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome