From nobody Fri Nov 14 18:17:34 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1760170579; cv=none; d=zohomail.com; s=zohoarc; b=SXAU04go+5WuLxw38xGTkZrHjt6tI7jPpQd64LgDKWD2lsQT+Lp+WqAIIcpGl2AuzDz7BaLTMCMNC60n+MU16TKZwsjmCzGA87KXgTr7R4wcWHiZQ+ONs/XUI7PE1CYNwWLa4KXqNuTj1KieHDWhSbCTAL4hPUOhVh2jiJF15ok= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760170579; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=fV7UHztEaQ52d1YYUmIY50MBEuXXcFsbhfQR43l1bTY=; b=IWr4xVNGIcjfm2nekwqkehZI8J6kcYcjxYAHKsEwcr56qSHxAMm+vOkKNVSYfcLu7CmT4CQoU2gCQwWozoqbQbiRHmYVJ7SQS9Eko+IQqjaFDQmuDtfTny7atMGIS7LOSbaef3w3OnZspgBhwmOyMZC93klBl7Vf7ZCcXCV+H5g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760170579168378.60311030470416; Sat, 11 Oct 2025 01:16:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v7Uk9-0006zd-5D; Sat, 11 Oct 2025 04:14:21 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v7Uk1-0006xY-Dk for qemu-devel@nongnu.org; Sat, 11 Oct 2025 04:14:14 -0400 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v7Ujt-0005XU-3A for qemu-devel@nongnu.org; Sat, 11 Oct 2025 04:14:13 -0400 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3ee64bc6b85so2947898f8f.3 for ; Sat, 11 Oct 2025 01:14:04 -0700 (PDT) Received: from daandemeyer-fedora-PC1EV17T (d54C349CA.access.telenet.be. [84.195.73.202]) by smtp.googlemail.com with ESMTPSA id 5b1f17b1804b1-46fb497aec2sm83873195e9.1.2025.10.11.01.14.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 11 Oct 2025 01:14:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760170442; x=1760775242; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fV7UHztEaQ52d1YYUmIY50MBEuXXcFsbhfQR43l1bTY=; b=fj/g4fe6+/5G0zhCpArPgy8CbVTB851UF/Rb37sAp7Qd2n5vdLMM0hJr3T27OBBN7W diiyCfqyIV6wOLXWdfD/sgZQEMbj6/lX9Xg9jXhaJr2oeAJ1pE0nmwhgUZqdyYNGqU8y oMU3vVS82hhODlCw67TxvbNC8HQks3yvtBdKYJwHUbATXlc80Hz+tpHYfpLeScP+Or9J hQkw8DDiHYyAUh6LP9McXHM/g6nQA6lYMrCMJvxtpp3yPK1ZCm8UFFBI1PzSMozBAO70 52dsy1c9WH3RpGbA4m1g70cNkHQ9NYbSf1aAaP0WGc4cj4190yfJfhpwtaphDeNgrRyZ 22Dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760170442; x=1760775242; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fV7UHztEaQ52d1YYUmIY50MBEuXXcFsbhfQR43l1bTY=; b=qT7fiIjiUuuRElcVebSu70iGca/aMBiIzkVwFP3H0rIkeAetxtDQoNe+JGckS1EwBC rp8/uCGjD12BG2ABGSgnrlx/wpZvbpdrWS87EXBtZqgsrWwvemyZa6BVI8ehwCK5XNPR I+o30d7gW1n98IsNYUdLofYkkwU+7oOk3s2eoFrMsAyhsjjWCgsl1wTvCffdhU8IPqJe 2eVIySPREm78JNFlTDYV8GcZLzX4DuWElTuSJvspuDjHxIKP9HWdrwgUTcrKtNUvNLg1 BhOLWyVOtX/VKmIUJc0m8c0J8jkcyy6+E1MuLRon49Q4EZfj4VKcSxPi33NTSu58QCij KFpg== X-Gm-Message-State: AOJu0Yza67ugCIluxmyzBE9dXeK+WutnHb8eEHlMyREMXaYrN8UIJE0c W36wUHGxtoEDLzX05LTJdjHLmnlRIMTPwg93P4CG1xKpECDl3qgh0OsEkhj/2Tsg X-Gm-Gg: ASbGnct+N5VJZAgm1G9MPecMLXFsXsoL6nbEUxoPTYqR43fO7jWQAtA/MrHTBkHgpwM DCdhNWZxt8Cc3LijXxR/fb3syZrey2YYbGkBsi8L99p89YdZZqy9/d1CcLiN1v+0NBEe/P5a0LJ zXvMHxeB+fF/xygSHB1HmvcwWPig1aKOeqDlPk6C2GGoNPbfquq7FVpJkWQHrir7BqxWSl6wgnS yZXTK8eAy5jM+nugdXaOHthlWQZ7x7PY/j1ah1AmMwOxv9WQ5Duxt3snG/x+zVahZxj/mKHTGCz LX4oCNjyK4NMPhz8UFG559yKYbNpFCKNSyb320PIHJUmAgvyUB299oZhoSzkbsyhS0WVehDcQgL ET6H0MsjVHti+mTV+2TQvXfZ2VnY6Y8YEBatzOmJYinUDc0utIRXsoN5any4bUqe+LNBeGUlhD6 ar6KhENCBC87jhS3yRKfIouSBVuyrmUVY= X-Google-Smtp-Source: AGHT+IGShSE9JOIBx7sacbaGBOSquSl83nf4uK579a4B/xT1HCjibUxtO432bIq7GFe9y92SrMaJQw== X-Received: by 2002:a05:6000:4210:b0:3f2:b077:94bc with SMTP id ffacd0b85a97d-42666ac4119mr8163648f8f.4.1760170441894; Sat, 11 Oct 2025 01:14:01 -0700 (PDT) From: Daan De Meyer To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-arm@nongnu.org, Peter Maydell , Gerd Hoffmann , Daan De Meyer Subject: [PATCH v2 1/3] Rename LOAD_IMAGE_MAX_GUNZIP_BYTES to LOAD_IMAGE_MAX_DECOMPRESSED_BYTES Date: Sat, 11 Oct 2025 10:13:45 +0200 Message-ID: <20251011081347.4063198-2-daan.j.demeyer@gmail.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251011081347.4063198-1-daan.j.demeyer@gmail.com> References: <20251011081347.4063198-1-daan.j.demeyer@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=daan.j.demeyer@gmail.com; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1760170581320158500 Content-Type: text/plain; charset="utf-8" Preparation for adding support for zstd compressed efi zboot kernel images. Signed-off-by: Daan De Meyer --- hw/arm/boot.c | 2 +- hw/core/loader.c | 8 ++++---- hw/nvram/fw_cfg.c | 2 +- include/hw/loader.h | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/hw/arm/boot.c b/hw/arm/boot.c index e77d8679d8..c0dec0343a 100644 --- a/hw/arm/boot.c +++ b/hw/arm/boot.c @@ -826,7 +826,7 @@ static uint64_t load_aarch64_image(const char *filename= , hwaddr mem_base, ssize_t size; =20 /* On aarch64, it's the bootloader's job to uncompress the kernel. */ - size =3D load_image_gzipped_buffer(filename, LOAD_IMAGE_MAX_GUNZIP_BYT= ES, + size =3D load_image_gzipped_buffer(filename, LOAD_IMAGE_MAX_DECOMPRESS= ED_BYTES, &buffer); =20 if (size < 0) { diff --git a/hw/core/loader.c b/hw/core/loader.c index 477661a025..42edcf2d98 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -796,8 +796,8 @@ ssize_t load_image_gzipped_buffer(const char *filename,= uint64_t max_sz, goto out; } =20 - if (max_sz > LOAD_IMAGE_MAX_GUNZIP_BYTES) { - max_sz =3D LOAD_IMAGE_MAX_GUNZIP_BYTES; + if (max_sz > LOAD_IMAGE_MAX_DECOMPRESSED_BYTES) { + max_sz =3D LOAD_IMAGE_MAX_DECOMPRESSED_BYTES; } =20 data =3D g_malloc(max_sz); @@ -898,8 +898,8 @@ ssize_t unpack_efi_zboot_image(uint8_t **buffer, ssize_= t *size) return -1; } =20 - data =3D g_malloc(LOAD_IMAGE_MAX_GUNZIP_BYTES); - bytes =3D gunzip(data, LOAD_IMAGE_MAX_GUNZIP_BYTES, *buffer + ploff, p= lsize); + data =3D g_malloc(LOAD_IMAGE_MAX_DECOMPRESSED_BYTES); + bytes =3D gunzip(data, LOAD_IMAGE_MAX_DECOMPRESSED_BYTES, *buffer + pl= off, plsize); if (bytes < 0) { fprintf(stderr, "failed to decompress EFI zboot image\n"); g_free(data); diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c index aa24050493..af3b112524 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -1115,7 +1115,7 @@ void load_image_to_fw_cfg(FWCfgState *fw_cfg, uint16_= t size_key, =20 if (try_decompress) { size =3D load_image_gzipped_buffer(image_name, - LOAD_IMAGE_MAX_GUNZIP_BYTES, &dat= a); + LOAD_IMAGE_MAX_DECOMPRESSED_BYTES= , &data); } =20 if (size =3D=3D (size_t)-1) { diff --git a/include/hw/loader.h b/include/hw/loader.h index c96b5e141c..24b91ba02b 100644 --- a/include/hw/loader.h +++ b/include/hw/loader.h @@ -80,7 +80,7 @@ ssize_t load_image_mr(const char *filename, MemoryRegion = *mr); * load_image_gzipped_buffer() will read. It prevents * g_malloc() in those functions from allocating a huge amount of memory. */ -#define LOAD_IMAGE_MAX_GUNZIP_BYTES (256 << 20) +#define LOAD_IMAGE_MAX_DECOMPRESSED_BYTES (256 << 20) =20 ssize_t load_image_gzipped_buffer(const char *filename, uint64_t max_sz, uint8_t **buffer); --=20 2.51.0 From nobody Fri Nov 14 18:17:34 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1760170553; cv=none; d=zohomail.com; s=zohoarc; b=bX7aPlmGEFEfg4Z3EdK9FtPrd+NgI8Rsx1xT7uFgIRDP+LCKy+dRd0TyJzkh1UaaFb0XJ+fTt2O3ELDMLYVOxtrEHaZ/2cxwjOeKZWh+v1zAlf5JTFVbuoJ9n2hylbBv/Ca4OIbl2uYG04oPZuVXyhPU0oa5rVS4CvpnEA/azcM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760170553; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=YfHqHYCHafO6rnOLQUpDhedy3JSR82AQLNE0adlA1EA=; b=cXDo8cv518ccVsvDkJO6demxtkhEHLkMDGmbo1A5leqU0qBiDyIiv2LtqMW5PKt8JY1t57F5MBqbHiPpkdu1uVFIJahWTV+7zp+EnhtgUzNze8NVoznUe6zRVTRtwKMmGSYsdHRRvwsY+x9Ti9CXZjJoTUvVBBUg3LCka3UhBuE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760170553645820.2505437668386; Sat, 11 Oct 2025 01:15:53 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v7Uk3-0006xZ-4o; Sat, 11 Oct 2025 04:14:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v7Uk0-0006xI-LM for qemu-devel@nongnu.org; Sat, 11 Oct 2025 04:14:12 -0400 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v7Ujt-0005Yj-HB for qemu-devel@nongnu.org; Sat, 11 Oct 2025 04:14:12 -0400 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-46e491a5b96so14684155e9.2 for ; Sat, 11 Oct 2025 01:14:05 -0700 (PDT) Received: from daandemeyer-fedora-PC1EV17T (d54C349CA.access.telenet.be. [84.195.73.202]) by smtp.googlemail.com with ESMTPSA id 5b1f17b1804b1-46fb497aec2sm83873195e9.1.2025.10.11.01.14.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 11 Oct 2025 01:14:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760170442; x=1760775242; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YfHqHYCHafO6rnOLQUpDhedy3JSR82AQLNE0adlA1EA=; b=D5Xr4mmgV5nxdoeKrK/qsKFbW5QUSK3yXhgk52FhHAQo3yFwxB1diVoEl1UHdlWZPB XzbsEgViPpdWs5UHL7JDqOIQ+Or67asnmlkAWzCQkwFG8oP2ALpE4TBU5rWSQnCARECC 291/tYITxEj5jjVPW7f4Z2VGrxwkFyZmVjEdUzNOSILXJ2/8u1eo+NdUMFZN670ekS5b pxgB9Zq+ab3ZPTZisPxUaD57I/m4Qw8k40eV5oR8N20j7WLF5L2LBY+T1d25hXGjyf8e 8+WOjzAJM4/QE4jkgzFM9GfIUO/bn71Cu8n9S20dXcuMOGVQJgpy6KpzRyPKU7vEjNfy 49vA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760170442; x=1760775242; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YfHqHYCHafO6rnOLQUpDhedy3JSR82AQLNE0adlA1EA=; b=kaG0DAwT6kYl5kuMZDFRw9ZMB6rruOXwNps2iRUDPuhCWE89klsccqtZ2K5WrzLfWt kB7vt5sQWQzffJ+/1gemPYOpdaBCb7dXtPbyKe8WuDLITg8W+0T/oxrkMFM2XDBqq18R 7tKwBRG7DQd8ikyPDnLKL9Dk5P1zq/T+f3JkVqY0XCoO9zsQAa+gn7DBfYB4xfc8hKRC tcCsGEcSKQyhVgcQxObqDCxKuKbwOhg5Jz8i6oDByoAC6SdJy3k5tsuP0Mlwp+jhdVWn EmZrRBxZ9qwR5nqM4rrmG3AsJ0JN6zW0Xsr0XRZ5avGxI0AP7wPPefNzoBZWojkNFANh +quw== X-Gm-Message-State: AOJu0YwdX0e48gqefEXxNeeUju6u714ZLBBeqETRu65NUonRyhAqG11L IO6geiYdI23MR1Ckgr2l2q9ce7W5q5q8Zqh/DViQ/DmYcmYzJBxcw4bLp4ruAedV X-Gm-Gg: ASbGnct8YNhBhwHb/dcsREryWlyf8xOo+jA4TJ78GXwxiDYet44gJ1kcYcJRX6p4ssN 2/SO30tsZwMPW5Va0OaTlRr7onumFC26IiDrHopwiCl1udthSpBMlgVqfQ8Mx9bUl09+DzWiwp0 4lM6VYtH93OSePAmkvisEEbJ637FSkPwOxGeuO/zT0S89Ik4EnMyR+LjDCfXEtgv9QbjnskIfNK gsJdUuu/fQu/YSd5XVSxDyMvMM2fALmXFHRdF07zSWzXyh7sCtpNm6sxW3p7VvRHuPFFDPZk61F W/0qxR4FRX0aqBXJ7psIV9ZIJg/WRmyixuJpyicRwxqZcXb5k2fqan6P5f6AkkfjfWJjER3C46h AUQlSPyMMOMRqOfx14lxtPFMQQm+wwYZtMlb6Lgi95UX9D/tr0Hd4T4eM5KcrmnBXDhPS+hCL9D zqgUU62gJCXS1OCqdXDcEuY+o6NjNa09M= X-Google-Smtp-Source: AGHT+IHx76q4DbGV7kEiEW9a8PJelGWWp4Wwjk3/RVmqZggKjH//xYhqqf15+pKLgUZpYjzijYFwKA== X-Received: by 2002:a05:600c:6383:b0:46e:32dd:1b1a with SMTP id 5b1f17b1804b1-46fa9a8f146mr101590455e9.7.1760170442561; Sat, 11 Oct 2025 01:14:02 -0700 (PDT) From: Daan De Meyer To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-arm@nongnu.org, Peter Maydell , Gerd Hoffmann , Daan De Meyer Subject: [PATCH v2 2/3] Use g_autofree in unpack_efi_zboot_image() Date: Sat, 11 Oct 2025 10:13:46 +0200 Message-ID: <20251011081347.4063198-3-daan.j.demeyer@gmail.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251011081347.4063198-1-daan.j.demeyer@gmail.com> References: <20251011081347.4063198-1-daan.j.demeyer@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=daan.j.demeyer@gmail.com; helo=mail-wm1-x32b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1760170556125154100 Content-Type: text/plain; charset="utf-8" Signed-off-by: Daan De Meyer --- hw/core/loader.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/core/loader.c b/hw/core/loader.c index 42edcf2d98..e8be700afb 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -864,7 +864,7 @@ struct linux_efi_zboot_header { ssize_t unpack_efi_zboot_image(uint8_t **buffer, ssize_t *size) { const struct linux_efi_zboot_header *header; - uint8_t *data =3D NULL; + g_autofree uint8_t *data =3D NULL; ssize_t ploff, plsize; ssize_t bytes; =20 @@ -907,7 +907,7 @@ ssize_t unpack_efi_zboot_image(uint8_t **buffer, ssize_= t *size) } =20 g_free(*buffer); - *buffer =3D g_realloc(data, bytes); + *buffer =3D g_realloc(g_steal_pointer(&data), bytes); *size =3D bytes; return bytes; } --=20 2.51.0 From nobody Fri Nov 14 18:17:34 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1760170555; cv=none; d=zohomail.com; s=zohoarc; b=IBZ3vL8gAQfUUX8nUM7cpQfFN3e56H31TeIH4VUCi7msgX5oM/x9pGl3eXrJd3r7EbzrsA2h6kjm5VIkhEAjOmQAMxeLyY6g9zasi7IsnL+RkmTqppRXC7AcW2Ub1bjegBCVDAJ7Gh1O+JH6jXGqL9EWIc+/ot5nMAjfbHWe8B4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760170555; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=FFsKuj1XUvsrqJs2Cnv0dajt9b4A9uv5ht2bzW4gw+k=; b=PT174kv8g9LD/ZR+54FmDTUMMXPnVNUrTqk25a1mAkb77/cfsEOMx3K5Gb2h2PQEqD9mqVI2/Rzb0+DllRS+Glhctgxi5+j6FN9uroVf8MyLzDBRiTTTaQa/+gCLeNtL8+eUhaaHqANvKY7UYw4f9pBYp0V3q4iIvorrRMBGr6c= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 176017055533073.4728850889752; Sat, 11 Oct 2025 01:15:55 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v7Uk8-0006z4-6I; Sat, 11 Oct 2025 04:14:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v7Uk4-0006y6-CW for qemu-devel@nongnu.org; Sat, 11 Oct 2025 04:14:16 -0400 Received: from mail-wr1-x42b.google.com ([2a00:1450:4864:20::42b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v7Ujw-0005a6-UJ for qemu-devel@nongnu.org; Sat, 11 Oct 2025 04:14:15 -0400 Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-4256866958bso1503295f8f.1 for ; Sat, 11 Oct 2025 01:14:06 -0700 (PDT) Received: from daandemeyer-fedora-PC1EV17T (d54C349CA.access.telenet.be. [84.195.73.202]) by smtp.googlemail.com with ESMTPSA id 5b1f17b1804b1-46fb497aec2sm83873195e9.1.2025.10.11.01.14.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 11 Oct 2025 01:14:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760170444; x=1760775244; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=FFsKuj1XUvsrqJs2Cnv0dajt9b4A9uv5ht2bzW4gw+k=; b=NqONjMwLW8O/8PcGME1My1/jmaA4yGClA4VODcI/nGQQjSix7GrK5Lag3hekjarH4W HrWku4PyF+u3iiw9XY2NtT89K/DNfV2RDQYVmsEU8Lk1RNABuKrrlMbt7640aXgzzfLn PF5wC98PdbUsGpj06wskSngSQK+IHmZIgLe79iAde3K4zllX5vrzLrRhQUu0thuAwre9 5oJmAxYvKrtA90+u4k2n50LCEB+r6SSTD58oJE2sD9mOZxVg0e5Dd7hxW66Ezq/7LVOS gMJlYZmZDsgzzJud+hee0A6Jv/StSkBzccxkriw02xOmRuvrxCVLeNRqCVukkkK/Fke/ 3TBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760170444; x=1760775244; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FFsKuj1XUvsrqJs2Cnv0dajt9b4A9uv5ht2bzW4gw+k=; b=AhWifnSmZAXbIB+z0Cn9uJ0f2FqZtZ/eLfJHtcoggd8NvUs5l+0j002lsmynUplpAO VYcD035i2RlW0aM8sV9wc7zToF9jdyNAHKf6fGSp+lqvbfxNBQn+HRGijDkAjbzJdIrs nCELDhR5voePVgd96oFYlVC5XgZJEglqlrmBTWoQT37ZOZSPudMqikbOT4IlkOSvaUOo Tl0bG/vl/fLwAXraVyqFC2KSLNiAfjuLlsItWjwm1mBoQH1HSgTuUmskMe6IL0LqsbVx vbEkTNGgiu73rHfZfLZDGO6UE0JhKlPC4MAWdiM1yYilJWl3NIAfBpEN7bsumq7rKM7v H50w== X-Gm-Message-State: AOJu0YwqjAk42Z/XcW5rCBkcrnLiVE9TA5Xkpro46M0V1AIjXXXS/Hhc OxFnofGuRhoP46W6yMZdmvXczL44uOYELf+j4VBKjYlJ+1TgU7ug+/LzQBZc/AIu X-Gm-Gg: ASbGncvIuMIrTUly8V9VkS5CWuv/XF+KxnygcvZqxk4Ye4QsA746FLmkYSyShB7eFhS 3bPOTs4xp1mvQemm3hIXuK51me7BWD9FtxFWN6IQV87rpT3G1a56i+v/oUHLZufpCwAg8u5oIlL 4HJvOeBPycPiQy99pi7vpGzHa4nwodHO2GyCiTG/x5wA1mGwJiMBluexUB/s5DwJnTupIH81rM3 k3dDbNoLUgV3V2PzhHZ6H6PWQvvUZsRpJ9PXRlp6XTOSHjEq0bEn2h85DGRdcCc9MoSo2ZRJy/E 5GHm4vHEegvHskpBviyDt0OXcoOq05Y/IR7lT6T+lhX/C89O8bMRaFnuieWC1QJTm0Cf4Y5iKc/ ftbFAdEhKKzKqV4gg+MGIRji1BaiIQi/9IkAdt4AgJXWTWCJNjcNJZ6mVQ3PKWx3D4g47rFTdHF KjAC3KyfcQyjYpka8VucoDU+fp+RjRQZ8= X-Google-Smtp-Source: AGHT+IF+VBVwOfYxasPjB8YLl/5i7d58KDNK4a2qlwF3R/QWfohNXnSnnwe5+CoyrbDiGg3pkob/zw== X-Received: by 2002:a5d:64e7:0:b0:3ee:b126:6bd with SMTP id ffacd0b85a97d-4266e8db354mr9013033f8f.50.1760170443405; Sat, 11 Oct 2025 01:14:03 -0700 (PDT) From: Daan De Meyer To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-arm@nongnu.org, Peter Maydell , Gerd Hoffmann , Daan De Meyer Subject: [PATCH v2 3/3] Add support for zboot images compressed with zstd Date: Sat, 11 Oct 2025 10:13:47 +0200 Message-ID: <20251011081347.4063198-4-daan.j.demeyer@gmail.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251011081347.4063198-1-daan.j.demeyer@gmail.com> References: <20251011081347.4063198-1-daan.j.demeyer@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42b; envelope-from=daan.j.demeyer@gmail.com; helo=mail-wr1-x42b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1760170558050154100 Content-Type: text/plain; charset="utf-8" Signed-off-by: Daan De Meyer --- hw/core/loader.c | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/hw/core/loader.c b/hw/core/loader.c index e8be700afb..9eca41a66e 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -67,6 +67,11 @@ =20 #include =20 +#ifdef CONFIG_ZSTD +#include +#include +#endif + static int roms_loaded; =20 /* return the size or -1 if error */ @@ -882,14 +887,6 @@ ssize_t unpack_efi_zboot_image(uint8_t **buffer, ssize= _t *size) return 0; } =20 - if (strcmp(header->compression_type, "gzip") !=3D 0) { - fprintf(stderr, - "unable to handle EFI zboot image with \"%.*s\" compressio= n\n", - (int)sizeof(header->compression_type) - 1, - header->compression_type); - return -1; - } - ploff =3D ldl_le_p(&header->payload_offset); plsize =3D ldl_le_p(&header->payload_size); =20 @@ -899,7 +896,22 @@ ssize_t unpack_efi_zboot_image(uint8_t **buffer, ssize= _t *size) } =20 data =3D g_malloc(LOAD_IMAGE_MAX_DECOMPRESSED_BYTES); - bytes =3D gunzip(data, LOAD_IMAGE_MAX_DECOMPRESSED_BYTES, *buffer + pl= off, plsize); + + if (strcmp(header->compression_type, "gzip") =3D=3D 0) { + bytes =3D gunzip(data, LOAD_IMAGE_MAX_DECOMPRESSED_BYTES, *buffer = + ploff, plsize); +#ifdef CONFIG_ZSTD + } else if (strcmp(header->compression_type, "zstd") =3D=3D 0) { + size_t ret =3D ZSTD_decompress(data, LOAD_IMAGE_MAX_DECOMPRESSED_B= YTES, *buffer + ploff, plsize); + bytes =3D ZSTD_isError(ret) ? -1 : (ssize_t) ret; +#endif + } else { + fprintf(stderr, + "unable to handle EFI zboot image with \"%.*s\" compressio= n\n", + (int)sizeof(header->compression_type) - 1, + header->compression_type); + return -1; + } + if (bytes < 0) { fprintf(stderr, "failed to decompress EFI zboot image\n"); g_free(data); --=20 2.51.0