From patchwork Mon Jul 14 23:51:01 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 369785 X-Patchwork-Delegate: sjg@chromium.org Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 415E9140146 for ; Tue, 15 Jul 2014 09:51:47 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id ECC51A7570; Tue, 15 Jul 2014 01:51:45 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id F5jPP3nz1v-H; Tue, 15 Jul 2014 01:51:45 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 86258A753E; Tue, 15 Jul 2014 01:51:37 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id AC2EFA753E for ; Tue, 15 Jul 2014 01:51:34 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id khEn2mH9S0tX for ; Tue, 15 Jul 2014 01:51:31 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mail-vc0-f202.google.com (mail-vc0-f202.google.com [209.85.220.202]) by theia.denx.de (Postfix) with ESMTPS id 1C9B9A7537 for ; Tue, 15 Jul 2014 01:51:22 +0200 (CEST) Received: by mail-vc0-f202.google.com with SMTP id id10so859921vcb.3 for ; Mon, 14 Jul 2014 16:51:20 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=KE6e3r2whWBRtqSyaps4zZf7paoUOZKxzI4t8ZNk1QQ=; b=iwxnvUxsEcu9pqez3Zj6M9+soCKTYhi4qS62/K4JetpOmbjqiiSOQPR2sy6PtHEDUf cO1RR+sz4bvi6yD7HCUjqtYKOsv8vGQfHx9dxut9VyUsg+QF3qFU6GAr2UPrUDtv5iLZ 4Tstjki3Wij+kG5Cu/498ho6n+jpI47Wl/PVu2BYHbKvEWaOCwfn59b5JZcg7dNWmnwu 7Yd5FB8BMOhGZRT+/U2wBIOaH6cHj28XTzdS6mAXOciW/j+Gc6P20xLLG7NnHKRAyiKW tVnekSXhRv+KFrh2wcjp5g2E85CwQwzY1q12Oyj5sdvktWiGETdUDTbcxe9hTYdEp/Fj aakA== X-Gm-Message-State: ALoCoQnqvZlTAqILtrx4kqpfnDz8uG+qj66Y0HmVeP8QliQzWAXVIHABBNTrbSggMulcWGflzgSs X-Received: by 10.58.29.67 with SMTP id i3mr9656266veh.3.1405381880256; Mon, 14 Jul 2014 16:51:20 -0700 (PDT) Received: from corp2gmr1-2.hot.corp.google.com (corp2gmr1-2.hot.corp.google.com [172.24.189.93]) by gmr-mx.google.com with ESMTPS id z50si849220yhb.3.2014.07.14.16.51.20 for (version=TLSv1.1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 14 Jul 2014 16:51:20 -0700 (PDT) Received: from kaki.bld.corp.google.com (kaki.bld.corp.google.com [172.29.216.32]) by corp2gmr1-2.hot.corp.google.com (Postfix) with ESMTP id 1A12E5A41EA; Mon, 14 Jul 2014 16:51:20 -0700 (PDT) Received: by kaki.bld.corp.google.com (Postfix, from userid 121222) id 9F076220F6A; Mon, 14 Jul 2014 17:51:19 -0600 (MDT) From: Simon Glass To: U-Boot Mailing List Date: Mon, 14 Jul 2014 17:51:01 -0600 Message-Id: <1405381865-8028-3-git-send-email-sjg@chromium.org> X-Mailer: git-send-email 2.0.0.526.g5318336 In-Reply-To: <1405381865-8028-1-git-send-email-sjg@chromium.org> References: <1405381865-8028-1-git-send-email-sjg@chromium.org> Subject: [U-Boot] [PATCH 2/6] buildman: Avoid retrying a build if it definitely failed X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de After a build fails buildman will reconfigure and try again, if it did not reconfigure before the build. However it doesn't actually keep track of whether it did reconfigure on the previous attempt. Fix that logic to avoid a pointless rebuild. This speeds things up quite a bit for failing builds. Previously they would always be built twice. Signed-off-by: Simon Glass --- tools/buildman/builder.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/buildman/builder.py b/tools/buildman/builder.py index 2990c45..39a6e8a 100644 --- a/tools/buildman/builder.py +++ b/tools/buildman/builder.py @@ -423,12 +423,14 @@ class BuilderThread(threading.Thread): force_build or self.builder.force_build, self.builder.force_build_failures) failed = result.return_code or result.stderr + did_config = do_config if failed and not do_config: # If our incremental build failed, try building again # with a reconfig. if self.builder.force_config_on_failure: result, request_config = self.RunCommit(commit_upto, brd, work_dir, True, True, False) + did_config = True do_config = request_config # If we built that commit, then config is done. But if we got @@ -445,7 +447,7 @@ class BuilderThread(threading.Thread): # Of course this is substantially slower if there are build # errors/warnings (e.g. 2-3x slower even if only 10% of builds # have problems). - if (failed and not result.already_done and not do_config and + if (failed and not result.already_done and not did_config and self.builder.force_config_on_failure): # If this build failed, try the next one with a # reconfigure.