From patchwork Sun Aug 30 09:34:12 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1353919 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=EvALt+V2; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4BfSpq1Zygz9sSP for ; Sun, 30 Aug 2020 19:34:40 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 4C465808B3; Sun, 30 Aug 2020 11:34:31 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="EvALt+V2"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id AC85081BD2; Sun, 30 Aug 2020 11:34:29 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 365DB80404 for ; Sun, 30 Aug 2020 11:34:27 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1598780059; bh=rfXBK1ryI8DAR4tF00Pv9Fn9fS2kOQypzRzV8GvxUyw=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=EvALt+V2syg7FCudtAHm7iJMqjcL81Fh0cmfXsgcPzD5KhLgqy/sj60f5m+n7ypkH tpbyVFMuj5NxrfflpysXTcT7kQEkXsBBNV5bSbyvMZv/ka0ieS1gGLG3hbE4BZqfzv rftIIFx4k8xw4zof+ievn5MDXpUbYu3bwRqLcgcY= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([178.202.41.107]) by mail.gmx.com (mrgmx105 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MtwYu-1kSthn25uu-00uLst; Sun, 30 Aug 2020 11:34:19 +0200 From: Heinrich Schuchardt To: Tom Rini Cc: Simon Glass , Tero Kristo , Daniel Schwierzeck , Bin Meng , Cristian Ciocaltea , Lihua Zhao , Masahiro Yamada , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH 1/1] bootm: update image OS image size when decompressing Date: Sun, 30 Aug 2020 11:34:12 +0200 Message-Id: <20200830093412.23494-1-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 X-Provags-ID: V03:K1:smcIJPkm2eFwvmfKCGGkt2V3EAf2FhvDt0Z/jQB76Au6Q7hXyKT V7rkskOJwT24ddNUEsoJCsQZ856JL9GtohHfRCC+M8V6Mt2yiq+MVvM6EFNpy8yQZreQ1Bv cLQQAcbf1M6F6xGzbvEgSLcw+VIk0/e5cXtGtgK1Y08tm7qT+TvVPtD9TGRq1VUMBfjSUKB 3xqSFOPn8GdyOqaCwT+Qg== X-UI-Out-Filterresults: notjunk:1;V03:K0:QIwKX4X42Rg=:xZf5pIpXereBHCiyaJ81ov 2AIdYAjoCeUnnDbRtjFCHSnTNlgzzBKnheE0Mu8/XDx/f4mi+GmQYKdPZNz9BrrcCThQFxjwR zHJfufFFq4FyNaa7pT7gKU85IDnH8MmzpB2ccWRHQdgGFqDqUi4IniOvl/XKsygLJphAoZXev onFDlXarqG8sunLIorPAdrL4Rpt1xZTfiaZNAjGUo+0c7lHit4QtrKgz+yTYibAdmRaofAHtH Jyh9+ff65Mhrf8yyUWWUccZo7zUKbPw0UqLQ0qr5VRUOIsq/OAy/+3XsZISVbhcl9nRNBLQeH tMcKuKK+Ah+Ld0bmmf/+KQOGmOc3VeQRAzryvaddn2AX5kDHFbVCRrGAdy9+sXia6ZhKiumGL 5f2++KRyyWhJvRPXsSI8O3/GjrmRCytd4pnMmAyM/FppjtAkFQEFVtoM1uPx3e5yo+IjCIl/M 4jUJaeV7kHzS8L6dQlsWMRX+BUFX7oALrKq94v5rtff1mRxqD9fd6uNsVCBK7NAIAU+aplZkP xmcuOBuwnp8X2WaX0wZM5zV69EhAqmhzTTBq3mWHZvCC2gCBxzJdMwn/VW6n/PnR0IUNRPB7m mi1gqk6nWXDqBPc+PKkcTuAVAjCgCIIrBSmgDSZpR5TcXIZPH/n0FBQ6V9N/6f/5c+WX1TO3i OqIdvSdayETZybPYImeJujo0kwfT4SUI14bU+A5mL1rA5cCSi09OGQLE2I/8VTbpbNlc5VFvf wq/ZPf4Q/KaJawgqyJHbi0Sxp2EZdnqxMQwdGOyoXQAprOe/KBbt5Qo6Ih5F6xPGhesvDmzCF 1ZOTIvU8N+b7Znlseu0izWTqwikUSyETQ98WNZdEQGOpQ5+9wT1GcPyv/wI8GiaJz2rq4nv/Z HwRYnFgFhh7swG8cEBTNGujP2yeHDqeJn2QQn9EK1AnK3tIqzfvHtOEk/a0YAjHAYdTtLP9Da KhOTHe4/53oTCdt0i6wv/CoasS5+Ta2cmuXu40xOU0AsywynrTJvolne4GEMvSKMOr4vi/p5s 89g/ovdEjJviIlTwTOBdk7A+buFbqhY75ghS4/dAH1mSWmbXEn5mt31WLPKlBEvpg/oA9QOWt z9BH7es1VJ428nWruwQDjfoUHcpP7HSuCwPyY+eIVHO0LYti/W0H3BgEFmGC+bJw70Xr0GvD/ EIVVsPTK+TVR6/WKrd0PfjQLVqRfAA9jNzFKVL4uVnDwd4CzjSxT3YNhQkmYy50o+aIqylxoc CQvVcybLA1HZvGSwZM4WhH/ZeYLLQWduN92BCqA== X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.102.3 at phobos.denx.de X-Virus-Status: Clean In bootm_load_os() the OS image is decompressed. In later stages of the boot process we need the decompressed size of the image. Update images->os.image_len after decompression. Passing the correct size is necessary if we want to check loaded EFI binararies for file truncation by comparing the loaded size to the header field SizeOfImage. Signed-off-by: Heinrich Schuchardt Reviewed-by: Simon Glass --- common/bootm.c | 2 ++ 1 file changed, 2 insertions(+) -- 2.28.0 diff --git a/common/bootm.c b/common/bootm.c index 247b600d9c..b3377490b3 100644 --- a/common/bootm.c +++ b/common/bootm.c @@ -390,6 +390,8 @@ static int bootm_load_os(bootm_headers_t *images, int boot_progress) bootstage_error(BOOTSTAGE_ID_DECOMP_IMAGE); return err; } + /* We need the decompressed image size in the next steps */ + images->os.image_len = load_end - load; flush_cache(flush_start, ALIGN(load_end, ARCH_DMA_MINALIGN) - flush_start);