Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-07-10 Thread Alex Lyakas
Alexander, this focuses on area of sending file extents: > +static int is_extent_unchanged(struct send_ctx *sctx, > + struct btrfs_path *left_path, > + struct btrfs_key *ekey) > +{ > + int ret = 0; > + struct btrfs_key key; > +

Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-07-23 Thread Alex Lyakas
Hi Alexander, I did some testing of the case where same inode, but with a different generation, exists both in send_root and in parent_root. I know that this can happen primarily when "inode_cache" option is enabled. So first I just tested some differential sends, where parent and root are unrelate

Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-07-23 Thread Alex Lyakas
Hi Arne, (pls don't take this as if I pretend to have understood the code better than you, because I have a list of questions for Alexander too). >> +/* >> + * Helper function to generate a file name that is unique in the root of >> + * send_root and parent_root. This is used to generate names fo

Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-07-25 Thread Alexander Block
On Tue, Jul 10, 2012 at 5:26 PM, Alex Lyakas wrote: > Alexander, > this focuses on area of sending file extents: > >> +static int is_extent_unchanged(struct send_ctx *sctx, >> + struct btrfs_path *left_path, >> + struct btrfs_key *ekey) >>

Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-07-25 Thread Alex Lyakas
Alexander, >> Same is true for BTRFS_FILE_EXTENT_PREALLOC extents, I think. Those >> also don't contain real data. >> So something like: >> if (left_disknr == 0 || left_type == BTRFS_FILE_EXTENT_REG) { >> ret = 1; >> goto out; >> } > Do you mean "|| left_type == BTRFS_FILE_EXTENT_P

Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-07-25 Thread Alexander Block
On Wed, Jul 25, 2012 at 7:20 PM, Alex Lyakas wrote: > Alexander, > >>> Same is true for BTRFS_FILE_EXTENT_PREALLOC extents, I think. Those >>> also don't contain real data. >>> So something like: >>> if (left_disknr == 0 || left_type == BTRFS_FILE_EXTENT_REG) { >>> ret = 1; >>> got

Re: [RFC PATCH 7/7] Btrfs: introduce BTRFS_IOC_SEND for btrfs send/receive (part 2)

2012-08-01 Thread Alexander Block
On Mon, Jul 23, 2012 at 5:17 PM, Alex Lyakas wrote: > Hi Alexander, > I did some testing of the case where same inode, but with a different > generation, exists both in send_root and in parent_root. > I know that this can happen primarily when "inode_cache" option is > enabled. So first I just tes