From patchwork Fri Sep 13 12:22:22 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 173756 Delivered-To: patch@linaro.org Received: by 2002:a05:6e02:ce:0:0:0:0 with SMTP id r14csp86260ilq; Fri, 13 Sep 2019 05:22:33 -0700 (PDT) X-Google-Smtp-Source: APXvYqzJCyf1VUFGuFC7KjFVLLWoS+2+u6aKms5/kUdbFj5ZpX1JAd8ynigwI8K8Sf7htesxXIxp X-Received: by 2002:a65:41cb:: with SMTP id b11mr11235844pgq.241.1568377352842; Fri, 13 Sep 2019 05:22:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568377352; cv=none; d=google.com; s=arc-20160816; b=eeh/3DSrooqqscTR0NweNiFq/6XrcDbeZ2Cj5XSIba5ZbJIpwnDrx+V7zlF2LlVHP4 3b9kbyBAJ/hXG5Nx5ZpM4Bh/nzDo0hL0PddDyEm7cXEICvHSY3NFbvs8qldzkqo0EYjd dBltiGO9piz1MXLwZQHjgaMnwVP5RfkQWH/j5/tTHRKOkF70aKbR12JO9wXE2MEVefPg GX0B18RC1XCnwnSwRb5xkMjqZW7qVoYbm2IEyYw/KDHHe5So1MWFwRNK2ONajNn1Zc3u IsF8LB0nf30fTnLIdG7wVu7zja+ec5vnsvobeYhB3dEhQADXsb/8aQuLtGxksPJoPrA1 kq8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence:subject :mime-version:message-id:date:to:from:dkim-signature:delivered-to; bh=q4F1OQWs5M72SCKRtRMNDjPKUy2GZGzxmF+OscF2JJs=; b=L3hAfMswGXhWBBOXm2fVyTDPb4Eq4GwWwPVjaOsB72QQsJsb488rY7RaaDwK/VPBk1 PSfqJ6OCWDrM3gPXO9sxJ9FzBdlfO5HJE7d+lytvsqj4apNqu7J+QJDN5dln8Ab1iFkU gmGjy6hN0T6LL2Df8plMcrMh6PItPtq5X4pJtEq4pwPsU5ZCCe7A9NOt38wtGumjr/zc abfR9sb2PKMRh/clkxuhJmyVzeIIIslsIyOLCte6Hm4xkEEHlcbJVAIrxG85GtRVLA+B gsUanS1odW94jLifpTs0TAxphnyfyXapY9ruswR0Tx5w5RXQF4uCexopQTem8bW0CsSP nlPw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=ysbXESlL; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id k6si2333851pje.39.2019.09.13.05.22.32; Fri, 13 Sep 2019 05:22:32 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=ysbXESlL; spf=pass (google.com: best guess record for domain of openembedded-core-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-core-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from ec2-34-214-78-129.us-west-2.compute.amazonaws.com (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id 3C0DA7E830; Fri, 13 Sep 2019 12:22:29 +0000 (UTC) X-Original-To: openembedded-core@lists.openembedded.org Delivered-To: openembedded-core@lists.openembedded.org Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) by mail.openembedded.org (Postfix) with ESMTP id DBF3B751D2 for ; Fri, 13 Sep 2019 12:22:27 +0000 (UTC) Received: by mail-wr1-f52.google.com with SMTP id a11so22126190wrx.1 for ; Fri, 13 Sep 2019 05:22:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=Il4qsnBT8LOySfazm+7++YQj68XSPwNeN575yEyFKtI=; b=ysbXESlL3mWNKxL1JMuPvkC7GFbJ0ZvTOX6PSY0a4iN1Sx3kovMEye4YFxUNvLqkrX eJ1i4VEX9olQmjdjZ3p2nwSNed60Rjr5l6L14krG7pvokFDSpvHBBtexHNp8kOU5oQJ/ nby5a/6sHx/DnLAWAPqH2Wwc08TrxAjJOrfzDwu1tZ/PwQn//Zyez0d/zyi5z5cDqBNh NYjjtirfKlxgXW4hGLGHmO9zSNE6ZEhs88Nw13GHa3Yt1xb/wjOHqwmuPeDgveG/mMrU ED/N83sgH8CMVmQxkkR9rk9T9GpOuTkVun14auyJxhN+o/TgIR/W2E872cIh3YwknklA nhRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=Il4qsnBT8LOySfazm+7++YQj68XSPwNeN575yEyFKtI=; b=OMfQv7uZWtnveXDJk2ou5Wv/BsUYw4vnt6Vijtoaa0USBxGHDU97Nhe78MnMVyFAiw VT0+XOAGWJw6WsQPcibOLoqrIB6CQ6LlYT+c273QtMhygWPa3Bg4pq4ovMWoPd21caEp 2F/dXwHylmyNMein+8H7AVDp3/92nG3EJvvwdK+1QMlDsSamgZXoRVJeIV0QO7eMfhvn Da06jbrI2LkbwBlhJ9vUln02h1eJGMy7mijDoIiWW1KgHjup02cuTdXyEFFf6STmC8Z6 iyICsrV1jrpUxl0LQwNZNooXcgjRjy0m121MvT7gIpVABQ49Cjra3yQ3vhs+j+nVRnaB a7yw== X-Gm-Message-State: APjAAAUVbdJfoSt2Vmu4+A5R+oSuzidla+jca7I5ieBcGMFKwK4GMI31 faP163FRfikfOOCrgyJbRq7iQ/WtNcw= X-Received: by 2002:a5d:5612:: with SMTP id l18mr39330605wrv.177.1568377347942; Fri, 13 Sep 2019 05:22:27 -0700 (PDT) Received: from flashheart.burtonini.com (35.106.2.81.in-addr.arpa. [81.2.106.35]) by smtp.gmail.com with ESMTPSA id y186sm2640721wmd.26.2019.09.13.05.22.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Sep 2019 05:22:26 -0700 (PDT) From: Ross Burton To: openembedded-core@lists.openembedded.org Date: Fri, 13 Sep 2019 13:22:22 +0100 Message-Id: <20190913122222.19350-1-ross.burton@intel.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [OE-core] [PATCH] adwaita-icon-theme: fix rare install race X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: openembedded-core-bounces@lists.openembedded.org Errors-To: openembedded-core-bounces@lists.openembedded.org There have been rare errors during the build of adwaita-icon-theme, such as: Exception: bb.process.ExecutionError: Execution of '.../temp/run.sysroot_stage_all.45186' failed with exit code 2: cpio: ./icons/Adwaita/32x32/legacy/_inst.34160_: Cannot stat: No such file or directory cpio: ./icons/Adwaita/32x32/legacy/_inst.33428_: Cannot stat: No such file or directory cpio: ./icons/Adwaita/32x32/legacy/_inst.35421_: Cannot stat: No such file or directory cpio: ./icons/Adwaita/32x32/legacy/_inst.34533_: Cannot stat: No such file or directory cpio: ./icons/Adwaita/32x32/legacy/_inst.35366_: Cannot stat: No such file or directory The problem was that a previous optimisation (oe-core cd9af17028) to massively increase the install speed (by parallelling the hundreds of installs) was subtly wrong. It was essentially doing this: for i in list; do install i & done wait In pure shell this does parallelise the install commands and then wait for them all to finish before exiting, but in Makefiles *each line in a separate shell*. The actual Makefile is closer to this: for i in list; do \ install i & \ done wait The backslashes are required to write a multi-line for loop in a Makefile, but note that when the loop ends the shell exits and all of the install processes that are still running are disowned. The wait command then executes in a new shell, and there are no childen to wait for. The fix is trivial: add more backslashes so that the wait is part of the same shell. Signed-off-by: Ross Burton --- ...001-Run-installation-commands-as-shell-jobs.patch | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) -- 2.20.1 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch index 6c38e237f40..c4d7e2583bd 100644 --- a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch +++ b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch @@ -24,7 +24,8 @@ index 1c940a5..3998ee6 100644 - $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \ + $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \ done; \ - done; +- done; ++ done; \ + wait ## FIXME we should add a way to remove links generated by icon mapping @@ -45,7 +46,8 @@ index 86f4d7c..3fae8c1 100644 $(mkdir_p) $(DESTDIR)$(themedir)/scalable-up-to-32/$$context; \ - $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file; \ + $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \ - done +- done ++ done; \ + wait uninstall-local: @@ -61,7 +63,8 @@ index 24aac9b..61ba071 100644 - $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \ + $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \ done; \ - done +- done ++ done; \ for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \ context="`dirname $$file`"; \ $(mkdir_p) $(DESTDIR)$(themedir)/scalable/$$context; \ @@ -72,7 +75,8 @@ index 24aac9b..61ba071 100644 - $(GTK_ENCODE_SYMBOLIC_SVG) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $$size -o $(DESTDIR)$(themedir)/$$size/$$context; \ + $(GTK_ENCODE_SYMBOLIC_SVG) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $$size -o $(DESTDIR)$(themedir)/$$size/$$context & \ done \ - done +- done ++ done; \ + wait uninstall-local: