FileStore: Fix _do_sparse_copy_range don't truncate zero sections

If calling clone_range and zero filled sections is at the ending of src
range, the target fd won't write zero filled sections. If target's
origin size shorter than needed, it will cause inconsistence between
two fd's desired range.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
StoreTest: Add tests for clone_range op

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
FileStore: Move ftruncate to do_sparse_copy

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
Merge pull request #3000 from yuyuyu101/wip-10166

Wip 10166: fiemap or FileStore::do_sparse_copy_range bug

sage-2014-12-16_08:43:28-powercycle-wip-sage-testing-distr

Reviewed-by: Sage Weil <sage@redhat.com>