From patchwork Thu Sep 10 14:01:58 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "MOESSBAUER, Felix" X-Patchwork-Id: 5453 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 10 Sep 2026 16:02:47 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-pl1-f188.google.com (mail-pl1-f188.google.com [209.85.214.188]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 68AE2QlY007287 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 10 Sep 2026 16:02:27 +0200 Received: by mail-pl1-f188.google.com with SMTP id d9443c01a7336-2db3734d06dsf108885805ad.0 for ; Thu, 10 Sep 2026 07:02:27 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1789048936; cv=pass; d=google.com; s=arc-20260327; b=PY/5/CIcRobEtTkoDmIzjawSw0wcS03WaKq08sonuCQJktZhxwbPuLPPsScezByim3 mQYa2dzrq3iRR61zBM4CeKCL6kEeRAxURa1yL/V55sZK6ZqF5Ekxhwd5ODdD4BYMMI/Y sN/GCtU1PD+Pr8mMWLHu5kMRi20ugntXHOHeV7Nx1L7H0lTD1mOcl0Cr0p9V6hYJ3VDM 9+sk/+YAAW7wHdS8mgXF4i/NGVRPTJU8G5VgSv7oitFTOR6HFLj7nN1Gqoj8IPo5LQZp c5eQyOYD4Ib4zJZWF76R9jXDD+RQlmck0h9LE6saud3i4onUilI257wkCOYcDTBX4Lt4 Q8Xg== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=myeuYz2eR3O76HYoTG+FFtK4VnliRbxB77uog9Ybqtw=; fh=v0wmMaMxOxUjBrs3Bwg+s6sofwoX7Sn0e2zDdf/CG6I=; b=YLd6hV2MVkUvIGGBNaSG30bPjqYjl0fhp98b+hYjZsnAv6iAckz+g5uFWxa8O/Lkoj r2ZuB8+FTKYTLw0Xjr+CC5gPWJz1LMDJAY4rIU78Eeqmkqz9MDydUKmJKAEx0Cs2X7qM IKRGMsba05rmUKmiNZnP2wANZu+eFi7Mi/l3OnRJIvLdbvPWOVjSfHn+rQl50eQ/gLzz 89aByKwpPJyBUTQLgeiiopX6zwYKl8fG0RFfDCXCi0rfDrXMtXqOhKVwpodNC+6EKp9g pMaFYBFh9R0EfbVdHF8miAEhUDV9bUNBzDr9PwJU5IQl7zwv9mYJ3+9N/8Y/8T2LufSJ e4FQ==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=qd497ZOS; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1789048936; x=1789653736; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=myeuYz2eR3O76HYoTG+FFtK4VnliRbxB77uog9Ybqtw=; b=N29kzwKLkqNmLnAKSvuTbWoA7X7vNmnKHa9ynOQrx80VEYViXc+bNTYvEWHNuEofpr WOnCaluKqPDXGLOKWPghfMlEu9DcJUzI+H7soGa8cmj2rFWD2i/OYm+b0qabwNrH92q4 V8zaDTJXr3UpuTV4tS4WZdVQdluEaPyI2535AtnBIPRLkk8UmByGaHefF5+R2bsBiwWW CAY5KZ4A8iXXQZ75UNPOdMZunPJLdSP7W5lUPBjAgXv9s1yB6wVVOZqlXV6j1RMvUQjz 8l5DAE87Q7y/otiMSWcAr8Aetqym9yQ6y2cA0ezxgYsnufTjQgPuSXrmnViRuHr39xar x5lg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789048936; x=1789653736; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=myeuYz2eR3O76HYoTG+FFtK4VnliRbxB77uog9Ybqtw=; b=f1tk1Hi2ayhbm1bf50hgJm/XNHOl10yxylVvwYSQ2XJjNY6b5XzuF/a9cSw3FhH4J6 /SLfYi3aD/w4ikQ89CtV2N8/VyXGZskyF3s8k/9syRzh8HrzqrAwawFXAnmCHgWMJMfs 4Y6vHPmbCexukSaGFI3nOhULWNKqyWk+U9gbUH+o559t7YHZQQ0F4bq2S7lRyGVL6VIi EIdL5eN/zYLmSmN5D/owr7hKb6haR3UuQ0aTahCV4Sf2N+/v1FxHVbCXQxT0b9fhwnkW ZijYNB91c5neRorn0EgSh7LtLVUlAF0+6Dq+BwTi41EqEsMGFDypkBrgzsMZmGwZXYiB tVNg== X-Forwarded-Encrypted: i=3; AKwUvBxixfwexhE9YcgIYF3Hg8AmGnIlzeBUWRaeAEURRGqXrBeMnOvVJoDA6+CvieSCUwSipyqqZ+s=@isar-build.org X-Gm-Message-State: AFuF++nqm8FydoaYUXx2+308JMcMROcdGUierBGKWfrSQar+WHJp2uxa MwtpfXDAoubkR6kI4fVvzzq++uINcQNLn68I7IcgZb7+9oqOX8OaLuXn X-Received: by 2002:a17:902:bb84:b0:2d8:d4d0:7932 with SMTP id d9443c01a7336-2db128dbeabmr368138625ad.22.1789048935783; Thu, 10 Sep 2026 07:02:15 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ATskLddhDkxJ5B+Fb2qz+IpecrHnxCsiGvq1/yqscEY4d9rubQ==" Received: by 2002:a17:902:fc8d:b0:2d6:d6f8:1242 with SMTP id d9443c01a7336-2dd0e8b09b5ls21744055ad.2.-pod-prod-05-us; Thu, 10 Sep 2026 07:02:13 -0700 (PDT) X-Received: by 2002:a17:902:ccca:b0:2c9:aae1:a61a with SMTP id d9443c01a7336-2db127cc2afmr629359125ad.14.1789048932793; Thu, 10 Sep 2026 07:02:12 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1789048932; cv=pass; d=google.com; s=arc-20260327; b=BLnZvCRHZeaXKsrgSMjVYSmNiropKqHnnVzGtmGyblmVvIVDmQAt+GignESgXq8PSq 8ETG6Y7XIQAhv8SKBRMzvF5euhgZ3pZT2G2jqj71ydf/QIkCstmvTzIJ7rEc0B3SE2yB rkZ54Je59BPhg+uJozkYwuyvCmqKIrRN0uazQfHISXG7b6EHL6HyoxpNett+fP6zeY8T 2kzgueuJHf99qvAxxuLyZeSXy/hD6n27X4M6hYzokkKnU+If/Ou+ly5WrJJ0M1KOC3Sy 5T9vkXngHfSkWqyiKoGlrSqm8VpE+fVaaaHGUyxTGvSrotaZHezg15fdLoyMppfujO9T a9hQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=mime-version:content-transfer-encoding:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=163TMW5UGzknXHCXmzklsYSxmkmZepJpcGgvvfTdWM4=; fh=2vPEtVRFZgJExMSCfX53nKBFsjiPYp/60rbGy5S5Mwo=; b=VNF7ui58dPOnAVajsPW3hxHSjDs7651ApckoomQol72hQQP7b9qVU8p5RLrJTKZP2K mAmekzKJqqlWS5ygrcXRCURBlhIQPMscHWXkRegnja0AfExblzAn6AcYLYoH6SSZq6fF /4lbf2nOWG2EQVNYk3pnquQWZqq/R/ve+qqjBQBIK3EoiH2izAniTy/GRzOF+ZBwmqJT TX8YyCMq2d1p9YrGQz8JAUjm8P28jXpUTRWHNaBIaK9rfxz0UZbcQCQX6t/fU4yG46qk ud0ZL8G72Rm2AAoFdl2yArWh+sS4iyc8ZAg0AkFNqUfk8y1Eosqev0lLfcWn8Qqi3Pcs EXKg==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=qd497ZOS; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazlp170100001.outbound.protection.outlook.com. [2a01:111:f403:c201::1]) by gmr-mx.google.com with ESMTPS id d9443c01a7336-2dc733cf1bcsi1764205ad.8.2026.09.10.07.02.12 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:02:12 -0700 (PDT) Received-SPF: pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) client-ip=2a01:111:f403:c201::1; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=S7cMU9fgeTgyt/WtexDlnT3CxrfHY5zOPO5/y1yqibcni8TDUZSHyidcAFimrW8NVXEM9pggA/Y9/NOaBClvEmZqjxWLcRYYEQuAV94eTt/xYIf7kyhS1s75cXZfVzClDPc8etLJMDlymD6nKAzBXpoVSzO8wFgeTCQOx/AlK39hybsnbO6WW2DgQeEqC+9a4d6vWqVl2Xl2on/7Jo7r8eo3seZ1a4Wc22Bn29t0LcCti+erezPFWrQjpxYtTVDyQWpYDYxcOtkQdvsevk5AJhqmdc91wlkeImaqdvZTJIInK+zNNNLwV+sagUhHwLJbz5xytn0nHbs8cPXYjD7Srg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=163TMW5UGzknXHCXmzklsYSxmkmZepJpcGgvvfTdWM4=; b=lST/Y8l9T5Yj/NTCKh01CtMpptSxxYq9pJ16oyJ8QiqRbV0gzEEjZDUnXs7N+uVMPmrcmjKgiRKfqZUQrP4L4/rhCsTlNlN+Sa09MVwnseAFONwHOfVH8KHO1k+rsWp3PSPssdKxpRV5rZjNnvtIb6Oxy49L9iLbBgve+7KEP7wwOuQJM7JTGX3ki3cHU5wm5Ih6Vd7ivPUJWF33sc6a8C+ts0V7HiYEMZ988m4Qa9OThTv2Q56folffd25Lx1l7cCPlmpZ/nFjs8R3Mfy/Tmmlrm7w4vnekwvdbfqKANyx36DP+C4gyPCiqoUWAcmRpQo8GE6lc5pN4B5qYAANIDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) by MRWPR10MB9602.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:501:9b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.9; Thu, 10 Sep 2026 14:02:10 +0000 Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c]) by AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c%6]) with mapi id 15.21.0406.007; Thu, 10 Sep 2026 14:02:10 +0000 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: "MOESSBAUER, Felix" To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH 1/4] fix(dpkg-build): make sstate updates of DEPLOY_DIR_DEB atomic Date: Thu, 10 Sep 2026 16:01:58 +0200 Message-ID: <20260910140201.250854-2-felix.moessbauer@siemens.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260910140201.250854-1-felix.moessbauer@siemens.com> References: <20260910140201.250854-1-felix.moessbauer@siemens.com> X-ClientProxiedBy: FR0P281CA0138.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::7) To AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM7PR10MB3956:EE_|MRWPR10MB9602:EE_ X-MS-Office365-Filtering-Correlation-Id: 5f500ff8-0d0e-4065-df5e-08df0f441b6c X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|10070799003|1800799024|23010399003|376014|10067099003|3023799007|18002099003|55112099003|22082099003|56012099006|5023799004|11063799006; X-Microsoft-Antispam-Message-Info: oHc1Qwfm2YeDQamPE5Ruq6gRkkt/DRiA4DaV8puRtRqlwTreOhtc9Di9BEmEO1Y2ruKfnkmlidtjUYLY5MOrXXaG7gbB/la3n6RxYIrSS/XrWuKjeXo14T+0TpbJ7racs3g9vndBMWKKiYX8Dh00IwwmxfemueaZYZdfjitrUGMbBhkItwb1FbySp7ElcrZOELq0UflohikFlHkG0VHA24+3/gY+PPPCqvQWga5Kn5/D/rLInXNZwrKKDlNSeJZksyq3b+aPIiziw4YUYnfNrxhr9zIW+nL20JPhaD/53wQJYRQieDHugRnXcWFYUZlbJVvlbdSn88eutDO8rtRfRQTfnkn+pSmJ0e7ArcLoDRbxRhmyVSpyRuRtSUWOFFTBxhQgWTpDqo59414zUMf+rhh9xL+9a9SE4KAOA0NAI6X+wYZelWnr2BessL1vpwiHrP8Lr8qbftdaYTcOYmnGprSuo1pdMY6aWVqtpvgS4yD4rQkFCK5VeMCbUnrzovI/kPFQHGIMy9h771zybSGU2mSHXBPUCAHeMR1wN/uf4QLg/X/lwxWkjuMooG5SCr96S7yOTJeY4HXREgzwrZBoI2yRHbW/zTwOUZ8W+sf0rd7Vge+amxNoX1S/fTD+X6v+xeU+EqIH5v2seQ4DcDhSoP2gRvcu3an6A7HfdNW2CDM= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(10070799003)(1800799024)(23010399003)(376014)(10067099003)(3023799007)(18002099003)(55112099003)(22082099003)(56012099006)(5023799004)(11063799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: SilRlujgkEJojcnpx1b9xfRUKxw2q0mBOkiwMA+/uhQDOmYWWZJzKSmHF+F6vI0+3SfximBIQvY6sWrnBLWA72+miP6aenCCHNoHxdMZGtjtN8UtCDdaT7siPalMk+E38p4Xo1oeSb8QwqtbvZjDr5GQIBIdQ7kEjgVCtgptq+P4xoSdnP9vBgm9a5VSJuCj/HYI8ah7CVHCIuXdOHBNQhn5+oal+Qq2kA3uM9m6u0fH9KYv4Lsw+1EZ8s2turY9mcTw9G3CXXyOi71NdObY163LqJrv9YeOpcYXT5K3DLIa8jK5UmX9JHpGG3C13WqtQYU7gpRO9fmjRaHFMy18OVJ9dRomAKDEJq188Gu6iY8L6hseoluTSVWxBzWiRMkFkBywa9aWswGK3i/rVuQlUBJxnBoFZU4tETRJbWrCJvG2pHEqCr5liclSczP8XD37XRPT1ul2gx+jz2clHzBSKYP6ZSPiaY7XUCifw19r58hhDJGYFAzu8BLA7EhhXSxK8ABa+Oa8Vgl2NUa4ghiX01FIKe/v4vaie4GAwmdkbB+jqhTQWUbhPBYLztM0UqkYHDy+HpEeJZlH8capcR32LDtOMCuUBR625k7oqKUj/NVb8Mz/IqKEBFYJK4cY4fCV0FXFKwPWHcLMRto3Qo3e2AMx25lhWfSuUy1kPe4sertEwD/PN47Hqyl1KV7B+6MQxMwQOjENX9XDgI919KctzZn9ZDFB8Sq5s9BncObfmXVKbhlqR99tSUGRhmuCn7VzoCG07L0K846P3wQH/1MrL0hPOV2oS06l5Moqih6nDKlBtn6FDyqX1a3AjEd+0UHIwPa8R9f9pTuE5HaGaFE6bITGQM1Wsq+nRwWr/sMDqhTDe3g917oWt6xeLmaFlMU3X0V7YCiuYDzBd2xcooLOlOiaddKGqDnSjN+47FtTiBq6eI2DzZv1Vu4VTVQ6OGR3DIqUZgHa8Gl8VBLVbVRFCySE+v93llOhVldCggOnbqg1pRRlDKTKtHj5o2RmVXWgLTXDF9CA7e8BZH0OVrGmjU/guGpmHCloD/IoEnPa/t5iUNUvhlPUcCbL6uQGN44q/fzMbV8NtnzT0WWpC04Fio8pVVNBWbiDaj2aD6iEfcEVDRJP+PRGdQrNVIGm1oDMIu30540dwvbcL7sLpp0upww0cNvxmDQDl07UX8E/tlPF8dlNvBP+p5iQpzF0JHNL/eo4wYPzfowYPYUJF1i2NaLuCxo/EGrbuD7axVc3NLbn/saAAfxxgiPFJCqQ1IupvWCss32+Vd9xEP5V1sgSf5+2jz+BX5snMI0V7AjT+6G6F2AhRljFjQGNFNdIcIy4ZS5nt9VNjyLKU0tWjrTrIFghwrnZqF5yJpFH0xJzc04MksdRp5wKyVZq31kXJRtFygnA3EQmrZzabH6Ixm6VPHDanDLW5nR8cm8wuQlOEUGIq9Lynfnzg9JmUUlFaJh0RvKDscdn+wItnpuKDKm8nJN06BJWYWecR0hTUp75ichsuiUvQ0a5CxCOhN9fXqHmY0E/NVjP2n9p6MlmgliYfsx59xLI6PfvyLGBsB+YVtWf8On5r1D5VrYz3+F9FlnPpg1iSfC0dTBPY8Iv8+jphBE2or2XtV/vUoG+gl0zT1Ap2aIdrnX2SVm22LyacRG7cmRdG3N8cdlfcSGj3IjiZ420MwqNY0JWCSlo+FinkKnW7qCTqrRTKd3N0Ysc+v6rjMGKQs2ioU5EWrsUDDjAIKoYBuB5S5XLePAi2AjyzYH8bjcOkmuCYp1VLCZNb6XLVaXkdZxX X-MS-Exchange-AntiSpam-MessageData-1: fJwzuGv+g9zzQ9PngOIMnjb/SLyOWVPSYS0= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5f500ff8-0d0e-4065-df5e-08df0f441b6c X-MS-Exchange-CrossTenant-AuthSource: AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Sep 2026 14:02:10.3444 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8p8q7uK2/LAqdKIGmwGIfmhbDAoPhb0qvCPfOyIxV6hHlreTFZ5s08wCLLCCTu/ERoYzf5PhlrL+CUjKOWNmDm2Lpt5htJcCnJnOxD8k+NY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MRWPR10MB9602 X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=qd497ZOS; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= DEPLOY_DIR_DEB is qualified by DISTRO, DISTRO_ARCH and PN, but not by MACHINE. All multiconfigs sharing DISTRO and DISTRO_ARCH therefore run do_dpkg_build and do_deploy_deb of the very same recipe on one directory, concurrently and without any mutual exclusion. testsuite's test_cross for example builds mc:qemuarm-bookworm and mc:nanopi-neo-efi-bookworm, both armhf, so both provide hello-isar and example-module-armmp. sstate_clean() unlinks the debs listed in the manifest before sstate_install() puts them back. A do_deploy_deb running in parallel can therefore observe DEPLOY_DIR_DEB partially populated, remove exactly the packages that are still there from isar-apt and add back only those, so the remaining ones silently disappear from the repository. Take a dedicated lock in both sstate_clean() and sstate_install() of do_dpkg_build, and in do_deploy_deb, via the sstate-lockfile task flag. DEPLOY_DIR_DEB is then either complete or empty for do_deploy_deb, never partial. The lock lives next to, not inside, DEPLOY_DIR_DEB so that sstate_clean_manifest() cannot sweep it away. Fixes: 1182a45b ("fix(dpkg-build): deploy debs via shared sstate dir") Signed-off-by: Felix Moessbauer --- meta/classes-recipe/dpkg-base.bbclass | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/meta/classes-recipe/dpkg-base.bbclass b/meta/classes-recipe/dpkg-base.bbclass index 4a81787e..164f247e 100644 --- a/meta/classes-recipe/dpkg-base.bbclass +++ b/meta/classes-recipe/dpkg-base.bbclass @@ -18,6 +18,13 @@ inherit essential # WORKDIR lifecycle. DEPLOYDIR = "${WORKDIR}/deploy" DEPLOY_DIR_DEB = "${DEPLOY_DIR}/isar-deb/${DISTRO}-${DISTRO_ARCH}/${PN}" +# DEPLOY_DIR_DEB is not qualified by MACHINE, so all multiconfigs sharing +# DISTRO and DISTRO_ARCH run do_dpkg_build and do_deploy_deb of the same recipe +# on it, concurrently. Serialize the sstate clean/install of do_dpkg_build +# against do_deploy_deb, so that the latter never sees a partially populated +# directory. Keep the lock next to, not inside, DEPLOY_DIR_DEB so that +# sstate_clean_manifest() cannot sweep it away. +DEPLOY_DIR_DEB_LOCK = "${DEPLOY_DIR}/isar-deb/${DISTRO}-${DISTRO_ARCH}/${PN}.lock" DEPENDS ?= "" RPROVIDES ?= "${PROVIDES}" @@ -207,6 +214,7 @@ python do_dpkg_build() { do_dpkg_build[cleandirs] = "${DEPLOYDIR}" do_dpkg_build[sstate-inputdirs] = "${DEPLOYDIR}" do_dpkg_build[sstate-outputdirs] = "${DEPLOY_DIR_DEB}" +do_dpkg_build[sstate-lockfile] = "${DEPLOY_DIR_DEB_LOCK}" do_dpkg_build[network] = "${TASK_USE_NETWORK_AND_SUDO}" do_dpkg_build[depends] = "${SCHROOT_DEP} base-apt:do_cache isar-apt:do_cache_config" do_dpkg_build[postfuncs] += "dpkg_collect_debs" @@ -232,7 +240,9 @@ deb_clean() { done fi } -# the clean function modifies isar-apt +# the clean function modifies isar-apt. Do not add DEPLOY_DIR_DEB_LOCK here: +# CLEANFUNCS also runs sstate_cleanall(), which takes that lock itself, and +# flock() would deadlock on the nested acquisition. do_clean[lockfiles] = "${REPO_ISAR_DIR}/isar.lock" do_clean[network] = "${TASK_USE_SUDO}" @@ -249,7 +259,7 @@ addtask deploy_deb after do_dpkg_build before do_build do_deploy_deb[deptask] = "do_deploy_deb" do_deploy_deb[rdeptask] = "do_deploy_deb" do_deploy_deb[depends] += "isar-apt:do_cache_config" -do_deploy_deb[lockfiles] = "${REPO_ISAR_DIR}/isar.lock" +do_deploy_deb[lockfiles] = "${REPO_ISAR_DIR}/isar.lock ${DEPLOY_DIR_DEB_LOCK}" do_deploy_deb[dirs] = "${S} ${DEPLOY_DIR_DEB}" python do_devshell() { From patchwork Thu Sep 10 14:01:59 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "MOESSBAUER, Felix" X-Patchwork-Id: 5452 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 10 Sep 2026 16:02:47 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-pl1-f188.google.com (mail-pl1-f188.google.com [209.85.214.188]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 68AE2QDF007264 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 10 Sep 2026 16:02:27 +0200 Received: by mail-pl1-f188.google.com with SMTP id d9443c01a7336-2d6f80c76e6sf141145055ad.3 for ; Thu, 10 Sep 2026 07:02:27 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1789048935; cv=pass; d=google.com; s=arc-20260327; b=CYUKNA5o0Ryct+5paYsrEmSEe3+EqnUBXN276zRO2hqTLTVF1n//eaCKGZ5o4FAk75 P9By9Y/kHmv2PCqxXh/aGkIPKLCcR5ogzv5u1XPfcPeBuzAjoL+GsACQzPC3J5A/bKAt 8xoAeptLA6ioK57gJ3foHqsIRwk3A3hD03fsGuPSjlFDW/hOQmMLzpeRrIL2CTf14fvn PiuSwLbQYQURHFyEpwhfXZKy5TF9n+lsDpxnUJeQ1U8Blofd88x+QApQDS1k4MGuNwZe ByyeTZzLqEODQAAFYfMu8sDryO6N7BWo0apbbcltgjEviFwajm+YN984owcklsQUrDYZ hCxA== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=0KkrkjxuknO86r/PUaVIAus6kv01r6wnNoaR2Rfkc4s=; fh=tWRnaPcoZoxyqskY8ydCyz7LegHLxjnjiCIQfU9d2qg=; b=moNJ0G+FB1YKhs+NLksfqnFHUDhi8zPK7x9/gv1Z37ejiY6M9ArBfbZ+HDy2+NQcD5 kgglNRHFRjyfFvqpiMUu4cI21E3o0hZrGjIPzqqSl2Hx87QLfSrgPDbLQOPodW2BTs8Y Ew3Cy9p7dVm5AiJdsIkksSsDsesyg4e2KaoLqxCcC5XEtgV4d9erDYLQogMRCmNNiCqc 7YGKZyAJ1oE8Y0EC0xUr78a573N4+cuKlqIbIKzsviQltkciFDaS71cJmZ9zt6wdSK97 TEGIUR4hyN/FdM7WZqUr9pZVlqbYwxzGVrRp1hZdXGZnnJ9OzMXZlZi9YZMU/g9jy4g6 HNVQ==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=CPrq7pdm; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1789048935; x=1789653735; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=0KkrkjxuknO86r/PUaVIAus6kv01r6wnNoaR2Rfkc4s=; b=HWReITnFOly7wPcMGJ4IFQycgM5FzXDEsnunZbnuVcxf35juDRKq1ma0KCff8Cw5sz A0cyEy0YY2LQMWDs543Ns1u3VBt9sAK9wWi2OvWO266QqrmOyzHH4yfArKhgieJv2Rlx e8fFBv4Kk6+E29ijo/vDuLc0Uv5qpVZZhwN5CtzVHDpXRSoiX+tixUcCGv5tN8eIDErA Jx/baHCpLuDJemMzcnsq9Jhton8DdS/yky+/E+4fyXnPq+NXObdUn/EmMS0jRNWSwGQ+ ArW9LGAuTqlh3ho8fNMEnL3JGFsRjzsXROAag6pC03NgEE253mmTTs7N4VDGiaGvMS2H ptQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789048935; x=1789653735; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=0KkrkjxuknO86r/PUaVIAus6kv01r6wnNoaR2Rfkc4s=; b=stpAzaxtPP4N1WFKqYo32BJ4cMeTNj8NZPMNaSpuF5hz7YhtCbiosoGq48DgJTNq9J R4pEHwFe2EhrAuh9cYZ5L8eXtn9jDJUA8ZmUj3eNVOHCR83IbCabce7TAOlXPnygjdhW rTUhMWruJcFBWS8oSmLUsdCNGrgMSjdqkoihruuZIIbwzD7CyCmU468xbd47Ycvts7BY k+pBZx6j9ZGO6OCCQBiN/UesN1BbLRUbGTsn+rNc0BcOUfFRHmG+nGi6FEdoghOpl+r6 37rhLHlP6X7wXYEBPWAbusBW/4Cyer475p69J0QPKOfTxYEVbtK65NjO+CqIngFO/Zcs XAqA== X-Forwarded-Encrypted: i=3; AKwUvBzELCboBSkZFQrGQUdQkL+6n4TZc8toVvGwSoR9huYDUyynAO+Am+axAFpoDyuxG4NVZQEvbxA=@isar-build.org X-Gm-Message-State: AFuF++lKkzfzJ/F/6sWmvXzexdEN4ov2G4yHBx415SoVPxYsj4YZobzG UGo16K3WlWgJg/RiAmEiqiMMTq4xKo86bVAdCVVG9ozTZNRzSqY2ecTg X-Received: by 2002:a17:903:2285:b0:2d9:520c:38e7 with SMTP id d9443c01a7336-2db8d817b24mr148758695ad.1.1789048935112; Thu, 10 Sep 2026 07:02:15 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ATskLdcWYAmthM/66Lmy7h5v2N+VWwO/i2m4v9ymuyjQKwJtbQ==" Received: by 2002:a17:903:1a68:b0:2cc:73e3:dc7 with SMTP id d9443c01a7336-2dd0dbdd13cls23989535ad.0.-pod-prod-01-us; Thu, 10 Sep 2026 07:02:13 -0700 (PDT) X-Received: by 2002:a17:902:d2d0:b0:2db:18fe:bb08 with SMTP id d9443c01a7336-2db8dc822bfmr166786965ad.10.1789048933513; Thu, 10 Sep 2026 07:02:13 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1789048933; cv=pass; d=google.com; s=arc-20260327; b=YdX4bb+3wjyAfN4pU50IbbFUQA5CHMcFr6jtL/vmxCjP5g7dXpwkB5KrihvrfktBAX EIe/IIRxMuRvhPWr32MwYi5tQ0ODFQdKBWD2RFjgkNu9Ex7xlruRiLKdLfjATXlbrIV5 iPbOF0Lu1LM5mk/cZ/ynxfh6y+O2joJRC7Upo7C8feHbt70avNdgTToWB+DmUHcqW+EZ 1xcI7OmfWZo5/XcB9rNa2dIFoGraKm/HTsackjIuOZBgYKA7i5IOw228Lmiz0JXpTmj+ sOJ8nER0U9tjGfAkO4+x2hVSn30P9Lu8er1l9/0K/gsfsJUEdnJLD787iNn+sZaKvmKb oh1A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=mime-version:content-transfer-encoding:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=GPTHyxQ5kNi63DzhokBt8DkQLBlyp+v1tpSYCB2sulo=; fh=2vPEtVRFZgJExMSCfX53nKBFsjiPYp/60rbGy5S5Mwo=; b=GQoNAd7GhhsgoBpfcHsmjEMRawpgGvJkchP1qVtDIYwacfIM2AclaDt3fsIRgvKP5j 55jqt0h7hUgz+rFQ0Az434UbMGVQ2etIZqF5D8lGb6H6gs+kdT/0f9V+nuf3BT6lSsCW M3w1aN4fep3bOhWt6zei/r8rHAq7zyCRHvTShEySRorcRAqzgXe4W1hpTRPjsqDmSTYs nGdPzhjC8JGUXqz//OeSMbHI2PL0ytwXYFaQ7ZniAbizLTZx7Ps3B/fV1uv6ZUjPkLR0 r1P2IyEhVyStq2RJCsFaHg3H2H7jFxhS8miCHNi9kTZ1T4otdbpi0Wzx7znmoQorTc8W 5HeQ==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=CPrq7pdm; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazlp170100001.outbound.protection.outlook.com. [2a01:111:f403:c201::1]) by gmr-mx.google.com with ESMTPS id d9443c01a7336-2dc733cf1bcsi1764205ad.8.2026.09.10.07.02.13 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:02:13 -0700 (PDT) Received-SPF: pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) client-ip=2a01:111:f403:c201::1; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yHfgRWABz/Pj0fISXg9zyg/Ye0kxqSuwBxv6bqKHb5fWGUDqwtg1+Bi/LGWcNg0jFcklcCBa1TcqXj6x6wgAwl5Ys1IQ98LJmnfx0V27QJllCD+76l00Oli8+9WGbS7MXMDV+o5hh0uRjRsvz7IBpKNwLIjLxPn0QfmIJO4ERpvMLlj+vcq0BJpbzKIbsiYv9DUEQjU71DVhHGWnvJxSaAPK/luy8HhbHskj1kmB/vlZBIBKPyZ7Hsehy6B3WjBddLy9s90MclqRA1owQu75CHJFzbLYgkCkXE7ZEFiLW8WlEdN+8ehWBRhizUNv8xy0PzGYR4xGE8bNES1p3EsykA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=GPTHyxQ5kNi63DzhokBt8DkQLBlyp+v1tpSYCB2sulo=; b=m0VUsVmKebySf2CeQu0q0ze4wsdsAm2faSe+DHIiR84v0opraVN75iXBsmzLh+zvqFGY3TSi+t1bCF8d3ZHUDpo2mK4gWYyr85xr6KEv7DfBRaqW9Y1mcRH7Qfq9ptoeE6hzSHMmn96pky0Y/qBatYQ6pG/wQAvLEMLDuPQJwT4BbmeR2lYrnbpBx5K21mvfBn9IWz4Ml6nnOSQSYuXWoqptqyzXm9IX9WktKMFXCw9siiIrO4kqfEp+0FyJQoIDXCkgqvgx472WnFGv9OqzO6ZyxuT3MVNhHC+kEfEFH6biTyNPxiK+CXpunSG09ILPCR9ky/CUb1Iuw9f/kO4uxQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) by MRWPR10MB9602.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:501:9b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.9; Thu, 10 Sep 2026 14:02:10 +0000 Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c]) by AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c%6]) with mapi id 15.21.0406.007; Thu, 10 Sep 2026 14:02:10 +0000 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: "MOESSBAUER, Felix" To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH 2/4] fix(dpkg-build): clean isar-apt by source package and arch Date: Thu, 10 Sep 2026 16:01:59 +0200 Message-ID: <20260910140201.250854-3-felix.moessbauer@siemens.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260910140201.250854-1-felix.moessbauer@siemens.com> References: <20260910140201.250854-1-felix.moessbauer@siemens.com> X-ClientProxiedBy: FR0P281CA0138.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::7) To AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM7PR10MB3956:EE_|MRWPR10MB9602:EE_ X-MS-Office365-Filtering-Correlation-Id: 1d41c6bc-68ce-4801-142e-08df0f441bad X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|10070799003|1800799024|23010399003|376014|10067099003|18002099003|55112099003|22082099003|56012099006|5023799004|11063799006; X-Microsoft-Antispam-Message-Info: q0jEyCFv4uB+1SEdN6xgkyqDm63B2EjtCICpYbWD8MYYXUZOBnxJ61WrKtanz5zpsCb0rSuxNzNkj8w+LkoNPGb0OLeSOfwsbcG9jWuAZlD8/3cO3L8oTvZJdpkfntTa+Yj+2b1CAZz3Ag2l9k6QmGwmDQuse2mKIpX1+ls63c5c3dEoPr1EjrVM+DqoZbeNDKeHfhSYc8M23l34ICKH3XywPisHTXcGWAGNTbrfzpl0TQyvAuOZAgQmBD3XUQS+9+XZOz4FkEADvlaG78Z3+5RZJxceYCs27w0qYl6RIunPWxaVYMdwB1/psgF+5KZocyjKoh6ZU/ap0/+U48zhVAlyMh5+C/hSi9SknDkXa4RDoR0hro6tq6v3Eerh41ITrsR+z+XtjSD/PHwwD5N39r12kCA7RAwTIXLyChGHHoMY0FZbAV9QpCx/enK/cnZ42xCKmLR2+w5ObQGcGO4rah2sCDDDvRdeGQqhtZS9z5zN1lOUcV3TCqvlqnXipHyQU2ozBZnMyIi3AybHJxWO7Q+FgNZAoSOWJONjccjveyV5isUulpvcsp5bEKSn8vKCzNhQpb7wJC9UwoabksnkbhTCp4MQEddhxzwhsHjszXpK0VyGXmBm5wK9nMveU7d4L6LO90Km0D4Jan6XNI5m/HGCqAibOhwVDEwiDRBXezM= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(10070799003)(1800799024)(23010399003)(376014)(10067099003)(18002099003)(55112099003)(22082099003)(56012099006)(5023799004)(11063799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: bZqUUcxn6MbfGXsOY1n5PjBbOjyJOofmcZO7hYS4MZHaRXSMvWEOHlEH54fBtVKdaheRNEmTXpQ0t/0w6BHAj1nYvp/0/Al0ud7U/a7KaaVjwMqJwMNCQm+M9y4D+gEwG97AtYk87gkNxq9r9g+vtlWLhuDebP/VZu/o94wXZAlmjR1m0DlT2epsUX9iAdi4FLbzTqzeKP+BPdWzc5udAEFZ+m8LMKsOrcPqDjrNJ8zeSwlrypli4H9514Rz9aDXTVtovhaNzwc3loolqbb5TZ+HTnPBG4A+c2v80mvJW65hjVfKATQ6xql0OyV16ipUnDTV1vloBlWM4Pd8YBy7XDy8vwMFvp/qKMBaYpRVba9qIG1/IO915FX03WpJR3bBafhZ1uDNLzs9uyWAW5afQwUIxlTVroJs+uDL+0YZXGV79ebK9paWh2qxXIWch44m2JCBI+UcApG+eLYTo8IMTM/f8TbrrJQiTIiIlTUwvJS8wvlfIzOzT6NpsjClgm0ZCTlEmasH/qb/2qQoNA45J2KnUAhPRrWJMg9yahm6zRCB+8T3tpePjoxOs/KTvMJXCnMoTzDrDRDul/6xc56q0z6WfjAvzy88L3syD7e8VyNCfExnjCCmQEdE40UIkvu4RuxyXrVzOKsHLWSl6/SPv0pPUxI4SF7rn2FZZkVFPMrM73/qIhhiCHQP46eQTtH3JchJrYC83IGx21ls2j4WGkDvmA6XbhqirGlZxo1AhaLiHzKRQopYXAVWKfeiuctdTohXypNL5vZT2KNIW9gbKhlRTpWFInoivSQuHqW06bPdmH0+1E+S0W3i04teMOf9Ev4WCiN6NvSk8H9jULf5L3Kw4h0RzFogpmdF2tritUpo1wOP74fxZ2vUyqejprHKy+0wTd7wxBk/qxV+bx6TADute+z32B6RG5nxAENl8rgLY9ZnTWZgzbYkXsvDAt5Whcn9TDgHDiaXQQugOIbJxGE2fqrzQ+1AyAxnUzcJ0L5bvIzTcCMpPUfHO3RMtxuLmzquhQOT2FTxk0mPgKBkZBlqL/WTMM0BMbO3z+DgcrCEiR5LvIzMQ8/OHE7JiyvqU8/J7ismrkXiS5UXBh7MW6qgWzj/51EUEm/NTt0nAcqjx5qQO1RdbU0urBC+myokxEwGxPWgnCE3tPRp0yR6BW10JZc2Hrez57aoPf/fd3bB9ea6bBK2EdCdvjAaYb1JORX9EklV5oJ3hhHqz/NVDZxg3pMTiteN5FR0TVteVT8QmjyfImtoNkDjEzCDb3eb+5g5LocuZAyzB2p8Vhn6CmVcOgSRKFD+/xcKfl7pHQmPnnK2aIBOL11CQC0mU715uYgQYLekmbJzdST69R9dfStcOigRn2PERz5DZETomOUaj9oc8JyccbB7E/UYBQGNhVoayAD3xqELuh6uvqsVktj+5NU2Ww1nz/RanwXPrrvCRts53MNJv8AP9UZpp1xwuYid9rcuDoVzz1cND5zhOJXFUxqjOL7Q86oY0eXM+6HYhzIZ8CEqo+fqlO/erPeqbjtyqDNkQW4CJSJG2+w7ICDeida8bTj7bRUM2JKOoWpk2wH3nnPqUDx7sP/p2r2EK3reWu3E2pbJU0zwru/USZIbexpuvDAJd5N6MepIYTcPAZKxGKdTAQ/e9ax3CBxmBqsnX34AW4yJDYr0Et6rAhIho/kTWXiLIZNQUjutnDnq04P0f68rjbqI3ChC++xbFnIz5scRRHaim6k0HVR2QbvXBe3ltXpCnuhs2hPUSFpoHM/Ns9YM/Lqi67+jFmm/pVYObrNd X-MS-Exchange-AntiSpam-MessageData-1: fMMVYodiy5nvGTgtm9PVkK8IBQuiAatDhu0= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1d41c6bc-68ce-4801-142e-08df0f441bad X-MS-Exchange-CrossTenant-AuthSource: AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Sep 2026 14:02:10.7513 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f1DVyl2DfIwliVNjwx0WujOoKv8JnmdEjqgcM0E71h7z4QBeod+63IukqZR4DUgYVBbawGwepTYrhKxcbXGClrbJTTw0z3U3AN0FxDzvm10= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MRWPR10MB9602 X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=CPrq7pdm; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= deb_clean() removed the packages from isar-apt by iterating the .deb files in DEPLOY_DIR_DEB. Since do_dpkg_build updates DEPLOY_DIR_DEB via sstate, its sstate_clean() empties the directory before deb_clean() runs, so the scan finds nothing and stale packages are left behind in isar-apt. Remove the packages by their source package name and architecture instead, using reprepro's removefilter. This no longer depends on the .deb files being present, is idempotent, and also copes with binary packages that were split off or renamed between builds. Fixes: 1182a45b ("fix(dpkg-build): deploy debs via shared sstate dir") Reported-by: Jan Kiszka Signed-off-by: Felix Moessbauer --- meta/classes-recipe/dpkg-base.bbclass | 22 +++++++++++++++------- meta/classes-recipe/repository.bbclass | 22 ++++++++++++++++++++++ 2 files changed, 37 insertions(+), 7 deletions(-) diff --git a/meta/classes-recipe/dpkg-base.bbclass b/meta/classes-recipe/dpkg-base.bbclass index 164f247e..66f4d177 100644 --- a/meta/classes-recipe/dpkg-base.bbclass +++ b/meta/classes-recipe/dpkg-base.bbclass @@ -231,14 +231,22 @@ addtask dpkg_build_setscene CLEANFUNCS += "deb_clean" +# Architectures under which this recipe's binary packages end up in the repo: +# the concrete build arch (PACKAGE_ARCH resolves DPKG_ARCH=any), plus "all" +# when this is the build that also produces the arch-independent packages. +def deb_clean_archs(d): + dpkg_arch = d.getVar('DPKG_ARCH') or 'any' + package_arch = d.getVar('PACKAGE_ARCH') + host_arch = d.getVar('HOST_ARCH') + archs = [package_arch if dpkg_arch == 'any' else dpkg_arch] + if package_arch == host_arch and 'all' not in archs: + archs.append('all') + return ' '.join(a for a in archs if a) + deb_clean() { - DEBS=$( find ${DEPLOY_DIR_DEB} -maxdepth 1 -name "*.deb" || [ ! -d ${S} ] ) - if [ -n "${DEBS}" ]; then - for d in ${DEBS}; do - repo_del_package "${REPO_ISAR_DIR}"/"${DISTRO}" \ - "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" "${d}" - done - fi + repo_del_by_source "${REPO_ISAR_DIR}"/"${DISTRO}" \ + "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" \ + "${BPN}" ${@deb_clean_archs(d)} } # the clean function modifies isar-apt. Do not add DEPLOY_DIR_DEB_LOCK here: # CLEANFUNCS also runs sstate_cleanall(), which takes that lock itself, and diff --git a/meta/classes-recipe/repository.bbclass b/meta/classes-recipe/repository.bbclass index a2061100..d255d1c8 100644 --- a/meta/classes-recipe/repository.bbclass +++ b/meta/classes-recipe/repository.bbclass @@ -129,6 +129,28 @@ repo_del_package() { repo_set_release_date "${dir}" "${codename}" } +repo_del_by_source() { + local dir="$1" + local dbdir="$2" + local codename="$3" + local source="$4" + shift 4 + + if [ -n "${GNUPGHOME}" ]; then + export GNUPGHOME="${GNUPGHOME}" + fi + local arch_filter="" + local arch + for arch in "$@"; do + [ -n "${arch_filter}" ] && arch_filter="${arch_filter}|" + arch_filter="${arch_filter}Architecture (= ${arch})" + done + reprepro -b "${dir}" --dbdir "${dbdir}" -C main \ + removefilter "${codename}" \ + '$Source (= '"${source}"'), ('"${arch_filter}"'), $PackageType (= deb)' + repo_set_release_date "${dir}" "${codename}" +} + repo_contains_package() { local dir="$1" local dbdir="$2" From patchwork Thu Sep 10 14:02:00 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "MOESSBAUER, Felix" X-Patchwork-Id: 5450 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 10 Sep 2026 16:02:41 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-pl1-f190.google.com (mail-pl1-f190.google.com [209.85.214.190]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 68AE2Pe8007281 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 10 Sep 2026 16:02:27 +0200 Received: by mail-pl1-f190.google.com with SMTP id d9443c01a7336-2d6f75c1219sf71135055ad.3 for ; Thu, 10 Sep 2026 07:02:26 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1789048936; cv=pass; d=google.com; s=arc-20260327; b=nQnwW30olEGL7+Pe0amlp3sxM6+7AZK6z3QsSZ6/3hAbdi8m8DoExNabKl2IA3aQKR dVvddZWwfUCa9PzGpcbXS6EHogQZF1KxePwxVt0QqGEE45xgXiTGa9HyDXYE2SLtI+WV bwmb360tCsTwdA+HIPdCQwXc8ED9jCoD4brlMDCQJ4IRMfFb9zHhIXdk4Et0tKeVckKC VTvdE5STNRshj74cOxpembhmYdVgEOqZts5JhdamW1VGloxlgvjgOU02ZYMhlT1IhsGs rGKLpsnZF73xMAQeYwLJ6NtahLaUHB45CYDb6H5p0LLE4jNOK0iCK6sthoDDrAsdlIlW PgoA== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=dN/15Nf0Srfm/MOh9eraDrGcdksE749OyIRPyKyDcj4=; fh=E1/3CvZTcRxqsFrVF0FS0OYwD60eJ4p3ftfbrnkDqE4=; b=VBR5zvM2QS61FJMmHdxgTKXol7tA/ecvJHUptVzljlD6weF0Hno6S89LQtK5wQukaC g0ItIPGV4mUoXzVrOr+U1xnxIwkHa+jld2mg0D39r2WaqVeGB6MUMFk+vm3Y4P28iqKh XVuxFzd4S3rjw5O6G0mkqcImnTg+fo2NA40H4UsiJoE626lQzrQC+vJ8WoxQIfjKw9n5 FmlJvhgu/5Vitn/YefYJCa53YWdHA+RnvcZ2/I9BOJ0wd72ECZ526QKfOr0K9ydS8jK4 FTy8jW3LzYrKbNEq5lozvWKdi3mV8KicBEF5/z1RfEXb4tk6ubTKdeVX13FV8wil7Wh0 GYzw==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=aaUUA733; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1789048936; x=1789653736; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=dN/15Nf0Srfm/MOh9eraDrGcdksE749OyIRPyKyDcj4=; b=WAPOemLiIUqk3oz6irqZC5mrdyTzLlZjnmQ6IpCS54Xz8oOlbgR+g996gQOH8cPilS UEqg8EZvnG2/ixFugqQUyEQg9oSyl3ycnNoI1ZL5TU5xEn8+M/9Qo1Kplf1ELrxanTFx o67nJmQUJZgzdGo4qpHL0Lx58Tulp7JCHXaG5MpcsMd2OS5Z3+t9agfGOnyjmZYI8bSd BXPK8+4FqwNsIgSv4xdhEIETl+ii0t8LIo78sfXxtRuGDfMKQbFu78My1i01k5QFfdg1 XTsV9b6kgBn4aSgJTWES9u8ntvwD3gtjXOrl+ECV4AZxGxzx0TFjqHrzlP6Zm74pEb6N hw3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789048936; x=1789653736; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=dN/15Nf0Srfm/MOh9eraDrGcdksE749OyIRPyKyDcj4=; b=QzA8anh4DsmXg17A3qjpTbR+snLEQL+GmH7P998/1RfiQ88db7NwiW5MLHhgnwZhlR CbYteYwwKQop7uCwW+Kd2ok70drq+YEji8JxG9WWuiv/PBzPppvzgdz8cTOAO0Sl+R+L RkQPgtyRVSI9S11AzdK5FjvcACprqTl/rTQ3s+TnS8C6Irw84x0jbcj4NKQ3bgaF0VhP 9uAFZ0KYrmklEiODhIz+BL18Woksq44UMIkgfOrD6Uftkq5zHtn0pwiz93spccwZXQxp ftosimf/ZOWwhaKIenIWZ6f70mS2D8ESj0IKQ6fp79cNUUjCqGww1CaSKWEYALMDPc4h 6Xxg== X-Forwarded-Encrypted: i=3; AKwUvBzWfS3S99ZaNgZY93mVn3JSV/n/Ei5EzSxxToy/nVCZ9mMBxxOO7qr+f4Oe5DZSIeYYi9suhTc=@isar-build.org X-Gm-Message-State: AFuF++nkHUGMoxG68uKbRAtKI7SdJ4t3jEsrFsrK48hHkSMEesYLkwQH vN50QCz204z3emLnRoE7v3inl+8LUF6AiCCmMBDBhYWOYnDJg/CQq9nf X-Received: by 2002:a05:6a21:1788:b0:3d3:ae50:97c7 with SMTP id adf61e73a8af0-3da3a16a519mr72260568637.20.1789048935581; Thu, 10 Sep 2026 07:02:15 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ATskLddilEsou9INGO1rZ1UYYUsmIHvbObWwaamXc9Jcd3PgFA==" Received: by 2002:a17:902:ce8f:b0:2d8:fc86:3bb6 with SMTP id d9443c01a7336-2dd0e679601ls20432195ad.1.-pod-prod-08-us; Thu, 10 Sep 2026 07:02:14 -0700 (PDT) X-Received: by 2002:a17:902:e94f:b0:2dd:60d:8b7c with SMTP id d9443c01a7336-2dd060d8e01mr118739255ad.13.1789048934128; Thu, 10 Sep 2026 07:02:14 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1789048934; cv=pass; d=google.com; s=arc-20260327; b=RaBND7LAL7nBHQ3MF9zCnL/fHt3rAH8PDa3KQA9YFCckS+BrFxY6HcNMe1Q0sxTUB7 xZ62jX55Xdy5I3kN704boHIntPdPLgph4br4wTyLo08oiSgrSxd0N9VwuEIuaM0qlNLW ETXVpivwU4UDfLxNhQOdQbrpbqxH1Ctq36Fld+KQGwxK70e0aXAAwCYqvYECVPynY7H+ 1LNCd/ZVp90OsQeIwM3OZ2i/uLqj2DYM/tajYci7p4C0MDQfj7xor+BT/750N4DhYL/v E/xXX0QYhDoK8P70T3E0lMlgRmQwYTqT/iCwRnbNF5yqgLdrpM4IwS5NQnbyiLUcQ22F RKBA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=mime-version:content-transfer-encoding:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=IE/Kt1Vi2Np0G6vJG6WjyCRPhjOKdKF84tu6EhHBMjs=; fh=2vPEtVRFZgJExMSCfX53nKBFsjiPYp/60rbGy5S5Mwo=; b=ZIGTGqv2qmx/wIYt4MKNoVWUldRP0cip6Oqvn/qLnZEMaeCxI/b1RTC8OeH6lGnYng BEexOtt15/fDTYZbGVxjgFOmuM/KfpcoVWAq6ccv+G1VgOWHz/M0d2dzNT3A7XufN9q+ DJNCUMEsT9OAMMl03voW6kqElSib7p89kgi/gGMbTgMSP4ipd4Gx/U0CYMTR9sKr1vCk 6iLynOb1TLyowF7h7k059UD4+7yvhSF4bjKSR9ah9woXQWkyGevGz+LnbEPNr3whcIsT 8IR9url5Bz2qXiiRmtxdP71wrUA5RyVseMcHdHbg8xI3tnxi0cSnGwWkvaFPnHuUzJWI aOjg==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=aaUUA733; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazlp170100001.outbound.protection.outlook.com. [2a01:111:f403:c201::1]) by gmr-mx.google.com with ESMTPS id d9443c01a7336-2dc733cf1bcsi1764205ad.8.2026.09.10.07.02.13 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:02:14 -0700 (PDT) Received-SPF: pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) client-ip=2a01:111:f403:c201::1; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=j9+cG6xZoFcdL6ixTiVVELUW0VnemHw38P4DpSNm9s+TANDV6KBrYCmjIuwsLAn7Rw8tVvl/I5Ut8tftkJotxbJDLFo70iopPjTHu2qJttV2rzBKxFOySwpb/bJLeuSPOJ1jC7tOK9fTH3m3rbHB4GuX2qEVPLetVSmgKJ8C+//Wd3vzDSRQ4CFz78Urk1R2bYecUG7PPEnCZMcp4+TTBhJrJ0gCL9zPEwKmEyhLTExiCq6QbCgz/GT0jkm1iHTMHb42Q1A0RfDlkBQFZQDaOkD99aLI0hxzZBgfUQcsmBS3o1sirXwtovaOAfOBUcESxMuKari2qOqPnw+hXhb8hg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IE/Kt1Vi2Np0G6vJG6WjyCRPhjOKdKF84tu6EhHBMjs=; b=MS+ymi0DGv0XBRvfZA1tDrRY5SOn2D/xMK2obv7P2RtZCR3H8Lb892B4HQMNE6+ULS7LedpjR6d979XbiOYhFhuQ+4PWq4g8BeqBlu7l8sVaormvxa9J+2IwsQngpK2dLrHqsizdJH4xCRkJqf64LlcN/UZj6waFbP4aKxdsibgIHcpVIEOeVTgksMqiH02MbegUDfTpFHsfLRCPkq1tL2Sn5r4dLlimtMdwKB8WrlmX9JqX2S6QJpJl7BLmQkn4zBnepT57XlkFo70GeRUc/U58imU9/juwT5KeVBY5rDOV8bLAwrTrzrW+DGRfx+xTCi+L65JUntniOqwEL5HgjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) by MRWPR10MB9602.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:501:9b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.9; Thu, 10 Sep 2026 14:02:11 +0000 Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c]) by AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c%6]) with mapi id 15.21.0406.007; Thu, 10 Sep 2026 14:02:11 +0000 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: "MOESSBAUER, Felix" To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH 3/4] fix(dpkg-build): scan DEPLOY_DIR_DEB only once in do_deploy_deb Date: Thu, 10 Sep 2026 16:02:00 +0200 Message-ID: <20260910140201.250854-4-felix.moessbauer@siemens.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260910140201.250854-1-felix.moessbauer@siemens.com> References: <20260910140201.250854-1-felix.moessbauer@siemens.com> X-ClientProxiedBy: FR0P281CA0138.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::7) To AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM7PR10MB3956:EE_|MRWPR10MB9602:EE_ X-MS-Office365-Filtering-Correlation-Id: e73978d8-2e28-476f-da49-08df0f441bef X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|10070799003|1800799024|23010399003|376014|10067099003|18002099003|55112099003|22082099003|56012099006|5023799004|11063799006; X-Microsoft-Antispam-Message-Info: LZLrSid8lVF2QNYkSwsTGjfhIreAYTZTHpSiDxxWpN/rhd9DtpKRyK6JtCFZi8g7nCcHMRHAOLlmbTCHqItJ9nn6XPB8kWAkViMg8BwI3b3RkWZiBJ/Fur52brA00wp82Kmthi1VuHs37fUf795YLLQ0qdGD1K4cUy5jkSnAHXRqwWo28nFFEzt9IXtqmBNeU0ZpDVlYITcGM5D0PcHpKEpNgiSVu5+mJyjBAp0WRX6Tx0oV1YlwSs9ZBt4pzRticNp0CQvwbARHFcQES6sROG4ClyaoprfiUbFQfdso/3sqBwq89t4GXOFbWe/DPTD6RTL08qFV3LGeOqgjrjzdjS4C9yE4eZHOlR4bXlOY1dOwzst6EHyBTdL+pMGEPtRAH1JL5/sJq2Tn7KisjsWizDrxsCIQd7GgPwwOu2EX2iUEQ2xJAMKEd/eN0Dc6hglkBt3bzgkvA75uzCJZwTK/LkY144dhcCHcHSaLD6s68MWUYjKo91ltr5gFlOlx6uhjXKxwUZ0uxbAe8Z5XOQgSxq3BYRR1wV7xGq2c/NiblnQVDkn8PaxpPXBMY+hGBubagGaA6lWtKNRbUrrweI8gATqxz/3keJi20mw3+jbrfbt+YUloF35glRUK5cBNkqo8uiA4TKFNNSpvoOUGRpk/DPFy9ilaPElLaOVXrYA4yS4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(10070799003)(1800799024)(23010399003)(376014)(10067099003)(18002099003)(55112099003)(22082099003)(56012099006)(5023799004)(11063799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: gVwt/lsTdCkDmjAvojua4+2eHkH+gECw7AMADH/QF+5M/X1LuswD3BE1kOZHy6r8zVyfhUBHu/IvcPLGqmKD/0ujBVCMeguXBS2OmiJ20ewneSOHynIatib53jCNtzW1sgzBr/QB4CtCFacR+zqgSL8wcYycBRWtXs/ml3347gGwz1ddTxbDW01PLsFHHk6Y/OrZB5hCDu2L9T5LKwHjFJOX0X9Bjv6SW/dPWJmfHewQIpoeP8dKgzkR3UqFbZXTApNVb4Yo1H1Am0/JzPo1VMBPGLVa9c3hJ6fSpeDLKHhV1G7HaQ/yQRJpS8YRRZy08bqM0JCJF6BHc1JzAbAoqPxG8S25+6Gm0QvpilTL72t6ZNCfz4nqWpvV/k4n5E8aJPpuTBa2tSpOdoDRPiPq3Wu3CUuufg8h1IT+00t3tvxv5yu7AtNfqfg5aDtY4s82pAlhhUXdwcOE+TrMKjXftpwZBr4/RURypcBI1WlKbGeAxEa8pYMkiupy06qB6pBFfQvfIhfEnl3QHNB2/JryRCDi1aIli94uf9R5V9IRUDGXSB5S50WvsPaI13MueR0wDymlLIDHW0yGPNOI81dCOJNxxZvsZrt59EshTodazTf9nCZEC44Yfkev134IsvYiQPlKg0ZtdfNF7TtTTzAtm7DPvo6J/EDeZxly+/WSCcbKbL+Y5Y6Wgj1r8xWB/92jHGY8ETec49EDg289qDqsqfLsiT91c3IbSIXyBkUnzBFwF1wU7wZZyvWjpsx5yuBbvPFa8AxFcCRC/uVqGOMGb9BwaxTG+tQMnJq8e6tpZzwDdkwoX7imd/IUR4DYni/LAuPniyL8v9tTkO7BK1Dp0eEqGYare1x5tOWHct1T4kqQinotNyS9HPi3YZASj7wxT60dtdD0v5rXaLqJpbsk8Tm/Im7jjhCNPv07w6TkKjang4PRgk29sxotNknXjfcv6IdElFOSvJbQ9YVu2XRZRvHDSDoS59zyFRAv1GEYh7dG9NVqpTXF5INqlQJ12o+xFMsVKprctHZMin+3ab5OdjwnzzTx/qTisA6UrK/aVMw8RojOrwUTHy+uqDQoaflBR7b4hq9iMqIjxe9co/MDdaOIYaRWpuBZ8bNe26CCOAJDloVdAd4ZgEWl9WfKdyeL0h5OUmUKCSZSTG0OejAi03PhUpexpcyH1gEb/9jgKq2W1SL5yBSHqDm1eMvDhYvL2egRKsZuD7EWg8xzO2dTDD+6llX9S3TKDY6VZHfGLJ4kotiFmZ7qKIKCSsXwBLQrMzxxCxprc4ao1b9kjfI4dR3+SmWECbS/igFIGzQ/9KZB0QThZEbDsl04YLu8VXwTvgj4qtXzecCWO6vSukDsb1MThzugWGp68uoKYAtJ7nPnBInRNRRHTPioi55TbDM4OcTtT0IIHCBkyDuR2VmWoD6/Xev1CSx2GUDD8UB3rUb1SmWxANBXSNGqifjKsVzQmD4xaAvY2BQ5mwq7PG1jf6Hi2+l/G68b8wiJA1IcQqKuQxX3RXv6YmvznKTlHTns9D3yKTP0fOAmE1PLph9oufda+ie+9b6oEKP86GtxKjokNCVm51mpSFxovfy+PRZTWDLoHXFeXrC9SltAOXb66dWDMNH6kAzMkZ4DCOINMdvG5O/06rCeTvCUeCB5szn29bWwvopGcRoa8g57I+KXE3tRwpghRqxOPK3yc8LVLohRiNahiK2e2tUy/6jbcdaUDtfF2N3IqnqtqsD4aHbSI3IOV1NUW7Tirm0svgRILDT48V6z6Vd7j1HqjGNG0EC+IRik+fw5 X-MS-Exchange-AntiSpam-MessageData-1: aBXa77aWfbzK1ETUKSyVqBqpbOQkrBh+dH0= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: e73978d8-2e28-476f-da49-08df0f441bef X-MS-Exchange-CrossTenant-AuthSource: AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Sep 2026 14:02:11.2168 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: IGcHSlvro48SJfS77s1s1KRYwWSzaIZZdTT6fvAqzh1mY2QF5CWM0qvPh/1++u9Xg87x9UbC4KBg4PKKwbsVwPVTeASNhv/QYRsQYQfDA3g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MRWPR10MB9602 X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=aaUUA733; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= do_deploy_deb removed the packages from isar-apt via deb_clean() and then scanned DEPLOY_DIR_DEB to add them back. DEPLOY_DIR_DEB is shared by all multiconfigs with the same DISTRO and DISTRO_ARCH, and is transiently empty while do_dpkg_build of one of them rebuilds the recipe, between sstate_clean() in its prefunc and sstate_install() in its postfunc. A do_deploy_deb of another multiconfig hitting that window removed the package from isar-apt and added nothing back, while still reporting success. The package was then missing from isar-apt although present in DEPLOY_DIR_DEB, and do_rootfs_install failed to install it much later: E: Unable to locate package example-module-armmp Scan DEPLOY_DIR_DEB once and skip the update entirely when it is empty, leaving isar-apt untouched instead of clearing it. That is safe: the multiconfig doing the rebuild runs its own do_deploy_deb once do_dpkg_build completed. Fixes: 1182a45b ("fix(dpkg-build): deploy debs via shared sstate dir") Signed-off-by: Felix Moessbauer --- meta/classes-recipe/dpkg-base.bbclass | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/meta/classes-recipe/dpkg-base.bbclass b/meta/classes-recipe/dpkg-base.bbclass index 66f4d177..fbb952bd 100644 --- a/meta/classes-recipe/dpkg-base.bbclass +++ b/meta/classes-recipe/dpkg-base.bbclass @@ -255,12 +255,21 @@ do_clean[lockfiles] = "${REPO_ISAR_DIR}/isar.lock" do_clean[network] = "${TASK_USE_SUDO}" do_deploy_deb() { - deb_clean + # Removal is by source name and architecture (deb_clean), so a single scan + # of DEPLOY_DIR_DEB is only needed for the addition below. debs=$(find ${DEPLOY_DIR_DEB} -maxdepth 1 -name '*.deb') - if [ -n "${debs}" ]; then - repo_add_packages "${REPO_ISAR_DIR}"/"${DISTRO}" \ - "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" ${debs} + if [ -z "${debs}" ]; then + # DEPLOY_DIR_DEB is shared by all multiconfigs with the same DISTRO and + # DISTRO_ARCH. It is transiently empty while do_dpkg_build of another + # multiconfig rebuilds this recipe, between sstate_clean() in its + # prefunc and sstate_install() in its postfunc. Skipping is safe: that + # multiconfig runs its own do_deploy_deb once the rebuild completed. + bbnote "${DEPLOY_DIR_DEB} is empty, leaving isar-apt untouched" + return fi + deb_clean + repo_add_packages "${REPO_ISAR_DIR}"/"${DISTRO}" \ + "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" ${debs} } addtask deploy_deb after do_dpkg_build before do_build From patchwork Thu Sep 10 14:02:01 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "MOESSBAUER, Felix" X-Patchwork-Id: 5451 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 10 Sep 2026 16:02:41 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-pl1-f183.google.com (mail-pl1-f183.google.com [209.85.214.183]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 68AE2MSF007299 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 10 Sep 2026 16:02:27 +0200 Received: by mail-pl1-f183.google.com with SMTP id d9443c01a7336-2d6df0a1e18sf143589875ad.1 for ; Thu, 10 Sep 2026 07:02:23 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1789048937; cv=pass; d=google.com; s=arc-20260327; b=LHYPCUlmtRca4uEfKIhJmt6+2NQonn6i8/jZE2mGf5J5mvPYJF6B77oZIse5YB4a59 OXDB+yav9Ug+zULHXupgLAqFo4UGHpG6or/VViFwt4syGKurOeyE7UugvHVUPuCtANNs amuV6806gsfU9ym5G6phvit7JL5hk64V9uziw3ccxDY7MYGuKo6kz+NaRvUCnLzQF1Vx dolJtRfmnmkO0riLGOGLPlZcyQZJ3ffv/hvooAbol8gTkJCtXWrSsuF5uODPAcwFE7ET ZhJQvk9ND8ihQLgvlY3TM+vtxu2CM+UEjayDLhTI80m0uPpUeFl5DLe54B7vAIlAqup6 dOLQ== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=446r56CvRSHigkfZr1j/ZRGcHwQVucz+BkKiYfSj5gg=; fh=48V3HyphNhdU5jOfGKQk/9Kt9rxy+F1Wg9skECGSLUg=; b=AIVS7ZeYjY+vRlRc91+7U/hulPML9OdqOKF4sBP56Kbb6Fj1+7yTDQPFGLKOFshVRf SX/T6QkwiFS5g/6EKOv/NiAgvq/xBvX+7z03RiRQHEY/HdJIfcLFWP2Nr9v2KPZDGLAr Lk4s+F10eNxvs76fPQTDH1W+MPLIwd45t5Rvpa/2ynJRYVy0jr/lr6KPr2J3IntGM2Uh nTN324fZ6Ldg9MWaQwqK4pODezu+QoVKoKBBPLaEpSu3+UQi+bkhJMwgw0GRxo7Hp9yd as8Sngu3D5MPxP68oAwQPiMJBe4xTYVzOhOUUzaX/pB6YobHKyBo0Fj2zD7d0R45USsA /efg==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=X7a3+hzy; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1789048937; x=1789653737; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=446r56CvRSHigkfZr1j/ZRGcHwQVucz+BkKiYfSj5gg=; b=fzmOLJ1d2sJ6HQ7LJsow31oCOY2CW51T/waBi9cqzHlFWwGKoSckxgD0OrzyRhcqUT ImHZeGHDjreoz3cp7bV8Y3akUwmDCFkScOjH+nCVPOFUzM4BFJl8eFE+boAezo+3OeQZ ltNYEGsCzRUpiM8UVClwkHYQhDULvFEqQpOdapnMwDREAoeKI7W3WMhRGT73xmnC2Os7 gj22Dj8hlcO1L5Ao+oMwWQWOIbHt/0ixI8CSaPz069X18FBq2Rt8UnZLQA+ixmx/sck6 sh0f+iLBiB1e+N/PRYwwpKpo3x6s6dr3NQi/A0nW0vy+XmleSi6twEUfSe4edRAkK3rA 2Qcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789048937; x=1789653737; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-type:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=446r56CvRSHigkfZr1j/ZRGcHwQVucz+BkKiYfSj5gg=; b=d2ta1Vgn7TF1NKeZjHtQ9DiRO8qBHaUN1nThvf/K+A3SEAmjzKckC+pfGljXjFrFJa ESDaKZ6LEo8OIkz4YvkS2h4wUMMCznEZVK2nr5X8BQswlTb1bFEaa9i1YSpHrrAW5/SD NkbikFgTNYwZHmk94Vfj1h8Odb6wKUdl+gwKR9+Ts0AwAZUSEz0AABbHh7egvAvW3jcd Itwcv16GyLPYCqImIkjh+Phna50TUDtGOMhH5/JAMYtFZlQK+00QzG2HFroSrXqXLDRL MchVKj5bbK0pmgYKkkQhkB99wTaMx5W0v1l2CQFm+Vqf836fTTaRasoVSVgTGsU6bYht e+yg== X-Forwarded-Encrypted: i=3; AKwUvBz0bCTatpVc+5zd05jXDLDQKQJ+ORLDGObTjtF9+zuaimn6NsA9QDXV0r9qWmlqn0NMWTZ3eig=@isar-build.org X-Gm-Message-State: AFuF++mBu2z8n/9akx0g91zb0nASHn2UqMydyZsClOBRznMdQJDPCCj8 Mm6xE/IfizSAtIJy7VXSvpTtA+4JrUYI23usDncKzy9U7zwnijFt+c07 X-Received: by 2002:a17:903:46cd:b0:2d8:de9f:9a44 with SMTP id d9443c01a7336-2db8dfe7322mr181238275ad.19.1789048937155; Thu, 10 Sep 2026 07:02:17 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ATskLdeNVTPyDFCxZx8Zvo3NEzBm7LLZJWVgPodmO9NqLsAjdA==" Received: by 2002:a17:902:cf4a:b0:2cc:89b8:4246 with SMTP id d9443c01a7336-2dd0e666cdals19369405ad.1.-pod-prod-01-us; Thu, 10 Sep 2026 07:02:15 -0700 (PDT) X-Received: by 2002:a17:902:fc4e:b0:2d7:3f6e:5cb9 with SMTP id d9443c01a7336-2db8da30a48mr195761285ad.8.1789048934745; Thu, 10 Sep 2026 07:02:14 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1789048934; cv=pass; d=google.com; s=arc-20260327; b=rTwNcszKEjxpblWNxqai/uztyPdLr82l/UWbiIbRZsf9yEY/6K7jrb6VDzaYTd0as5 XS3bt+HzKwWGM3e9Cu4j0cEoZoPPf/t4TwkSoYFiInDc6f5QIN4Il4dWVuIrr5WWLzoQ I6g8XxwrbkivBJb3+79OazmvjXuIz53BP0qvCP2Fn6GYlEjWVn8FxDWWC8CALSvV+hJJ 28Kel068RCM+Fj2PM4WLoocxMUoQwbhzaPulQZE9ENQpYmAI58KIcLFVshs+CgUPRS6i pnsihrfJryXRdTu3OmaoLlfXekbWoRMylPnV6x3WfsNPp7J9qCEuGATLGfgvsu1o65D4 4r2w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=mime-version:content-transfer-encoding:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=ddp5oRL9QXzCAD8mQvNtlBHgONwHk16hphOBPJfRyKY=; fh=2vPEtVRFZgJExMSCfX53nKBFsjiPYp/60rbGy5S5Mwo=; b=gSrYsWwY2oVq7m2PjkKKnX+b9bIexh3jC7vyGGDAVi7tELl5j69O/34439la7L6s/a OTJDl3YUAtFDZqH9bR0VlIMk+QET9d9jbMwmokYbsH46Yrn5sk3IEJlCzQw9UlA+iF74 fTlXdXmpI/CWv9Lhne+VlMn8sU5QmTjUIoKZUT7tQ0bTxO/ZAMQ9Su8snYaOh5SzHob3 EFUFrMOAiUU0mnDSytSUSPIjiVQ/+FKus7VBeJbpDsrmvaAayfr2bXznBftcPIAkRY9x kirvUmWX7kEX6TwI4stCfbr5kJJyPve37mVISmCAebFJYzrLeTdDJkcNo+w7LHi7nCso yd5w==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=X7a3+hzy; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazlp170100001.outbound.protection.outlook.com. [2a01:111:f403:c201::1]) by gmr-mx.google.com with ESMTPS id d9443c01a7336-2dc733cf1bcsi1764205ad.8.2026.09.10.07.02.14 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Sep 2026 07:02:14 -0700 (PDT) Received-SPF: pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) client-ip=2a01:111:f403:c201::1; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=BHWZfWwQ+XIOteGRdzw+EcVtEPQiJfQrNlH7nxsENSg74BtoyqGLHDn4ZSNvdQ+N+Jq6zXiVyAcrNLKPvJ/q4FgXo3kF5FTrQOc/TIvBWGEeN4K/BQvUTQfYo4J+pEERHRByFg68i4ewos+Jw4yVby/fvM1Xdnl25g6QZmQg7/1TLbpBEgfvPvGIv8JYma7zeX070RVm/LmRMqDO61DMcTgm3TLRO+W4TngfSqdWDe1AHIZYyVnJCoWLmSpxNhI/NAki+9hEOnuTuVZ3ks3aw0qMN+5HrHqtJI7k3uy0OXItwHkRFd7NGJrbGqwCSrxsXvkAGqwe3gFlyCdvPVNE+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ddp5oRL9QXzCAD8mQvNtlBHgONwHk16hphOBPJfRyKY=; b=nLMdmcPeQyIAyTe4bDNXl8OnvY7HxSz7y1InKSGug3CB2LPTJgaCK6/UaNMmbl3pi/P7sXMXsh+0jec4QPDIa//iyy6HubG42WqmHrkLYvyhvl+jNAmYfveBmfcpw8iv4ptDMAwABTPUb7rvh0F4mSKfQ/KWXUQsQA4xzhYup4ao2u97XwYmAKecWv3ShcfnEqBcjbObfLOtbK8+XRA/zsNBumwvtkW5liR4GMJ2zlLFlpuEUwy0GG1LgabvuTFMcCjB4IA1fhubLJkMDqMJM84nHaQKHu83Q4KimwMLhubtg2ed2bTd5XaXM1TmKKH3UlolgnohqrglvaNG0iQhDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) by MRWPR10MB9602.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:501:9b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.9; Thu, 10 Sep 2026 14:02:11 +0000 Received: from AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c]) by AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM ([fe80::c54c:ccd8:ebbf:477c%6]) with mapi id 15.21.0406.007; Thu, 10 Sep 2026 14:02:11 +0000 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: "MOESSBAUER, Felix" To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH 4/4] fix(dpkg-source): make sstate updates of DEPLOY_DIR_SRC atomic Date: Thu, 10 Sep 2026 16:02:01 +0200 Message-ID: <20260910140201.250854-5-felix.moessbauer@siemens.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260910140201.250854-1-felix.moessbauer@siemens.com> References: <20260910140201.250854-1-felix.moessbauer@siemens.com> X-ClientProxiedBy: FR0P281CA0138.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::7) To AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:17e::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM7PR10MB3956:EE_|MRWPR10MB9602:EE_ X-MS-Office365-Filtering-Correlation-Id: bffb3fd3-71a6-49d4-46b9-08df0f441c32 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|10070799003|1800799024|23010399003|376014|10067099003|3023799007|18002099003|55112099003|22082099003|56012099006|5023799004|11063799006; X-Microsoft-Antispam-Message-Info: 8efid5+Rtreq+beRGqNGHjztZhqbAlG3SLGj8TvHqYdvDapie2ESeRua2qntmeLY7jnYbH9C5jDFDXoCBmyFmXE7n2R/Mzn9M4kpqQHHLKkTLKfUq9ZB/NMdkWhLfZtyhG5jojFhIVriJuSzDO6doVQ+2brvWfMNxsY47V8eqokseufvHic1WUGZIOBifQEJSvGdy6G+LAKVCzYNAWvA87lueRDIiL94sYNdLxqpEgKtKpGihPO78YnQlGrpH6o5VSEaOr1KgeRdDaGg5z86fcEeuNGE8YoJL5u6fgHtjQwIoKtaJ5wwJnAR/y34JqARgxezWejjTLyie0SF8z0NS8495QxWRoaHV4yyuvrAiY3GvkjCVVjC098PC2F6qssL22ROqj8t/aH03vEDw2jGOQCI+XyPqpjTOpqkHqsFNIsLwI/5gGEPcHhwg+jL0yqSU3paTrkIuWG7cpZ5xJIY/i+RQlDCxir3DDPvL9g0nuePDtJebROv4F9EoU5OTjtzUBL30iFLtdgLLY0cSj/s8ArVX6JF4PucyIUQd2Hs6sGezaCi1ZpBH2KEo9OyTPrfe9OepLzzFATtlR5j/riUxl8r2k2P6vHx/vOBIJPp7MQGn2kK+dpP91SS2zE86kRpDIv0+lhx9mPjbQytpWGI0YCqzIwRo2RWk5Kbq16Xwvg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(10070799003)(1800799024)(23010399003)(376014)(10067099003)(3023799007)(18002099003)(55112099003)(22082099003)(56012099006)(5023799004)(11063799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: x1oNKDNv6HLIKNA4c7JqnieaHGKP12BVSTVy2PgGbeUU2ueONhypInt+oe6gcw2RME1LQXYPnSHTv19dyFQPDXJacm0ugsAKClUjHnVn1GLW1Mx3DbtZ6UtTrGNs2CdytL+fhvgL6owet3AC3Vk0t7/mbN7HJu1HfaafV0UhpcE2gXduI5Hj6eVYWCdJ0M2ZQnZyg1bXdozMReXWnguRyRChgyrDp2bD8dfkXrNYp/itUKewjEvca35X3P9G3qcx6hWuc3xotSy+DN/gj1zwmfz3y3+Yy2uC4QhIZjn51tufnaO7e3GIb7pJ4g9nieA/QF9mjsxBRuSZSS7AbUCKcGPtU1pIBxHYzCLkCKdAcAjM8eLKxyjbd7xswyKvB0l6tAtn5uByKvBAaz3kxqMCocJ9B/ae7JuTkhuFpOtBxygBKayWOLST32Flqh4PCSynmlzP4agHDtQz00oVFLObDfrgapcQjOYyLeHQbwywJ+gfp8iiNW4Vo8zW5wj81BkMwsNjbCFAXY6y1oY2SCkwgwOfYg+cAoC8S2+Gesq1h4xAHYCgX6Gt3mqiM5pTRCJe3z8FWxfOVObZ1x7SJ7f6S8/1EHHQln5dS5YSJ9+lJ8IsYXky5ikdmgbiIIgmfP+OOdl01y8ooUVw5Of7HCDbSpg5kAcZ5Bii79TyYjNfXYzl/oKAtSzWOL4/kYZB6orWH4u5qNSJwqYGsUQqOB+gLNKj9K3PEBnfyT3tXHgg9iR602jED2Ub2M2X3TcYqOhvepKcps+L2D1ECMqRB84z1nQzH8cVaO8QeSLl7LGIIUruwaMc5+Ns5x+BWYXfVP00myFErCLqqcWaygFvZnR5atPuknqkA7kPNk5IuphmkGhoHw7aOPRBkrq3gJaTr1zZh36Ub8/RYQDmYgn+JJro6KCJaa82ace3wprvrI9J/CpCO2qdnmXkf+2ydcnrjso0zZkm7BeSbKg9Ygi/UQZ9uNKK1SigbWWMkWOljohvKKDoNbxj0TbBNmOzF3C0tIJ08Gv63YRgaeHowxdv/R8zmm288wIKn2dmT7SC/kIKfKV2uT4Vv/voGRKAr63SYursBRNyNv9WaKw6jnaNzua37vf+lfVU+enUefxEuGWtOjMk/i0vSdwuV8ghrfZxFvA0Ata8uEPysdRjOIg7a6cAGDeU7idxfRruBBI6jmbbptNWcGorWzLQBayQUhuNwK/sGyy3SG2Adj0Q8oFIGX7k/Q8yKiW+cPVLFqIBYjFDOitBooMVNOAFnDal1WqAwauB+hFPbWRHIO/b17HgzafiXeoZpFOMGD2GkG3efYFNEaE9i+XI+q/Zwbpu+8TnzBKzlVBJ9Jg5PCOITba5QAOOoCNX33opcE+2/dmDpxmjvqbZQWQd4HoQuF/nQ/HALh1X5RSqUUID/DjZgr8xhv1sU786gjprAky6tmJLmTuXnt0KBxzfo3ENvqINp67K4sbeyXDuVb+8d7k8rO6UdB/MqPq2nqNg9G0IvRRTh0WOFcDlyNn6UwYC93btOfjZ6WYmb02/TScEykRlHpKzIytyynQtF9eb+ML5Bfa3X1EmdzCRIMo/OZgsKoJXNkHn5pRXLDj7FdH6eWLX8BMShRQYf2+jj/rfMDZ6FoBlz0H7dGb3Uw9jvN712KowLjKCWp7/yoP2+3Pl9lpPHvkvnf9Cm0Ol02S04nqMhpFT+Ik573Cf4FM3LoObiQLGaLWYyPVB0uYgKliIGEryGjfJbuzdI1W+zV0EZhSUUgLlvTND3OY4ozIYrFchrBQqBKWrLSQT+awfgpUx X-MS-Exchange-AntiSpam-MessageData-1: 61AddEKE9xXb79NrqPAiTZgSzXpjVGyLZGA= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: bffb3fd3-71a6-49d4-46b9-08df0f441c32 X-MS-Exchange-CrossTenant-AuthSource: AM7PR10MB3956.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Sep 2026 14:02:11.6084 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mizb8z9M7JNfAclJU8UTicB5sBSyQPue+dkIjnpjVpoEbbqquHAxpcTeTKwbt2Uj/gTE38rT51zLJyKCFegdAodU6kgjmE+7iiW3SWGnux8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MRWPR10MB9602 X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=X7a3+hzy; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 2a01:111:f403:c201::1 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= DEPLOY_DIR_SRC is qualified by DISTRO and BPN, but not by DISTRO_ARCH or MACHINE. All multiconfigs sharing DISTRO therefore run do_dpkg_source and do_deploy_source of the very same recipe on one directory, concurrently and without mutual exclusion. do_dpkg_source updates DEPLOY_DIR_SRC via sstate. Its sstate_clean() unlinks the .dsc and the tarballs before sstate_install() puts them back, so a do_deploy_source running in parallel can observe DEPLOY_DIR_SRC empty or partially populated. It then removes the source from isar-apt and either adds nothing back, silently dropping it, or fails in reprepro includedsc because the tarball referenced by the .dsc is not there yet. Mirror the do_dpkg_build/do_deploy_deb fixes: - Take a dedicated lock in the sstate clean/install of do_dpkg_source and in do_deploy_source via the sstate-lockfile task flag, so the latter never sees a partially populated directory. The lock lives next to, not inside, DEPLOY_DIR_SRC so that sstate_clean_manifest() cannot sweep it away. - Scan DEPLOY_DIR_SRC first in do_deploy_source and skip the update when it is empty, leaving isar-apt untouched instead of dropping the source. That is safe: the multiconfig doing the rebuild runs its own do_deploy_source once do_dpkg_source completed. Do not add the lock to do_clean: CLEANFUNCS also runs sstate_cleanall(), which acquires the same lock, and flock() would deadlock on the nested acquisition. Fixes: 826acb32 ("dpkg: cache do_dpkg_source results in sstate") Signed-off-by: Felix Moessbauer --- meta/classes-recipe/dpkg-source.bbclass | 35 +++++++++++++++++++------ 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/meta/classes-recipe/dpkg-source.bbclass b/meta/classes-recipe/dpkg-source.bbclass index 97cf9714..6f9091a8 100644 --- a/meta/classes-recipe/dpkg-source.bbclass +++ b/meta/classes-recipe/dpkg-source.bbclass @@ -15,10 +15,18 @@ DPKG_SOURCE_EXTRA_ARGS ?= "-I" DEBIAN_SOURCE ?= "${BPN}" SRCPKG_DIR = "${WORKDIR}/deploy-srcpkg" DEPLOY_DIR_SRC = "${DEPLOY_DIR}/isar-source/${DISTRO}/${BPN}" +# DEPLOY_DIR_SRC is not qualified by DISTRO_ARCH or MACHINE, so all multiconfigs +# sharing DISTRO run do_dpkg_source and do_deploy_source of the same recipe on +# it, concurrently. Serialize the sstate clean/install of do_dpkg_source against +# do_deploy_source, so that the latter never sees a partially populated +# directory. Keep the lock next to, not inside, DEPLOY_DIR_SRC so that +# sstate_clean_manifest() cannot sweep it away. +DEPLOY_DIR_SRC_LOCK = "${DEPLOY_DIR}/isar-source/${DISTRO}/${BPN}.lock" do_dpkg_source[cleandirs] = "${SRCPKG_DIR}" do_dpkg_source[sstate-inputdirs] = "${SRCPKG_DIR}" do_dpkg_source[sstate-outputdirs] = "${DEPLOY_DIR_SRC}" +do_dpkg_source[sstate-lockfile] = "${DEPLOY_DIR_SRC_LOCK}" do_dpkg_source() { # Create a .dsc file from source directory to use it with sbuild DEB_SOURCE_NAME=$(dpkg-parsechangelog --show-field Source --file ${WORKDIR}/${PPS}/debian/changelog) @@ -42,24 +50,35 @@ addtask dpkg_source_setscene CLEANFUNCS += "deb_clean_source" +# Do not guard this with DEPLOY_DIR_SRC_LOCK: it runs from CLEANFUNCS, which also +# runs sstate_cleanall() taking that lock itself, and flock() would deadlock on +# the nested acquisition. deb_clean_source() { repo_del_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" "${DEBIAN_SOURCE}" } do_deploy_source[depends] += "isar-apt:do_cache_config" -do_deploy_source[lockfiles] = "${REPO_ISAR_DIR}/isar.lock" +do_deploy_source[lockfiles] = "${REPO_ISAR_DIR}/isar.lock ${DEPLOY_DIR_SRC_LOCK}" do_deploy_source[dirs] = "${S} ${DEPLOY_DIR_SRC}" do_deploy_source() { - repo_del_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ - "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" "${DEBIAN_SOURCE}" + # Scan DEPLOY_DIR_SRC first. An empty directory means another multiconfig is + # rebuilding this recipe: DEPLOY_DIR_SRC is transiently empty between + # sstate_clean() and sstate_install() of its do_dpkg_source. Removing the + # source from isar-apt and adding nothing back would drop it. Skipping is + # safe: that multiconfig runs its own do_deploy_source once the rebuild + # completed. DSC_FILE=$(find ${DEPLOY_DIR_SRC} -maxdepth 1 -name "${DEBIAN_SOURCE}_*.dsc") - if [ -n "${DSC_FILE}" ]; then - repo_add_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ - "${REPO_ISAR_DB_DIR}"/"${DISTRO}" \ - "${DEBDISTRONAME}" \ - "${DSC_FILE}" + if [ -z "${DSC_FILE}" ]; then + bbnote "${DEPLOY_DIR_SRC} is empty, leaving isar-apt untouched" + return fi + repo_del_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ + "${REPO_ISAR_DB_DIR}"/"${DISTRO}" "${DEBDISTRONAME}" "${DEBIAN_SOURCE}" + repo_add_srcpackage "${REPO_ISAR_DIR}"/"${DISTRO}" \ + "${REPO_ISAR_DB_DIR}"/"${DISTRO}" \ + "${DEBDISTRONAME}" \ + "${DSC_FILE}" } addtask deploy_source after do_dpkg_source