From nobody Mon Feb 9 09:33:59 2026 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1768934509; cv=none; d=zohomail.com; s=zohoarc; b=hV6xsgpiVZAZfA+zCbE9db9OueNSJNfJPO7jXZd6otnQqdRRbHDFZN7MgM86goGU3geqP+fpA82PkmT5zDu4Q7/Bu3T2dmJZ98eRpQ6SbzrgBBvUt3NQZP77MYuk1LR0UDol/OjNY6GkfPfk8RtXLjcHLLYbJkG/5pcEyFMxhSo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1768934509; h=Content-Type:Content-Transfer-Encoding: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:Cc; bh=MIJXPRC0+/9WoWGyCOIUjQQBuO8DkQLYIb8yEgeRGpc=; b=LKCUQF6/2JpkbcR/GWFMkCFz8QOYwsxVb6akaEI83R4n+hi2Ca0u30kRctGJby8gffFkfO1FsNCgIC+yQpRpZmCtoBBRV1/3k2B6kPB7m7WduK44ibBaCJextlWgcexutQS3mccIkSXmQCnvvTWZkjoRRm0AnDU/fQ3tahs5VY4= 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 1768934509737634.5587921111945; Tue, 20 Jan 2026 10:41:49 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1viGff-0004vF-G7; Tue, 20 Jan 2026 13:41:43 -0500 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 1viGfc-0004nC-LP for qemu-devel@nongnu.org; Tue, 20 Jan 2026 13:41:40 -0500 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1viGfa-0006Y0-Lz for qemu-devel@nongnu.org; Tue, 20 Jan 2026 13:41:40 -0500 Received: by mail-wr1-x441.google.com with SMTP id ffacd0b85a97d-42fb6ce71c7so5015671f8f.1 for ; Tue, 20 Jan 2026 10:41:38 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4356997eb1fsm30853426f8f.35.2026.01.20.10.41.35 for (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Jan 2026 10:41:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1768934496; x=1769539296; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=MIJXPRC0+/9WoWGyCOIUjQQBuO8DkQLYIb8yEgeRGpc=; b=XlEADt+3OdMeGuOT0w6MBeCyrhM0vU/39TsyfBUCPUsTCYleUAgXtb/DLjrJ21Z7ju Sk/QcZGWiADITFR5xPoO+w/PsjaN326ucO6Iuxy7//ScSHRBgEBew0/JsiCRLq2EUOIs 15PaniAG3EH1egzctWbR06IPuSPosA94zTFFCpxYzYbS+KgZ9uDt4Px5srxYVYLSH7U/ 3n4EqShmer2T7t2Q4tac7wgaSQ+GRtlzUSUa4oDHl7bedED1p2s/tkdtWmd1wvizDHO1 GNgInqRyz9wgTdK8S8hzvpG0iyeWn+7ULhBOBJxQH8n/dWArryanRZuDQ8o7glek5Yjg ZLPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768934496; x=1769539296; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=MIJXPRC0+/9WoWGyCOIUjQQBuO8DkQLYIb8yEgeRGpc=; b=AyWu04bLbpes6uD4xeTTIjGFp6IDB0VI1UnD9CHVjfhlbyLjqtkSMauGg6u6jW3ORr gitoELrQULyYsL/ImVuPtvnbxpcDZ9NgFyGJHQQ9gnkYuCxAVeRLlfGrBquM4Uy0Hci+ tV9QIniy1vQnciT9qFf6ympaCRy8zsRyE1ymm+QIO9NT5KqwugvznNonPtdGAtz16KTO faLFhyi/KGlKwxH7XiSFI0Zm/PAyGvI3NuCxjLsPQIo+393+VZs6htnPEPukdqygVOKH 6ZSsJ4dUbVAN2NfZ9kdl3JF/Ub2ow3SBtu9ZY3bAd2i7brEEj7kHDBaYr05XpeixVsF5 PLbg== X-Gm-Message-State: AOJu0YzPAjHC4CKcc4JQuDJ45m47cUvSH8tQV72JmFmOi8nHhxBL/iIm zAQA7fJikIDccZzPTlxJmuErUvIG9yNQi5wu8ga2ejOrDf2gUib4cQVeJ2/q4pQ/TD0JR8FzzcW XJVR2I90= X-Gm-Gg: AZuq6aInZA5oB0DOkRp1JTbSxBUkkNYx+uIFZaxQFMmwRwVI6lsSMW8CXRUC4nlKsGP w/710xQpkkeLvWVRULfCY/G8bTIkT/BEuwxMp/M949YSarZC5hJOTBQ1L4gZNtyvSlr1Qpx3waP fJnVNc5rLP9FAkooLkZ7R34TPRfInBZ9sl+DyzH4O1gxA0kN7zbXJQxjXZn6bPARhclg/5kV7Ko Y2tT4wEcKRcYI+niM4lFuJ/SwuoM5KmKKU9UCARaDlziaxKIE0V8dswgHYHjO8WQ9K689aEJuRu bmlbrT63HEOzeDZDISc2jqjIuTZ8wdlJnY1w8+LZeDJohK/99eZhBTQFOtLtnj9KhMOVo+unp64 ianIR0QHr7fPuGsniO9qUGC2MpGSYjleg8ppOWCLABf/v4vNoR2ZVUNkqBBpJWGo1sHGksL+lJ5 NE8oHYBeUxD+oq8ECWRCd0bMoLeWm84P2h085PN2xoYW2YQkYLxzPwH4axP1Gd X-Received: by 2002:a5d:5f95:0:b0:42f:b690:6788 with SMTP id ffacd0b85a97d-4356997f4afmr22400846f8f.10.1768934496478; Tue, 20 Jan 2026 10:41:36 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Subject: [PULL 22/29] hw/loader: Rename LOAD_IMAGE_MAX _GUNZIP_BYTES to _DECOMPRESSED_BYTES Date: Tue, 20 Jan 2026 19:38:55 +0100 Message-ID: <20260120183902.73845-23-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260120183902.73845-1-philmd@linaro.org> References: <20260120183902.73845-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 (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::441; envelope-from=philmd@linaro.org; helo=mail-wr1-x441.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, 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: qemu development 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 @linaro.org) X-ZM-MESSAGEID: 1768934511343154100 From: Daan De Meyer Preparation for adding support for zstd compressed efi zboot kernel images. Reviewed-by: Daniel P. Berrang=C3=A9 Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Daan De Meyer Message-ID: <20251124123521.1058183-2-daan.j.demeyer@gmail.com> [PMD: Wrap long line to avoid checkpatch.pl warning] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/core/loader.h | 2 +- hw/arm/boot.c | 4 ++-- hw/core/loader.c | 9 +++++---- hw/nvram/fw_cfg.c | 3 ++- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/include/hw/core/loader.h b/include/hw/core/loader.h index 6f917035034..1f14dccbca9 100644 --- a/include/hw/core/loader.h +++ b/include/hw/core/loader.h @@ -82,7 +82,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); diff --git a/hw/arm/boot.c b/hw/arm/boot.c index e22609de93a..c97d4c4e118 100644 --- a/hw/arm/boot.c +++ b/hw/arm/boot.c @@ -816,14 +816,14 @@ static ssize_t arm_load_elf(struct arm_boot_info *inf= o, uint64_t *pentry, static uint64_t load_aarch64_image(const char *filename, hwaddr mem_base, hwaddr *entry, AddressSpace *as) { + const size_t max_bytes =3D LOAD_IMAGE_MAX_DECOMPRESSED_BYTES; hwaddr kernel_load_offset =3D KERNEL64_LOAD_ADDR; uint64_t kernel_size =3D 0; uint8_t *buffer; 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, - &buffer); + size =3D load_image_gzipped_buffer(filename, max_bytes, &buffer); =20 if (size < 0) { gsize len; diff --git a/hw/core/loader.c b/hw/core/loader.c index f4581f76b9a..79cb96b4664 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -829,8 +829,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); @@ -896,6 +896,7 @@ struct linux_efi_zboot_header { */ ssize_t unpack_efi_zboot_image(uint8_t **buffer, ssize_t *size) { + const size_t max_bytes =3D LOAD_IMAGE_MAX_DECOMPRESSED_BYTES; const struct linux_efi_zboot_header *header; uint8_t *data =3D NULL; ssize_t ploff, plsize; @@ -931,8 +932,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(max_bytes); + bytes =3D gunzip(data, max_bytes, *buffer + ploff, 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 437ab6e210f..69e97361453 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -1115,7 +1115,8 @@ 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) { --=20 2.52.0