From patchwork Wed Dec 10 20:51:42 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mwilck@arcor.de X-Patchwork-Id: 5472501 Return-Path: X-Original-To: patchwork-linux-btrfs@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id EC0729F444 for ; Wed, 10 Dec 2014 21:06:18 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 39ADA201B4 for ; Wed, 10 Dec 2014 21:06:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 753162018E for ; Wed, 10 Dec 2014 21:06:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933355AbaLJVGE (ORCPT ); Wed, 10 Dec 2014 16:06:04 -0500 Received: from mail-in-12.arcor-online.net ([151.189.21.52]:34612 "EHLO mail-in-12.arcor-online.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933322AbaLJVFn (ORCPT ); Wed, 10 Dec 2014 16:05:43 -0500 Received: from mail-in-01-z2.arcor-online.net (mail-in-01-z2.arcor-online.net [151.189.8.13]) by mx.arcor.de (Postfix) with ESMTP id 4061326315 for ; Wed, 10 Dec 2014 22:05:42 +0100 (CET) Received: from mail-in-10.arcor-online.net (mail-in-10.arcor-online.net [151.189.21.50]) by mail-in-01-z2.arcor-online.net (Postfix) with ESMTP id 438257DA0FF; Wed, 10 Dec 2014 22:05:42 +0100 (CET) X-Greylist: Passed host: 188.96.131.100 X-DKIM: Sendmail DKIM Filter v2.8.2 mail-in-10.arcor-online.net 1EF7A2D66DB DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arcor.de; s=mail-in; t=1418245542; bh=eWXItkqHlwU3ujU6SKaOCBVe/3GRq5AbJTEM5/RVcfU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References; b=blzngpQYvk/oO78Opd+gc56fMJxG/flR5t3e8JNCufIwiFH9uzWc9UsGiGdLbcwX4 eF0ci/LTdgRNFQ1uXDA1warm13JodLfX+2xtEV/oyh2QF4epzenk23C2yv8XO2QRcd bNXgK1S5Oz13+nHKlCQ2NOMVnTigLNJutYdRag+w= X-Greylist: Passed host: 188.96.131.100 Received: from localhost.localdomain (dslb-188-096-131-100.188.096.pools.vodafone-ip.de [188.96.131.100]) (Authenticated sender: mwilck@arcor.de) by mail-in-10.arcor-online.net (Postfix) with ESMTPSA id 1EF7A2D66DB; Wed, 10 Dec 2014 22:05:42 +0100 (CET) From: mwilck@arcor.de To: linux-btrfs@vger.kernel.org Cc: mwilck@arcor.de Subject: [PATCH 12/18] btrfs restore: check progress of file restoration Date: Wed, 10 Dec 2014 21:51:42 +0100 Message-Id: <1418244708-7087-13-git-send-email-mwilck@arcor.de> X-Mailer: git-send-email 1.7.3.4 In-Reply-To: <1418244708-7087-1-git-send-email-mwilck@arcor.de> References: <1418244708-7087-1-git-send-email-mwilck@arcor.de> Sender: linux-btrfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, FREEMAIL_FROM,RCVD_IN_DNSWL_HI,T_DKIM_INVALID,T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Martin Wilck extents should be ordered by file offset. Expect no overlaps, and report holes. Signed-off-by: Martin Wilck --- cmds-restore.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/cmds-restore.c b/cmds-restore.c index 004c82e..80081b8 100644 --- a/cmds-restore.c +++ b/cmds-restore.c @@ -739,6 +739,14 @@ static int copy_file(struct btrfs_root *root, int fd, struct btrfs_key *key, ret = -1; goto set_size; } + if (found_key.offset < next_pos) { + fprintf(stderr, "extent overlap, %llu < %llu\n", + found_key.offset, next_pos); + ret = -1; + goto set_size; + } else if (found_key.offset > next_pos) + fprintf(stderr, "hole at %llu (%llu bytes)\n", + next_pos, found_key.offset - next_pos); bytes_written = 0ULL; if (extent_type == BTRFS_FILE_EXTENT_PREALLOC)