From c578f007ff9d8ee3d5070960f787fa48d46b7c3c Mon Sep 17 00:00:00 2001 From: Simon Klinkert Date: Fri, 22 Jun 2012 10:17:50 -0400 Subject: [PATCH] Illumos #2901: zfs receive fails for exabyte sparse files Reviewed by: Matthew Ahrens Approved by: Dan McDonald References: https://www.illumos.org/issues/2901 Ported by: Martin Matuska Signed-off-by: Brian Behlendorf --- module/zfs/dmu_send.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/module/zfs/dmu_send.c b/module/zfs/dmu_send.c index 2f0613211..9f9003744 100644 --- a/module/zfs/dmu_send.c +++ b/module/zfs/dmu_send.c @@ -95,6 +95,9 @@ dump_free(struct backuparg *ba, uint64_t object, uint64_t offset, { struct drr_free *drrf = &(ba->drr->drr_u.drr_free); + if (length != -1ULL && offset + length < offset) + length = -1ULL; + /* * If there is a pending op, but it's not PENDING_FREE, push it out, * since free block aggregation can only be done for blocks of the