Illumos #2901: zfs receive fails for exabyte sparse files

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Dan McDonald <danmcd@nexenta.com>

References:
  https://www.illumos.org/issues/2901

Ported by: Martin Matuska <martin@matuska.org>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
Simon Klinkert 2012-06-22 10:17:50 -04:00 committed by Brian Behlendorf
parent a47587389e
commit c578f007ff

View File

@ -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); 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, * 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 * since free block aggregation can only be done for blocks of the