From patchwork Fri Jan 24 12:35:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4038 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 24 Jan 2025 13:36:14 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-wm1-f63.google.com (mail-wm1-f63.google.com [209.85.128.63]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50OCaDsm013581 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 24 Jan 2025 13:36:13 +0100 Received: by mail-wm1-f63.google.com with SMTP id 5b1f17b1804b1-4361b090d23sf10095215e9.0 for ; Fri, 24 Jan 2025 04:36:13 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737722168; cv=pass; d=google.com; s=arc-20240605; b=Fc7FuxGd8vfbnGPbK/N4Ynf5GzD7LF5Qs/6VfjBQPDq0914srYi9hfl+gMsZeUnnwm K6yjrv7YLDhTFWty9OztyM2blsrCHLorZ8W8gSj1sI+9X+H3sdSYQtZi3Ov9zAUGKQ3m q1s2JtoKetc85lmtlJcQMaRg597yZ/RWI5s8FKHxM6MTzWYbb9IxVZfBqY7ytaGx9ntb iNuWVE/gogA4JpTq90jNXWgu/ljxa6QVdgzgdCL7mqkohl2y85Is7VCr1k73oeqTv6+J 2qqgAUMxrD0z78iogdwn/v4QwktpbKIfbdpmp466JMA0OYFoFz20N5Qpapk5TPEi6/De wtmw== 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=nnMfAh4SvS0sFY+KWGb6lvEaLVR9vYAJqhs6w8Quso0=; fh=0gns/ryR9G/s7HPks+Y37HvEkSz9B7NXxJ5h7Y72ubQ=; b=LM8H8Le/pQevRCJPMGAeW9l6HLh3WEcU1nF6zEhvhWQeqpdMTb81/8Ac226soA6tiO TDnUKMGUpHTxrAldW8kLNghUa3j6u1w1gFRT04zDI8AwRs6D19ZPRG/1hNQcRjr3qcja 7pzgUBAqO2qsOqn2ZtEPJWsWCFTfY94SGcrbvQD+roRCYumE7EnzXoP4F9PIRT4F9UGc EPGyjCSrJPZgaurFQ7k1zGyyPLlI28lLaiFmcNozGb3Q68Ii6jwVaKW7Gb4oBfETF/1A i4Kh95mZanUKR5PLMv39zz7RlbfsU+U7hqGeRIP8f+LOXbQRf0vxQzrJJv3dC8Bz4viY oOSQ==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=AifBASfd; spf=pass (google.com: domain of fm-1321639-2025012412360429a7c209b262b779f1-ulacvj@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1321639-2025012412360429a7c209b262b779f1-UlAcvJ@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=1737722168; x=1738326968; 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=nnMfAh4SvS0sFY+KWGb6lvEaLVR9vYAJqhs6w8Quso0=; b=hSFYZh6PepGlyRwZFZdiVBZDGobWLMpu/kS+nP0N1O1ivleJymiw7s6F4kpOudC12R BBHYi0vtxaXWb1oPfcSaX7YZ8NGGkWy7h9ojsfnhFEqlYmEwU9mh5W95KZ0he1XaxJWz k36Wdu+2bFsv8dGO1QffMUreithocOc0w+mSBleLyNxCer3Xwc9H9VpbhRfjjATHZP6x d4BV2fJmWEr3Q3PYmlIzYJLgTtEdAvBsDNHoo0P4SbDm70o5x0YX0e5tcFL7aqxGmNpB L46lwT7MhRi0voXIGcDKC/yPqnrsHLquDHGNKOkKDHLUrTttT2e5zz7VjpYSZL6t8kVU +33g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737722168; x=1738326968; 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=nnMfAh4SvS0sFY+KWGb6lvEaLVR9vYAJqhs6w8Quso0=; b=qNhAKTVL1S1hURniAWxgLs6e9jBc1N2+xfVLM4TBNGSpVuvXNCTyUhsrC7tbNnJw7Z eoxD3jgVgGXvK8ulIhCKF6dn3KoofgsZmMweRZN0+MV0rOxPyFSBeLVB5EILaVGg5dN1 s0IdUu6NUY7wMsaBIQQNyPWj590Gq6dA9KStXg8G3nr3ferinnXSBsE77mp1Gy/DUGVp 2PoulJOGJ+wswr58wfnnKrX6WwdY7U3zpj0TpyDnBqPe6AIZr7Ql6xfTVoQXecLwtuHC LuepDqzYMQINsoRDWQqJojtVQcQs/rzvGAOrJQ//YE1EDh+NlcfTSo15VXYQBGKHdTfE Hhsw== X-Forwarded-Encrypted: i=2; AJvYcCUzGYzo+x4aMBHIw4FPDdOD6LYFW0hEoVp4gJRd6GWLMuuT7szKgp2GsFR7yUEw1BkPbSoqsB8=@isar-build.org X-Gm-Message-State: AOJu0YyBbyTS/WKeUubf9CvRG0B/ojeDWNIv4G2hNQ+1p1Pwzgv7D4TV NXOxVlG3HYWhkI/mc4ELT70WjkseQTSejWOSdiqA9rndb1n5UImM X-Google-Smtp-Source: AGHT+IFWQ6Q2tfNaK1q2JDrvPuiXKKHXF8EcEWNZMJHnESxfPgUHyhXbWBNAx6byMzOOTSVsM+isUQ== X-Received: by 2002:a05:600c:5012:b0:434:9e46:5bc with SMTP id 5b1f17b1804b1-438913ca718mr310784955e9.10.1737722167850; Fri, 24 Jan 2025 04:36:07 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:600c:1ca3:b0:42c:b037:5fba with SMTP id 5b1f17b1804b1-438b87b4bc0ls12077855e9.2.-pod-prod-06-eu; Fri, 24 Jan 2025 04:36:05 -0800 (PST) X-Received: by 2002:a05:600c:5012:b0:434:9e46:5bc with SMTP id 5b1f17b1804b1-438913ca718mr310783275e9.10.1737722165396; Fri, 24 Jan 2025 04:36:05 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737722165; cv=none; d=google.com; s=arc-20240605; b=K6fRrlQ5vDxzeVxh0RfrZkqxP8IwKoQ8EYGg8etnz4kvKHcBKzxOM/McEL65Xfop45 HyyyK246FY1fvBnuqIZN5LFszQA8qbdjGtudzGixw5m51u7dNTA7IrdAu+uVLD15DN7i PkJKFDan85XHozoUAr2BOXnOywtUX8bKtnA9OEl1fe5qSGKRkrdydh2232S3XQu5mOVY KgCQCZvQSLxj+jPZXuFuKkn1I61hwRluizJIE1E8NhTurZExt5A5W+2q+lNfxYmx18U9 OYWnBEwaYzmiEdKEWrJ9HPAGGB57UHYnYM4kAJKRwm0rKsUhxeBdNN9Z0HNauP//KNn6 hFNQ== 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=Qd6xy8VxQWkNarUV3AjwGpYDRps8GiwXrDXEIdK8ppu11G7R0qgM4ceJr1EfCuGyN5 jY/y1ieJKBZjs9UoBYsKTlHaBPbdzqQ51/7+oz8862u/jppzT8KgR06+in1Kmnvdd+tu ss4QJCnAIwpDQEFUYNtkQJtK74SZxTGG8Vas8NZ6Nim3ormuO8CBEmI7Y5tVPZ1aV+sZ 3hIp2OJw7ukvZpCsNhShlamg9OQbH4Cyg8HXo8q2T4L/1VBh5+198CNjFlSOXdxvni1o 2xlTbhpvK/WOQ/lQkskfkDdCFGzLXkLzNN9Rr1vVA9qIBDsivl9AV3u2+UQjdouGK3EQ no1w==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=AifBASfd; spf=pass (google.com: domain of fm-1321639-2025012412360429a7c209b262b779f1-ulacvj@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1321639-2025012412360429a7c209b262b779f1-UlAcvJ@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net. [185.136.64.227]) by gmr-mx.google.com with ESMTPS id 5b1f17b1804b1-438b171e65asi4743875e9.0.2025.01.24.04.36.05 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 24 Jan 2025 04:36:05 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-2025012412360429a7c209b262b779f1-ulacvj@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) client-ip=185.136.64.227; Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 2025012412360429a7c209b262b779f1 for ; Fri, 24 Jan 2025 13:36:05 +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 v3 3/7] move squashfs imagetype class from CIP to ISAR Date: Fri, 24 Jan 2025 13:35:41 +0100 Message-Id: <20250124123545.3500274-4-felix.moessbauer@siemens.com> In-Reply-To: <20250124123545.3500274-1-felix.moessbauer@siemens.com> References: <20250124123545.3500274-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=AifBASfd; spf=pass (google.com: domain of fm-1321639-2025012412360429a7c209b262b779f1-ulacvj@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1321639-2025012412360429a7c209b262b779f1-UlAcvJ@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}