All of lore.kernel.org
 help / color / mirror / Atom feed
* question re: xfs inode to inode copy implementation
@ 2015-04-21  1:06 xfs
  2015-04-21  4:28 ` Darrick J. Wong
  0 siblings, 1 reply; 10+ messages in thread
From: xfs @ 2015-04-21  1:06 UTC (permalink / raw)
  To: xfs; +Cc: vito.caputo

Hello list,

I'm prototyping something like reflinks in xfs and was wondering if
anyone could give me some pointers on the best way to duplicate the
blocks of the shared inode at the reflink inode, the copy which must
occur when breaking the link.

It would be nice to do the transfer via the page cache after allocating
the space at the desintation inode, but it doesn't seem like I can use
any of the kernel helpers for copying the data via the address_space
structs since I don't have a struct file on hand for the copy source.
I'm doing this in xfs_file_open() so the only struct file I have is the
file being opened for writing - the destination of the copy.

What I do have on hand is the shared inode and the destination inode
opened and ready to go, and the struct file for the destination.

My prototype already mostly works just using xfs_alloc_file_space() to
allocate the appropriate space in the destination inode, but I need to
get that allocated space populated from the shared inode's extents.

Any pointers appreciated, thanks!

Regards,
Vito Caputo


P.S. I've seen Dave Chinner's mention of reflink prototypes in XFS on
lwn but haven't been able to find any code, what's the status of that?

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

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

end of thread, other threads:[~2015-04-30  8:04 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-21  1:06 question re: xfs inode to inode copy implementation xfs
2015-04-21  4:28 ` Darrick J. Wong
2015-04-21 22:27   ` Dave Chinner
2015-04-23  0:44     ` Darrick J. Wong
2015-04-23  1:13       ` Dave Chinner
2015-04-23  6:40         ` Darrick J. Wong
2015-04-26 22:40           ` Dave Chinner
2015-04-30  0:53   ` xfs
2015-04-30  6:26     ` Dave Chinner
2015-04-30  8:03       ` Darrick J. Wong

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.