From patchwork Fri Oct 11 05:43:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 13832088 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 240F7D2447B for ; Fri, 11 Oct 2024 05:43:08 +0000 (UTC) Received: from EUR02-AM0-obe.outbound.protection.outlook.com (EUR02-AM0-obe.outbound.protection.outlook.com [40.107.247.65]) by mx.groups.io with SMTP id smtpd.web10.5097.1728625384462263787 for ; Thu, 10 Oct 2024 22:43:04 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@siemens.com header.s=selector2 header.b=rN9zULqc; spf=pass (domain: siemens.com, ip: 40.107.247.65, mailfrom: jan.kiszka@siemens.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dDJumFaDAL28DP9WY5IsbifYo0xaGTwQpp2BdbQfyQZTSNCB1TCYYqudeXFA8RW00gjNxyeg3QDMjRRP6nszaNs2rvwyG4UYYJFfqMxMWrETw7vzsKuilKU2QNZdOtVhM91xsK7SC9axfld6IuTVhYc4fOHY/NvC6K0V9sk0wzU0Hm9LmMS307XHuK3JqPKvjDReUg6Ogm9f1yJb0VMEp1sML0T0hwh/HpRh9ALohNtU2LqUo/Of/ZupHo3tOPqt5r9Bx646qJAT1e9Fm94HcuvRv7XfPVIHZI9edzf99crAic+qXgY/zYAD5TOdyfVqEfg8IqORhw34HLBgOIjD0A== 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=pIF0H852e/o/xkB7HF3qo+4zkmcLMAl1nWS4vproejM=; b=nez4bvi/dj2nlfEELqF7J0Xadd+f2+UmUeNCBGH8hMeG+Y4Bmr/CITWGMPZMJPQcXgfoCXieQrkBdzqV7C/j8INN6MCtwUf0dnQf6zLe1ma8KS9VVuSVdzU8dNBDAGtvSaP4ogOlFMHbF20cCYDNQkJy2jk/+M3h0TJ1zsZ1Lzzurd7Pcehr4RzPHZrFzNpYYdcUqymnHDJpUXXLF8AQRLET4kcuJazcu7IkKgfyf5ieu72mmclN9ZN2fAxUW5oO48RMyp2n22PUolR8uKURvV1+XJgOIIr/Dc662V//L1UTHHHTreDxu+dvzRYAw6D9AD4sm2RcT5mPSsd4OXLJKg== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=siemens.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pIF0H852e/o/xkB7HF3qo+4zkmcLMAl1nWS4vproejM=; b=rN9zULqc7SnB0RCHu++PEa47PUr5U8r/hye0v9MbjT1OLkx1i0P13N5ijgHLpVvNIHh5Thgp/u1PoiolDFKoNnROGWxn6Kt8+Gb9y5Td44XWqGubyx/buvn7ifFPBdM4GKSirWZeJ5hHXm2ZTFXV9xtGK80uT+0+WcrvDPdAzswiYT5ZKyP2EAEjVVJZhk0EcOnW5IL21qYIgUD1gegQIrKWS3FEjX2Or1cO/5b6geZ4O3Grkk/ewH8o9j80iPxclzije9XsqsopGKn9/BXiMIOTnmBb52AxCMoyN33rjZ+GXxT7g/WwYoaPayNvRrSdyGZ0FiFveZiHbjcorizICw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=siemens.com; Received: from AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:588::19) by PAWPR10MB7697.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:35f::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8048.13; Fri, 11 Oct 2024 05:43:01 +0000 Received: from AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM ([fe80::8fe1:7e71:cf4a:7408]) by AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM ([fe80::8fe1:7e71:cf4a:7408%3]) with mapi id 15.20.8048.013; Fri, 11 Oct 2024 05:43:01 +0000 Message-ID: <5a26159a-c773-4d71-be08-f41d026f1893@siemens.com> Date: Fri, 11 Oct 2024 07:43:00 +0200 User-Agent: Mozilla Thunderbird From: Jan Kiszka To: cip-dev Subject: [isar-cip-core][PATCH v2] Update isar to latest revision Content-Language: en-US Autocrypt: addr=jan.kiszka@siemens.com; keydata= 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 X-ClientProxiedBy: FR0P281CA0213.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ac::7) To AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:588::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS4PR10MB6181:EE_|PAWPR10MB7697:EE_ X-MS-Office365-Filtering-Correlation-Id: 566d16eb-0c60-418e-60e7-08dce9b791aa X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?q?15WjERCSUE8vn658yUKhyQfi8Dpt/Gm?= =?utf-8?q?dhphF66JMDO9uEaYY90bgTP5YvgruMZna1EN5Tf2EEEBQsseXYuwQTdtz4fl5QExG?= =?utf-8?q?jwFvSiisK7nngFz2eC/IpqSUkDWFH8P6TO1zPhqxYRCe1u87SZtLArlU4jYlbpPK6?= =?utf-8?q?ZoJpbawUX2WXV/SzLTvQfM2odiwrhAFyBiYXjTQhpOeU5yw9IxZ3t15X9iulMqMSb?= =?utf-8?q?aEtU2i3IzCeWC3mfl8TutkcKd35ETyV1x3ChEiSLWzfcVBaStNBxJ7GBgz9ySJJDF?= =?utf-8?q?5eCvsE++XoBjP8hzV/vp1uGCFjr+oYAfd2K4xuyeiHwxZ+YOTxOFXo4diwFyfbTpx?= =?utf-8?q?+xd/jHeOQm79VfoAF93j6dItZhIFdyk7ShrAQ0HTz+urS7ofZgM0z0olt/d2RwFkq?= =?utf-8?q?19+Y5PFbQdLWKAek+S2X/JGfBMP70Wxg7rzRvOBxV9xHORLu+CdsyHljQHo0vPFl3?= =?utf-8?q?67xIJWTfIgf3MLiOdA6Z2vvHADBWJwR3Hxbpnji2ENLO4EzkM9NF86qXoWJRDyaFi?= =?utf-8?q?2/jiy/nOobSWDcxstdWjp6OHFI01iFfsl7nGgNyPxwghkVry9X+ZsyxjR6LSofSGG?= =?utf-8?q?XdPxcWqJxcm9GqVoHA5/tE1siQeDymjTMnb22bc2toPz84IvUf9RFKdty1kwYAyUm?= =?utf-8?q?KMxCOc8Z7ZHHoqh5xqQN2zZezzjqOdMEWf0Knup/Uj1DXzFtHBtJ7OBguuzlXwSfr?= =?utf-8?q?AIgnGgWLOTh9blVumyCrmujYD7SJrUIgihjG6lhi5UFQ2jwtSMFvWfR1YOhNY+Cd7?= =?utf-8?q?OL98SKB2VW6dQKc4Nf4nK+tH6DXMwX4C3Zx3ILDEcjgypHkgxaOzNgsEQBxRghgZH?= =?utf-8?q?PTKZcktbprm7ZtJ2bmsgCrPi+xoUkmc2NJH6RgZ8DpxfD+QDXEHExJcPkhyxIzHDw?= =?utf-8?q?Bo1wAvp3oRj8E2U/7CaozkHAhFg+ivbUEOomxQkeS9a9dYo3uNpZGEHa9TstmEAos?= =?utf-8?q?H75NqlOJa0B6IvIWZjeZQCsWNlQS2FhaX2lMh4eLbtV6mwwuT7B2n7tIml/wnOAah?= =?utf-8?q?3GgV72IGW/Gie/UR/nP/oqN6eItl/AA6PrnWhI6YFdRD2GfeYgQxXUp+YxDDwlzGE?= =?utf-8?q?FuX6hQ35euk5vrZzol3Q+5jp4gnNe+GXA+aijdsOlBcMOCVtBixyiVzduLS2xBQhA?= =?utf-8?q?uZQ+t9ZLCEVfCYaStq9J/nhCvq8BSYdZNCayfMsDk0uQsnh8o/7lhTrkGodw++kAb?= =?utf-8?q?H2FurC5RIU7jBNn6TkhPeB0Rdky/0nKj/eQA=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?0AW8UqY6VmqS2MAp8RQq3Bp8wUe3?= =?utf-8?q?ftZtZyDadWs0DgIQ8stQnH90wuh8WVrk4vNYSTJDAZPMBz9jKGjQH373q0yiV2xVo?= =?utf-8?q?QxSvzFqXzdb1RywoHmo7vSKp6ijUEgH1UWD+pStn++CyWLUmtCKuGU46r64Fi0920?= =?utf-8?q?6oPHCLVJ1iNLjXtrhakSl3KuNctSDnO5/R63o53TBd99wCBz7x8vt7WSNPPO0cNG9?= =?utf-8?q?6y8VqL8OXpG8Z9jlcwUy5nr4eH0B3QH5fMBJJd+URN9ODFJ7mUi60HO9Kc2yphoFB?= =?utf-8?q?Ahg3lejrgPjyEidMIQVasiugJz+TZN/XRdMQIxcgESes71pmDvCsEW5hZl/kNilib?= =?utf-8?q?YvQUrIyYrCttkWOZmRTDgeu40kAtQ6mhyHXR1DDajoXiL16AuIMpErFkSz5SL3vsw?= =?utf-8?q?SnF5GZJ2sCtV+2g7v05jVdR575ppMrI/Zt0wGlDKwsRcpomevKMzIWWb1zLwfybiw?= =?utf-8?q?mLQ5vJgQwpDbxm08QOmnssD7iz2BESWiH5WvBhGw/3Yj5wJFRp+R2YyqCHiECMsNN?= =?utf-8?q?1ax4us/UK37zQx7JsvxGgcDBwUvcEWO80DRYEgyjHoEMHVdRltbqz/gImuFZYIaoC?= =?utf-8?q?NxdyYO1cOO7pXHnIOjjvn7udNzEEXA65AE9hsWmSPWJs7wDR0YJ0EviH3ex2NmhRK?= =?utf-8?q?14KVyyd/Os4JCGERVyqCwP5YgpFqEQFfCg8jESDQXNZZzWIHJKZfxoVmtmBR2foOZ?= =?utf-8?q?z+KjaGvz9M7pOjDrYX/NCAs0BCWBkBd0yjm24KA/JLf4TXX41CcNB0+Zp3zVWrgN0?= =?utf-8?q?gUf2mj9Th+jOEWClRJ7NlDDmVWczBc425SY4W5RBXlW+UqSpk9N3CQojs9BnSUoDg?= =?utf-8?q?oSOtEEvW1ESwyrq3ekLu8ftGYFAIM3kAP+aFp+PHnc4bRfv6HpqMy6oVkdJJ2r2nv?= =?utf-8?q?9iMYXaxofoCmv7VA/Eyzm6OoWemXzgh0SVV0xPD4x4/8tsKd4wGfJB2cipOq4Bc67?= =?utf-8?q?R7FJGp6vkp9KTAVAghOFhJP9hV1LbJnm9KvAeQlcRWPzESt9IZIYKTxFy8w+MUEmS?= =?utf-8?q?rjjLWZyvd9yWvsNxUPBlDc5LuaYJBWQIRunibK685Qz7jyJn3SafX9CRxHLoz4Vz9?= =?utf-8?q?XhEitFjm3onUtkUn7Pauw659mYIBTP9WZFTn47Ii2C5FJjG6tacZh1CcmSa5kG14M?= =?utf-8?q?pxqeE+4HxLwjltVy7/MAs4g0y4sFfyIMQz+2E+rR8Vx8kk4BQfC78RICMs49quvn9?= =?utf-8?q?eXWdem93qhWU7fL/zU3wNGJlIzBuAhxGKM9MJNBf+ohcCebN+8Ds4Ef4137at2a/e?= =?utf-8?q?2LgRm12ufOStu2wbLNcYTRLxSizTMgGfqx0KCjHuPWynbHJKKkf+oISZBiDlciQI8?= =?utf-8?q?g+1r+/7VfY2E82RjKkCmRGjyaOtDNbxTQjdYAzW6f9STxZi6RGYCKOCiSAc/IQ5oh?= =?utf-8?q?4+qzIU/fErTiBNp6qsoq4GMUvDx7K07F1iZRiRn5HoXyYz25kchC2Nfke6nZqidgg?= =?utf-8?q?LMcbb7LNFKxHt2Kce+x5On0EcI0g0EX67JzNhbnMIOgyqnvK9Suj5OyE83bnetvms?= =?utf-8?q?sRS7YInH5jll?= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: 566d16eb-0c60-418e-60e7-08dce9b791aa X-MS-Exchange-CrossTenant-AuthSource: AS4PR10MB6181.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2024 05:43:01.2694 (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: YHhjJfBrBhkq+zVvovX4BKqbPd2KwAi5xfLispjt1boAKBnWhteftMO78bkP9kSnaQpA6Bzjgro852Rpbei3xA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR10MB7697 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 11 Oct 2024 05:43:08 -0000 X-Groupsio-URL: https://lists.cip-project.org/g/cip-dev/message/17030 From: Jan Kiszka This should resolve some reproducibility issues. Otherwise, no major changes for us. Due to isar regressions around umounting after certain tasks, we need to carry 4 upstream-pending patches for now. Signed-off-by: Jan Kiszka --- Changes in v2: - include pending isar patches to avoid CI breakages ...king-the-build-when-mounts-are-no-lo.patch | 64 +++++++++++ ...002-rootfs-Provide-rootfs_do_umounts.patch | 105 ++++++++++++++++++ ...Add-missing-umounts-after-generation.patch | 29 +++++ ...ng-umounts-in-rootfs_postprocess-and.patch | 74 ++++++++++++ kas-cip.yml | 16 ++- 5 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 isar-patches/0001-image-Avoid-breaking-the-build-when-mounts-are-no-lo.patch create mode 100644 isar-patches/0002-rootfs-Provide-rootfs_do_umounts.patch create mode 100644 isar-patches/0003-initramfs-Add-missing-umounts-after-generation.patch create mode 100644 isar-patches/0004-rootfs-Add-missing-umounts-in-rootfs_postprocess-and.patch diff --git a/isar-patches/0001-image-Avoid-breaking-the-build-when-mounts-are-no-lo.patch b/isar-patches/0001-image-Avoid-breaking-the-build-when-mounts-are-no-lo.patch new file mode 100644 index 00000000..8e650445 --- /dev/null +++ b/isar-patches/0001-image-Avoid-breaking-the-build-when-mounts-are-no-lo.patch @@ -0,0 +1,64 @@ +From 84fdccc3223d31bded29dd5adf86948f6cf83e81 Mon Sep 17 00:00:00 2001 +From: Jan Kiszka +Date: Tue, 1 Oct 2024 16:52:26 +0200 +Subject: [PATCH 1/4] image: Avoid breaking the build when mounts are no longer + present on umount + +This does not seem to trigger yet because we always have those +mountpoints present. But if that is no longer the case, we will bail out +when mountpoint fails due to the set -e. + +Fixes: 165519a7b314 ("sudo: Fail on the first error") +Signed-off-by: Jan Kiszka +--- + meta/classes/image.bbclass | 25 ++++++++++++++++--------- + 1 file changed, 16 insertions(+), 9 deletions(-) + +diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass +index 0c162aa3..9d5b782a 100644 +--- a/meta/classes/image.bbclass ++++ b/meta/classes/image.bbclass +@@ -418,24 +418,31 @@ do_rootfs_finalize() { + -maxdepth 1 -name 'qemu-*-static' -type f -delete + fi + +- mountpoint -q '${ROOTFSDIR}/isar-apt' && \ +- umount '${ROOTFSDIR}/isar-apt' && \ ++ if mountpoint -q '${ROOTFSDIR}/isar-apt'; then ++ umount '${ROOTFSDIR}/isar-apt' + rmdir --ignore-fail-on-non-empty ${ROOTFSDIR}/isar-apt ++ fi + +- mountpoint -q '${ROOTFSDIR}/base-apt' && \ +- umount '${ROOTFSDIR}/base-apt' && \ ++ if mountpoint -q '${ROOTFSDIR}/base-apt'; then ++ umount '${ROOTFSDIR}/base-apt' + rmdir --ignore-fail-on-non-empty ${ROOTFSDIR}/base-apt ++ fi + +- mountpoint -q '${ROOTFSDIR}/dev/pts' && \ ++ if mountpoint -q '${ROOTFSDIR}/dev/pts'; then + umount '${ROOTFSDIR}/dev/pts' +- mountpoint -q '${ROOTFSDIR}/dev/shm' && \ ++ fi ++ if mountpoint -q '${ROOTFSDIR}/dev/shm'; then + umount '${ROOTFSDIR}/dev/shm' +- mountpoint -q '${ROOTFSDIR}/dev' && \ ++ fi ++ if mountpoint -q '${ROOTFSDIR}/dev'; then + umount '${ROOTFSDIR}/dev' +- mountpoint -q '${ROOTFSDIR}/proc' && \ ++ fi ++ if mountpoint -q '${ROOTFSDIR}/proc'; then + umount '${ROOTFSDIR}/proc' +- mountpoint -q '${ROOTFSDIR}/sys' && \ ++ fi ++ if mountpoint -q '${ROOTFSDIR}/sys'; then + umount '${ROOTFSDIR}/sys' ++ fi + + if [ -e "${ROOTFSDIR}/etc/apt/sources-list" ]; then + mv "${ROOTFSDIR}/etc/apt/sources-list" \ +-- +2.43.0 + diff --git a/isar-patches/0002-rootfs-Provide-rootfs_do_umounts.patch b/isar-patches/0002-rootfs-Provide-rootfs_do_umounts.patch new file mode 100644 index 00000000..6ac2af36 --- /dev/null +++ b/isar-patches/0002-rootfs-Provide-rootfs_do_umounts.patch @@ -0,0 +1,105 @@ +From 79155ddf156e073a98315bf2f35f7ca0f5ba3a77 Mon Sep 17 00:00:00 2001 +From: Jan Kiszka +Date: Tue, 1 Oct 2024 17:08:24 +0200 +Subject: [PATCH 2/4] rootfs: Provide rootfs_do_umounts + +This will be used more frequently soon to avoid dangling mounts. + +Signed-off-by: Jan Kiszka +--- + meta/classes/image.bbclass | 28 ++-------------------------- + meta/classes/rootfs.bbclass | 32 ++++++++++++++++++++++++++++++++ + 2 files changed, 34 insertions(+), 26 deletions(-) + +diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass +index 9d5b782a..1eb974e8 100644 +--- a/meta/classes/image.bbclass ++++ b/meta/classes/image.bbclass +@@ -405,6 +405,8 @@ def apt_list_files(d): + IMAGE_LISTS = "${@ ' '.join(apt_list_files(d)) }" + + do_rootfs_finalize() { ++ rootfs_do_umounts ++ + sudo -s <<'EOSUDO' + set -e + +@@ -418,32 +420,6 @@ do_rootfs_finalize() { + -maxdepth 1 -name 'qemu-*-static' -type f -delete + fi + +- if mountpoint -q '${ROOTFSDIR}/isar-apt'; then +- umount '${ROOTFSDIR}/isar-apt' +- rmdir --ignore-fail-on-non-empty ${ROOTFSDIR}/isar-apt +- fi +- +- if mountpoint -q '${ROOTFSDIR}/base-apt'; then +- umount '${ROOTFSDIR}/base-apt' +- rmdir --ignore-fail-on-non-empty ${ROOTFSDIR}/base-apt +- fi +- +- if mountpoint -q '${ROOTFSDIR}/dev/pts'; then +- umount '${ROOTFSDIR}/dev/pts' +- fi +- if mountpoint -q '${ROOTFSDIR}/dev/shm'; then +- umount '${ROOTFSDIR}/dev/shm' +- fi +- if mountpoint -q '${ROOTFSDIR}/dev'; then +- umount '${ROOTFSDIR}/dev' +- fi +- if mountpoint -q '${ROOTFSDIR}/proc'; then +- umount '${ROOTFSDIR}/proc' +- fi +- if mountpoint -q '${ROOTFSDIR}/sys'; then +- umount '${ROOTFSDIR}/sys' +- fi +- + if [ -e "${ROOTFSDIR}/etc/apt/sources-list" ]; then + mv "${ROOTFSDIR}/etc/apt/sources-list" \ + "${ROOTFSDIR}/etc/apt/sources.list.d/bootstrap.list" +diff --git a/meta/classes/rootfs.bbclass b/meta/classes/rootfs.bbclass +index f0abd795..ef40cbdf 100644 +--- a/meta/classes/rootfs.bbclass ++++ b/meta/classes/rootfs.bbclass +@@ -65,6 +65,38 @@ rootfs_do_mounts() { + EOSUDO + } + ++rootfs_do_umounts() { ++ sudo -s <<'EOSUDO' ++ set -e ++ if mountpoint -q '${ROOTFSDIR}/isar-apt'; then ++ umount '${ROOTFSDIR}/isar-apt' ++ rmdir --ignore-fail-on-non-empty ${ROOTFSDIR}/isar-apt ++ fi ++ ++ if mountpoint -q '${ROOTFSDIR}/base-apt'; then ++ umount '${ROOTFSDIR}/base-apt' ++ rmdir --ignore-fail-on-non-empty ${ROOTFSDIR}/base-apt ++ fi ++ ++ if mountpoint -q '${ROOTFSDIR}/dev/pts'; then ++ umount '${ROOTFSDIR}/dev/pts' ++ fi ++ if mountpoint -q '${ROOTFSDIR}/dev/shm'; then ++ umount '${ROOTFSDIR}/dev/shm' ++ fi ++ if mountpoint -q '${ROOTFSDIR}/dev'; then ++ umount '${ROOTFSDIR}/dev' ++ fi ++ if mountpoint -q '${ROOTFSDIR}/proc'; then ++ umount '${ROOTFSDIR}/proc' ++ fi ++ if mountpoint -q '${ROOTFSDIR}/sys'; then ++ umount '${ROOTFSDIR}/sys' ++ fi ++ ++EOSUDO ++} ++ + rootfs_do_qemu() { + if [ '${@repr(d.getVar('ROOTFS_ARCH') == d.getVar('HOST_ARCH'))}' = 'False' ] + then +-- +2.43.0 + diff --git a/isar-patches/0003-initramfs-Add-missing-umounts-after-generation.patch b/isar-patches/0003-initramfs-Add-missing-umounts-after-generation.patch new file mode 100644 index 00000000..0f2770aa --- /dev/null +++ b/isar-patches/0003-initramfs-Add-missing-umounts-after-generation.patch @@ -0,0 +1,29 @@ +From 78e8ecbaab9dcf887e46e52d220647ad838b4d4b Mon Sep 17 00:00:00 2001 +From: Jan Kiszka +Date: Mon, 30 Sep 2024 20:46:50 +0200 +Subject: [PATCH 3/4] initramfs: Add missing umounts after generation + +Failing to unmount what was mounted via rootfs_do_mounts can cause +troubles on rebuilds. + +Signed-off-by: Jan Kiszka +--- + meta/classes/initramfs.bbclass | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/meta/classes/initramfs.bbclass b/meta/classes/initramfs.bbclass +index 6886b95a..42013356 100644 +--- a/meta/classes/initramfs.bbclass ++++ b/meta/classes/initramfs.bbclass +@@ -45,6 +45,8 @@ do_generate_initramfs() { + update-initramfs -u -v ; \ + fi' + ++ rootfs_do_umounts ++ + if [ ! -e "${INITRAMFS_ROOTFS}/initrd.img" ]; then + bberror "No initramfs was found after generation!" + fi +-- +2.43.0 + diff --git a/isar-patches/0004-rootfs-Add-missing-umounts-in-rootfs_postprocess-and.patch b/isar-patches/0004-rootfs-Add-missing-umounts-in-rootfs_postprocess-and.patch new file mode 100644 index 00000000..2f6b9d09 --- /dev/null +++ b/isar-patches/0004-rootfs-Add-missing-umounts-in-rootfs_postprocess-and.patch @@ -0,0 +1,74 @@ +From 55d8292d600e1d29fdf3f7eecc36f7c2ad6b0671 Mon Sep 17 00:00:00 2001 +From: Florian Bezdeka +Date: Wed, 2 Oct 2024 22:31:55 +0200 +Subject: [PATCH 4/4] rootfs: Add missing umounts in rootfs_postprocess() and + rootfs_install() + +Calls to rootfs_do_mounts should always be paired with calls to +rootfs_do_umounts. + +In case there was an exception thrown within the try blocks they will be +re-raised after the finally block has been processed. This way we try to +avoid leaking mounts but unmounting might still fail. In any case we +tried our best to clean up. + +Signed-off-by: Florian Bezdeka +--- + meta/classes/rootfs.bbclass | 31 +++++++++++++++++++------------ + 1 file changed, 19 insertions(+), 12 deletions(-) + +diff --git a/meta/classes/rootfs.bbclass b/meta/classes/rootfs.bbclass +index ef40cbdf..c7011508 100644 +--- a/meta/classes/rootfs.bbclass ++++ b/meta/classes/rootfs.bbclass +@@ -248,18 +248,21 @@ python do_rootfs_install() { + progress_reporter = bb.progress.MultiStageProgressReporter(d, stage_weights) + d.rootfs_progress = progress_reporter + +- for cmd in cmds: +- progress_reporter.next_stage() ++ try: ++ for cmd in cmds: ++ progress_reporter.next_stage() + +- if (d.getVarFlag(cmd, 'isar-apt-lock') or "") == "acquire-before": +- lock = bb.utils.lockfile(d.getVar("REPO_ISAR_DIR") + "/isar.lock", +- shared=True) ++ if (d.getVarFlag(cmd, 'isar-apt-lock') or "") == "acquire-before": ++ lock = bb.utils.lockfile(d.getVar("REPO_ISAR_DIR") + "/isar.lock", ++ shared=True) + +- bb.build.exec_func(cmd, d) ++ bb.build.exec_func(cmd, d) + +- if (d.getVarFlag(cmd, 'isar-apt-lock') or "") == "release-after": +- bb.utils.unlockfile(lock) +- progress_reporter.finish() ++ if (d.getVarFlag(cmd, 'isar-apt-lock') or "") == "release-after": ++ bb.utils.unlockfile(lock) ++ progress_reporter.finish() ++ finally: ++ bb.build.exec_func('rootfs_do_umounts', d) + } + addtask rootfs_install before do_rootfs_postprocess after do_unpack + +@@ -379,9 +382,13 @@ python do_rootfs_postprocess() { + if cmds is None or not cmds.strip(): + return + cmds = cmds.split() +- for i, cmd in enumerate(cmds): +- bb.build.exec_func(cmd, d) +- progress_reporter.update(int(i / len(cmds) * 100)) ++ ++ try: ++ for i, cmd in enumerate(cmds): ++ bb.build.exec_func(cmd, d) ++ progress_reporter.update(int(i / len(cmds) * 100)) ++ finally: ++ bb.build.exec_func('rootfs_do_umounts', d) + } + addtask rootfs_postprocess before do_rootfs after do_unpack + +-- +2.43.0 + diff --git a/kas-cip.yml b/kas-cip.yml index f00ad74c..7e9ece38 100644 --- a/kas-cip.yml +++ b/kas-cip.yml @@ -17,12 +17,26 @@ target: cip-core-image build_system: isar +defaults: + repos: + patches: + repo: cip-core + repos: cip-core: isar: url: https://github.com/ilbers/isar.git - commit: d2d3b3e94874d62d48c0cafb99dfffde6afbc6ce + commit: 36b04737a07baafc5af64cdc8aa61fad13fb494a + patches: + 01: + path: isar-patches/0001-image-Avoid-breaking-the-build-when-mounts-are-no-lo.patch + 02: + path: isar-patches/0002-rootfs-Provide-rootfs_do_umounts.patch + 03: + path: isar-patches/0003-initramfs-Add-missing-umounts-after-generation.patch + 04: + path: isar-patches/0004-rootfs-Add-missing-umounts-in-rootfs_postprocess-and.patch layers: meta: