From patchwork Thu Jan 23 09:52:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4028 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:11 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f60.google.com (mail-lf1-f60.google.com [209.85.167.60]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9rAGe006616 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:11 +0100 Received: by mail-lf1-f60.google.com with SMTP id 2adb3069b0e04-5401a22a82bsf356420e87.0 for ; Thu, 23 Jan 2025 01:53:11 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625984; cv=pass; d=google.com; s=arc-20240605; b=kFR4Vsb2Fx7D4VoDmhU86SGy4dcg+y3Y3y/32e1gS8Zt8Oodkuu2QvJr/1XVm/yWLq bpzOuXdWOsBZprPGwqC6PrJDcR3YIjOYbHHjfdoMxdIctekCCxniGRnjCMY2BpcuYMy+ BZ9uBIQvmCBI4NM2XXXinzCni0McwOJjCihUnJTbmf1ldE7qb1Lv58DoaTFTf40clLdf IhzuubjGk1wwBf8cni5kIH0EBms6k6G43SHV2Y1FzdmbWEWAaHd/bSb4zIXIWPYSMmsO o4C31ri52I0dTmULbWZT/xnXAY2kCLbKrdRp+vAW3KakYth/uvX85ZNlZC+PE2yxlZ8k I5Rw== 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:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=fUuLPLQbmrmPzyovuaGuOip2PIBe0tsWh9YmD14G2lo=; fh=rXVQzrn5LvlL3XlVKKbNPYHeLG1XJJVXjCKZeGgnP9I=; b=PqvQabArSmQc7ThQCO3SubuL0i5UAQ5v+SjLQ6MYCYJMWHSPcp/IhO7VyS5h/0L8b4 NfE0LCwSqObCTEpCdxVGRgl+gGw+RzOYnZxx9gWoKLa0/qbw3tJQGtXcRUNzTZaHuVC/ dhfXQeQQzy2HqNyCDA9POgrgoD4ky1XV5W4KRLV0yjyMq7U9zQwjlFNsVa0b2iA/mUdU sIm8Obbj8xLIIMkj/zj+Gox2It81+8Up8fNwc+7SHrnYWj5LZKXz0FKMn0PVtYG1pTV6 RRr8gzURGKSFdRBaQfl6TUCT7TgbiBrn+Zego3vXiO6m89zvm+8e/lEfcsERb1qjUJVY EPBA==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=aiqr5RaY; spf=pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-2025012309525969e0efb871c48b3a98-iWJfSW@rts-flowmailer.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=20230601; t=1737625984; x=1738230784; 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:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=fUuLPLQbmrmPzyovuaGuOip2PIBe0tsWh9YmD14G2lo=; b=w4uAeYepza1kunKF7rjvBhcQSL2VJsKVmQiBYLpm4TLqJr8CoVCN9sBqoqn7eG/FlS LQkH+hy8Doa5g1kJ2OBSyJxQgGsNWF63zdKK2lXYYkALVeGcLfbOHv14sAP1Ee6Hdy1+ sim85Xt8SSEplkTWSF3045Jsew6khUfnG8JmVB4hxvZTmBmR7H5/3v/5k2vK5nNS4e2K bRiniC1HKvkZlYV7z0drDpNeaphpxay9SpUjTikdWymwXOdEE2tqneJNqyMEZ4WQs3HB YiepZExIZdK8xHqgwr5agSsPYC3PyOssjYn4h4GiFQlS6+qGwyTaq/8P0+M3qrrSYamH XoYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625984; x=1738230784; 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:feedback-id :mime-version: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; bh=fUuLPLQbmrmPzyovuaGuOip2PIBe0tsWh9YmD14G2lo=; b=jjMyFOr+y8I0xwuHD0IBxOyxJnXP4Vmz2IPkxJ8ch3RTF6aKt754Vo1AadTORlPAXs 6n5AIiMQDkDbIEEC0LmBa0G9DfHSJ37Q6LfwO7+v1UVH1ZYQLLEHWajeUlt6fE8hyyai uLnzu8qqZq757oyZmxGGMnf5wup12uDtU9rJ5zf3yxgZ3g67YXwndd9JBeEtwLhHzhce T/imRYsgyWnUuw6Ih71/j+xpnDUawertl10wY6uCnHXiZ9nUMGrgGLubW13uy+U9HoP7 F+sBn/8wYK+v/JG5OYYerkgBs6eu4RcaYLloUgUcs0+nA5aJ6g8dPhlC5U6txDsAtRFS +VKg== X-Forwarded-Encrypted: i=2; AJvYcCWuoqUEZEZtwit8PbBov3qTtyUHZJUNGdhJFPAsvYAr9p1ozBZquLLV7WcxbtgRewZ2j4AsNPQ=@isar-build.org X-Gm-Message-State: AOJu0YyGn2Ciy4ZkJ3pi0GCmGhJz81KTjT1X8VxU8P3cMs0w1Pg+D2/J esq/BbOtR/fEtRUMsFBQFIodWg84D6B8leCedoR1Cb7kBfRr7EzU X-Google-Smtp-Source: AGHT+IEbu0GoNkkz3s7RteU7thExBeIT3i31VyZxYPbWcjf86ljWvBwcRMj9MtfFR7c2LY3foa14cg== X-Received: by 2002:ac2:5541:0:b0:542:1137:611a with SMTP id 2adb3069b0e04-5439c2461bamr7232608e87.17.1737625983325; Thu, 23 Jan 2025 01:53:03 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:9113:0:b0:540:1bb1:781a with SMTP id 2adb3069b0e04-543c23dc834ls162780e87.0.-pod-prod-09-eu; Thu, 23 Jan 2025 01:53:01 -0800 (PST) X-Received: by 2002:a05:6512:3d90:b0:540:251b:fe09 with SMTP id 2adb3069b0e04-5439c2462b5mr8916095e87.19.1737625980635; Thu, 23 Jan 2025 01:53:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625980; cv=none; d=google.com; s=arc-20240605; b=Qz9IssxJbn8v7MIb8ccUHRE8bo+rgkpOvZGwAVoIpmahWvMlWh/1PHK2oPSCkox7E9 EwKv7AIEyrf+NEYKbcN/YA+1vHpjAO+SacqJsmGplD3l31VMIwHQB2obHjoT29dZ1lC3 1aRr4UDBjlqf7MkyMzBfOMrZUOhv0sIR+7Jxx4vBmubbYw4C2JTW1KkAon+UNiEIg/U8 LsUWyXxF2I30uhDcgipDUug4MRz/x3Clbmm1qebJ8pRCRTRUB1RE86EjOVDXxX7hgfl5 tnEa67Q/m8nc8roKr0aaqJ9C3KmNKshmoAtCPfVDZQARH7ienWZoggSpGuL8LCNgFofF R8dQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=tJmIxvEtLArcxaSvByPmQqHuMZ9WIYVSQSctXgJ+GDk=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=heDbtIOOjWd7aqPusd2ef/oDdyD9xKd07izCILg0i2x/NSnUHZ0SD5MrWktJJsu5hg ZBBv1JkQusYieYMfMWlC9tDuwb5U47OA/1qngUbydIV0FedgPKGMMYhAM8fTs3ND/ycA ibG/Km4eVJarhmz1eWwKqwZn4h8mzO7sxdne0uI+nV8HDMJmXRVUIoC031yV/wYgzkrW Jxcvl2MEOV6LzlkNfkszOMcnJ5yrouGCfhLT+iWlMdrSw/xdKnFFyEMTR50o4VPeZw9i V3u9Rw+Nn8vf4Qf9fDYBFUaQGXO+/+xEKCYVEBhO62BhvWloPIHRtlLPxc6NKobarTgW rVyQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=aiqr5RaY; spf=pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-2025012309525969e0efb871c48b3a98-iWJfSW@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-5439adca9dcsi349789e87.0.2025.01.23.01.53.00 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:53:00 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 2025012309525969e0efb871c48b3a98 for ; Thu, 23 Jan 2025 10:52:59 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 3/7] move squashfs imagetype class from CIP to ISAR Date: Thu, 23 Jan 2025 10:52:19 +0100 Message-Id: <20250123095223.2928575-4-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=aiqr5RaY; spf=pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-2025012309525969e0efb871c48b3a98-iWJfSW@rts-flowmailer.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_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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= As a preparation for live images, we move the squashfs class from isar-cip-core to ISAR and register it as always included. ISAR-cip-core revision: 0e85378341fb7b37cf95b1c910ca0260cf4f5cf4 Signed-off-by: Felix Moessbauer --- meta-isar/classes/squashfs.bbclass | 47 ++++++++++++++++++++++++++++++ meta/classes/image.bbclass | 2 +- 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 meta-isar/classes/squashfs.bbclass diff --git a/meta-isar/classes/squashfs.bbclass b/meta-isar/classes/squashfs.bbclass new file mode 100644 index 00000000..9cd7ed3d --- /dev/null +++ b/meta-isar/classes/squashfs.bbclass @@ -0,0 +1,47 @@ +# squashfs image rootfs +# +# This software is a part of ISAR. +# Copyright (C) Siemens AG, 2021-2025 +# +# SPDX-License-Identifier: MIT + +def get_free_mem(): + try: + with open('/proc/meminfo') as meminfo: + lines = meminfo.readlines() + for line in lines: + if line.startswith('MemAvailable:'): + return int(line.split()[1]) * 1024 + except FileNotFoundError: + pass + return 4*1024*1024*1024 # 4G + +IMAGER_INSTALL:squashfs += "squashfs-tools" + +SQUASHFS_EXCLUDE_DIRS ?= "" +SQUASHFS_CONTENT ?= "${PP_ROOTFS}" +SQUASHFS_CREATION_ARGS ?= "" + +SQUASHFS_THREADS ?= "${@oe.utils.cpu_count(at_least=2)}" +SQUASHFS_MEMLIMIT ?= "${@int(get_free_mem() * 3/4)}" +SQUASHFS_CREATION_LIMITS = "-mem ${SQUASHFS_MEMLIMIT} -processors ${SQUASHFS_THREADS}" + +python __anonymous() { + exclude_directories = d.getVar('SQUASHFS_EXCLUDE_DIRS').split() + if len(exclude_directories) == 0: + return + # Use wildcard to exclude only content of the directory. + # This allows to use the directory as a mount point. + args = " -wildcards" + for dir in exclude_directories: + args += " -e '{dir}/*' ".format(dir=dir) + d.appendVar('SQUASHFS_CREATION_ARGS', args) +} + +IMAGE_CMD:squashfs[depends] = "${PN}:do_transform_template" +IMAGE_CMD:squashfs[vardepsexclude] += "SQUASHFS_CREATION_LIMITS" +IMAGE_CMD:squashfs() { + ${SUDO_CHROOT} /bin/mksquashfs \ + '${SQUASHFS_CONTENT}' '${IMAGE_FILE_CHROOT}' \ + -noappend ${SQUASHFS_CREATION_LIMITS} ${SQUASHFS_CREATION_ARGS} +} diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index db21cc76..49861b75 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -129,7 +129,7 @@ IMAGE_BASETYPES = "${@get_image_basetypes(d)}" # image types IMAGE_CLASSES ??= "" -IMGCLASSES = "imagetypes imagetypes_wic imagetypes_vm imagetypes_container" +IMGCLASSES = "imagetypes imagetypes_wic imagetypes_vm imagetypes_container squashfs" IMGCLASSES += "${IMAGE_CLASSES}" inherit ${IMGCLASSES}