From patchwork Tue Jun 9 08:44:19 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Mikanovich X-Patchwork-Id: 378 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Tue, 09 Jun 2026 10:44:42 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-wm1-f62.google.com (mail-wm1-f62.google.com [209.85.128.62]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 6598idXX003593 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 9 Jun 2026 10:44:39 +0200 Received: by mail-wm1-f62.google.com with SMTP id 5b1f17b1804b1-490ae4d89e2sf52433195e9.3 for ; Tue, 09 Jun 2026 01:44:39 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1780994674; cv=pass; d=google.com; s=arc-20240605; b=dT0J2T2agxT8Hyphzxj0cD1tJtVJFpFj9OYE8PjA0s2ApUGrQQgEsFG3p5imXxOEvH Kc+YHgFUyZzXeAXHG1qv2dLENTZTrv8BI8ETRDK8kPjQ5PFy6w3CWEtcwVm9S8FHmNS6 yPW7mCbmbA0xlKVKaQ+TlnV06tJChsVwu0LPT2Erwp3RzXbanK3giBCPS8q7D4O5PkmV 5G2HzSjpc712hxTt5YH0HazHN/7+OfIe6v+EH7bDX6SNgMqCjngMfTrdbwohTwpretcC luSggp94a0VOjMxv+kysQ2D4+yJ+0XVdjHtssfQmdfxxU0VnBP8xorpFIrQhNX9X3Dil ajrw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:cc:to:from:sender:dkim-signature; bh=tQ6PVsLssp8d5wBmXVPObZkqKHMW9Y3fQT09OzBGzqE=; fh=GvBNYf6SKf7xIC3M2Wj7H5TbA0vFi1K2hM2wEEw3DSY=; b=IsRhCE0tEP7s2c0oZ5LbOF45IBG1/LKR7CuUp0iR0v/wky2UGe42Abo+GwNUY8nunu anDBEct8C/WbuLL2KhfoEnCsisZoOpBn1QEBi2yIJwZIAlh1u22A5+rakyqSi6dDAvQz ybAG0/3KmnKbJ4yMjbi7v9CAl5kI69XNW7IGnewEnnE3RFms9hyPJOjozupPuuf1bBa0 fUA/tK2LhDx3gNGSA2sZiAjBfEPMLqVoqR4d/2cEk9aVJqnye/kEuxMLAyGlVjZwDD77 /dXC3SKYPK1c912ga9oloqY6OmDecV8xLpDNaTD0IsM/XTdfnT9jbWSc+UF49L/q40hF vNIA==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1780994674; x=1781599474; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:message-id:date:subject:cc:to:from :sender:from:to:cc:subject:date:message-id:reply-to; bh=tQ6PVsLssp8d5wBmXVPObZkqKHMW9Y3fQT09OzBGzqE=; b=BFa/n0f4UJe0jho2oqMUGJexcU45QQQR48BaK5EGTbCdeMxsoximv7jMG3DD7rbMHC DDcweKPchMEeDkxssSIV4h1LmFe2BUvXAQlZ/H3n1zFdAUG24MFqVeuN6Ukys8HEpsEY pas+AUUCW+Sm5mRh+QeaOJsp9hYTgLHwxsGX5pvpMFBZSXG01/D+eiiZC78mbpwcJa8g Odc1wF//90Cv5f+Tyu5+VF3wND1zEgA1wuDc62L4TKo6ITJArK+me2PyGkGS5ZKs3xdB HZftLPovlmgF3wjJfysxsS0SOjtIi+jhFJwXMTGaaVStezAZ8cw39L5VIwK7WkxOAIo/ mvRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780994674; x=1781599474; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :message-id:date:subject:cc:to:from:x-beenthere:x-gm-message-state :sender:from:to:cc:subject:date:message-id:reply-to; bh=tQ6PVsLssp8d5wBmXVPObZkqKHMW9Y3fQT09OzBGzqE=; b=mmuq1GF7hN2EZyEOGKf37fQmfCk4foyDztKrNJRIPrhqFz1v1tJQjmCwNYHlOObhjz vNTzBu7bcFK/cQGqGIK4WFc5Os9y+bUot8XYgHtxIUfwXk1n7z4PtjHs3x2fl54GcPRp Zcycl/OlsnnHT8vgAAoDqIH9y7X/OiRc3498GPssu+cphgbrIA+IitQefCyVDx2X+4wV MeciS34xbBX0NscTk5R3o5G7VK2MHpbBv5nB8LJDRO8pR5aJKeZjMhG8ETp1J5pu8YAN FOBJTkM6hn33FJsrl/IO8Vk+/rYQunhq8Df2o8AJPydetXwuZi5H1nfpLY0G+jKuVBK1 1LJg== Sender: isar-users@googlegroups.com X-Forwarded-Encrypted: i=2; AFNElJ/UyTBx9YO61LNTDZGYwA1bjagBZjEHeV/sZchAA5bN7wSswPDHVvY4V0SpIfHc1h4SH+yKl8I=@isar-build.org X-Gm-Message-State: AOJu0YxOFftaMjzsuVInhHQEex4DjgPJO/m4xrb7mJGObJXaMKSiYjQi NoJvJxAl5Utw4aFCVuxhlAPG01zLXjgERoF97CCihiKjPV0fnDHBHTl3 X-Received: by 2002:a05:600c:528f:b0:490:c7dd:de3e with SMTP id 5b1f17b1804b1-490c7dddf1fmr231380335e9.31.1780994673620; Tue, 09 Jun 2026 01:44:33 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="AX0PUUfPFWWW/I9glh7qprDwjG3/tFAq/Csg2s7MulAD01iDOw==" Received: by 2002:a05:600c:4590:b0:486:fa9e:92eb with SMTP id 5b1f17b1804b1-490bca726bcls50334285e9.2.-pod-prod-02-eu; Tue, 09 Jun 2026 01:44:30 -0700 (PDT) X-Received: by 2002:a05:600c:3107:b0:490:9588:bdb6 with SMTP id 5b1f17b1804b1-490c264cc2emr323409425e9.33.1780994670640; Tue, 09 Jun 2026 01:44:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1780994670; cv=none; d=google.com; s=arc-20240605; b=kZXLJO+24So+XSsz2aWf2DJ9aRRoYcuYcoo4WsMzq9F1IzX8SBfzipjX1yds0cL7Id Zb0k6ozl7u++Tk9IfmRvwoTj4mTKEZb4um4RKq8ic7C4EJXosEVNXmAuk0/8q/UHFIN6 vubBxowkatc2BxL08P46s+1zY+5PfFy8WWVnqN8kMAZoU6bMrPSqUClS/YTsRdSTuXbF vBKdpNTuY/l1OR2QLucmjSrSWXa3jOaU0Ra2DtVxjXuzP4EP0VgBMCxM9cybnhDeNyHR UO1c5lInwmt77w8YcFJyX3kp10I6Y5UJbhgE992EiCnziT35gqIZ+2lQPEzv6LxqvX3V TjJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from; bh=2DM3tzxdaz/JhbCTVx1YxAks1rV/6jSLXlExmj46zjs=; fh=/h9QQkzJ8EboVkWg45aWwpaUro6WMavIVd2OhN45RtE=; b=Dyzk6lr90HWGzkzChFTqIqn0/29xuX0NYoJaizNc2CNlN+LZqtmAVd62gFFhX6pz+M eppUZtieBsVlg3QL4FWPE5kGCUacbUC8e2NIqn1JhT7OXPk2VayNhWCbQJEuYIMPLmOV NxNxHxX/N/3NBNgfgOtvyDbzP3/I9eh1eSuhzjr0drct6FiM22nHKzpnfz7IkLtvTdpY YpOGzZBI8W7VhAy0zbEJvzzB9/j+Mz1ZViUMnoqZQlHgddltGpNPWwJpvbTOSATF46mI UakIh6jG9fU2hNwJZ6F7/80FjS2kJEIZOtIJmscDnyed7IYyAeDRV0kdlYFySENMoqIl EGoA==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id 5b1f17b1804b1-490bc3e1f3bsi3883505e9.2.2026.06.09.01.44.30 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 09 Jun 2026 01:44:30 -0700 (PDT) Received-SPF: pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Received: from user-B660.promwad.corp ([159.148.83.123]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 6598iTgG003564 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 9 Jun 2026 10:44:29 +0200 From: Anton Mikanovich To: isar-users@googlegroups.com Cc: Anton Mikanovich Subject: [PATCH v11 0/3] Move kernel artifacts deployment from image recipe Date: Tue, 9 Jun 2026 11:44:19 +0300 Message-Id: <20260609084422.3948645-1-amikan@ilbers.de> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-4.6 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2, 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-Original-Sender: amikan@ilbers.de X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de 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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Image task "do_copy_boot_files" is used to deploy kernel, initrd and devicetree binaries to deploy directory. When different images for the same target are built (e.g., "-base" and "-debug") in parallel, this causes issues with DTB deployment since they have no any image_name-specific stuff in the path, unlike kernel and initrd. Here we move DTB deployment to the kernel recipe (for both distro and custom kernel recipes), where DTBs and kernel image are extracted from the kernel package. For the distro kernels it means we install its deb into the schroot to obtain the real artifacts from the filesystem. To keep the same artifacts path as before "do_copy_boot_files" task is now searching for the artifacts and create per-image symlinks. In case any naming conflicts (like dtbs with the same name from different kernels) the latest built dtb will be pointing by the symlink, while both will be deployed to different subdirs without conflicting and stay untouched. This symlink creation is done in the same way as artifacts conficts are handled by Yocto. The case when different distros (e.g., bullseye/bookworm) are using the same name for DTB binaries is covered by the patch 2. It also covers the case when image uses different kernel suffix (e.g., "realtime" option for the kernel in some downstreams). Related topics on maillist: https://groups.google.com/g/isar-users/c/ht3YmKZcJlM https://groups.google.com/g/isar-users/c/4BRDM02xC40 https://groups.google.com/g/isar-users/c/qAnjahjjfsw https://groups.google.com/g/isar-users/c/ZMD4XY4dKWQ https://groups.google.com/g/isar-users/c/PSGU_AcdPZ8 https://groups.google.com/g/isar-users/c/Va0Ue-ISYeA https://groups.google.com/g/isar-users/c/ixzytHYnTmI Changes since v10: - Rebase on next. - Use the same deploy dir with per-kernel subdirs. - Allow using different kernels for one machine. - Restore paths for downstreams in Yocto way (symlinks). Changes since v9: - Base on v6. - Rebase on next. - Move also kernel deployment from image recipe. Changes since v8: - Rebase on next. - Document how this approach differs from OpenEmbedded. Changes since v7: - Fix SOB. Changes since v6: - Fix isoimage-isohybrid-isar WIC plugin. - Split testcases. - Update wording. Changes since v4: - Rebase on next. - Squash latest patch to first one. - Fix deploy paths in initrd tests. Changes since v3: - Rebase on next. - Fix target deploy dir path for installer. Changes since v2: - Patch 1: Consider also kernel suffix. - Patch 2: Use separate testcase for possible dtb clashes. - Minor cosmetic fixes. Changes since v1: - Separate `dtb-files` recipe used instead of linux one - Included older "[PATCH] Fix do_copy_boot_files error" into the series ( https://groups.google.com/g/isar-users/c/Va0Ue-ISYeA ) Anton Mikanovich (3): meta: Fix do_copy_boot_files error for different distros of same machine meta: Move kernel artifacts deployment from image recipe CI: Check kernel artifacts deployment RECIPE-API-CHANGELOG.md | 28 +++++++++++ .../installer-add-rootfs.bbclass | 2 +- meta/classes-recipe/image.bbclass | 39 ++++++++-------- meta/classes-recipe/linux-deploy.bbclass | 46 +++++++++++++++++++ meta/classes-recipe/linux-kernel.bbclass | 3 ++ meta/conf/bitbake.conf | 2 +- meta/recipes-kernel/linux/files/getkernel.sh | 40 ++++++++++++++++ meta/recipes-kernel/linux/files/rules.tmpl | 12 +++++ meta/recipes-kernel/linux/linux-distro.bb | 27 +++++++++++ testsuite/citest.py | 30 ++++++++---- 10 files changed, 199 insertions(+), 30 deletions(-) create mode 100644 meta/classes-recipe/linux-deploy.bbclass create mode 100755 meta/recipes-kernel/linux/files/getkernel.sh create mode 100644 meta/recipes-kernel/linux/files/rules.tmpl