[{"id":3673125,"web_url":"http://patchwork.ozlabs.org/comment/3673125/","msgid":"<CAFLszTiQQ2rGrNcuQ_oQPb8xBt72XZ-Sq88bkZ0eDK9x7X8SBQ@mail.gmail.com>","list_archive_url":null,"date":"2026-04-03T13:21:52","subject":"Re: [PATCH v4 2/3] binman: Generate preload header and sign data only\n once","submitter":{"id":6170,"url":"http://patchwork.ozlabs.org/api/people/6170/","name":"Simon Glass","email":"sjg@chromium.org"},"content":"Hi Paul,\n\nOn 2026-04-03T07:55:27, Paul HENRYS <paul.henrys_ext@softathome.com> wrote:\n> binman: Generate preload header and sign data only once\n>\n> To optimize preload generation, generate the header and signatures only\n> after all data has been collected. This avoids signing the data multiple\n> times.\n>\n> Since header_size is known upfront (from __init__), set the preload\n> header size in ObtainContents() to avoid an extra packing pass when\n> ProcessContentsUpdate() detects the size changed from 0 to header_size.\n>\n> This reduces unnecessary repacking and signing operations.\n>\n> Signed-off-by: Paul HENRYS <paul.henrys_ext@softathome.com>\n\n> diff --git a/tools/binman/etype/pre_load.py b/tools/binman/etype/pre_load.py\n> @@ -152,14 +152,14 @@ class Entry_pre_load(Entry_collection):\n> +    def ObtainContents(self):\n> +        \"\"\"Only set the known size of the preload header. The data will be\n> +        generated later on in ProcessContents() when the data from every entries\n> +        can be retrieved.\n> +        \"\"\"\n> +        self.contents_size = self.header_size\n> +        return True\n\nSetting contents_size without calling SetContents() is unusual. Most\nentry types provide placeholder data so GetData() returns something\nvalid rather than None. While section.py handles None by substituting\npad bytes, this feels like relying on a side-effect.\n\nPlease can you call SetContents() with placeholder data of header_size\nlength instead, similar to image_header? That would be more consistent\nwith other entry types.\n\nAlso the docstring should have the summary on the first line per\nPython conventions.\n\nRegards,\nSimon","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=chromium.org header.i=@chromium.org header.a=rsa-sha256\n header.s=google header.b=C+n07baR;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)","phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=chromium.org","phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de","phobos.denx.de;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=chromium.org header.i=@chromium.org\n header.b=\"C+n07baR\";\n\tdkim-atps=neutral","phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=chromium.org","phobos.denx.de;\n spf=pass smtp.mailfrom=sjg@chromium.org"],"Received":["from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fnKBq1mzNz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 04 Apr 2026 00:22:11 +1100 (AEDT)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 3C0F5840AB;\n\tFri,  3 Apr 2026 15:22:09 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id DB160840BE; Fri,  3 Apr 2026 15:22:08 +0200 (CEST)","from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com\n [IPv6:2a00:1450:4864:20::62a])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id E95A383DC9\n for <u-boot@lists.denx.de>; Fri,  3 Apr 2026 15:22:06 +0200 (CEST)","by mail-ej1-x62a.google.com with SMTP id\n a640c23a62f3a-b982518b73fso294450166b.1\n for <u-boot@lists.denx.de>; Fri, 03 Apr 2026 06:22:06 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-2.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,\n DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=ham\n autolearn_force=no version=3.4.2","ARC-Seal":"i=1; a=rsa-sha256; t=1775222526; cv=none;\n d=google.com; s=arc-20240605;\n b=kh44eFCFl8gByINaAcpkAarmhVEQ1LlhWWXV6WZXVXDb0HZ744h+m+3yVUwhJCtBoq\n bFCPICYNnXt6TYVRV7+xe766u3sdw3HNnbaDhJb6Upb2TdQIeDZTmMGvmPEmyb9UY3jH\n uEPzoBXikcoI42HQXaQZn95e2Nrv6XN0cIqNmwRFCDaR9/O1E3LlROMu2UuqY0TIwD0H\n 8TPmPQClPEsqAxB69/V/hWwUF/V3IQFoLWw6poBtKp5xY0uewpf+BPg/YC1hjuP590zZ\n B+nQuudiS9rNhsyaKS8v4y9xw5QUI/DFmlV8SbPTO17SUBjyPR1z0mSq00MmqbYeyP5J\n 1ujQ==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:dkim-signature;\n bh=j9dMIh+0L/7Jy5htshT+H6N0DXPXpIDGRGCI4xR3cdE=;\n fh=2Ai/DF/OygrgX5KD/xptwaXayaptkAAlqyY5KCXDcm8=;\n b=Xq/DO3CTKzcICATWVs4hhJLJsY9lioQrY9Bc4/mP9EFOCbvcsqKuhZnQV5U8t7fTGd\n 5JKWrGWoVlf07NWUXWOcGOVk+mcWpiE9jSmxiv5xaqHhg1aOgrxihEJmGoG6wh9XPS9E\n RktPg9J1UDWSu+1tH1ROTp3dmczsBPR3cxgXI/4kWwmljiIcp2Cw8Lk8xYgPcYc6Y2wj\n YWJ3GqQ3FVggwNVQO4WAtG/OD2YNuIvsmcpzWUnrt/JQcBo21QyuEI3p0O2IC+efhSM2\n HvR9J6oRASZy723woLz5Z4Ds3zl9y4EgVzBh4DT4vyaNY4p3Ht4qjH8Bcr7E7SWggv5u\n v2aQ==; darn=lists.denx.de","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=chromium.org; s=google; t=1775222526; x=1775827326; darn=lists.denx.de;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:from:to:cc:subject:date:message-id:reply-to;\n bh=j9dMIh+0L/7Jy5htshT+H6N0DXPXpIDGRGCI4xR3cdE=;\n b=C+n07baRupM8cjwjACByCdY7s5WzY3BXPNarJlCGvhwYbX8tQKI1XWIvw136nl0Ru2\n 4yr7n5DNbGxOMEn5YbB5qnA9sQsRQEBrofqFUBWcz6WDhkxt6yRle2btwZVqZDjMYMmg\n vA1oVzDYOVWemhqsCESkqaBBvNkIhrR135F28=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1775222526; x=1775827326;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=j9dMIh+0L/7Jy5htshT+H6N0DXPXpIDGRGCI4xR3cdE=;\n b=J25rkRjhh7SpwSnwEEd7QICTjpy29Htp3+kKEAs9nF0hu2it30nDxVRqGTRg0OOmh1\n e2E3VI7MnpWSfCbJQkzpIKMMjKkIRXzt/BIWdQzdUCBpSpN6g+yMdo72QuEMlvDRuc4d\n KpnA7E7FAwWXNaAQOCrB1tSoXHyZvSItpGRTSK0zKzwXb/bUc5DSkfsthx2DVz1YsCPe\n CjpBAQjMG9TAPDi87SjhxvOhpsktk2a8GWzKjsiNNJ+iTPKcaRJWgx3w5RwQtSyQIuTk\n ikYEPZO/NCmnC+/MpHdVrC3srutUj1Fjh3rrQis0qO50SHLqtY0HNrD1beBE475vbJcj\n hHGA==","X-Gm-Message-State":"AOJu0YzNwMbTJ0zu5QAgnkOAzVTL+eSAZR6PKlXMFK41D0IkYau1y687\n yZzSYWJgV2zIxxDc64fQrlch4jopMKZHe+um0XSKzVRgNhcR/r1x7+h8Su/Ry/9z4oNw24vQIIK\n wkS/kb9E3p4htQUr5fPaFsuG/01ME0UaHjOQZNgRK","X-Gm-Gg":"AeBDievVs0oI9Ec6WiAXWcumDjNzUDsM+LcrwK7H50vjpbEvr+/mQuVLcYfCP7F9doA\n iT0XqKEdjjAGQ1Igs6ZvPw7F4UsHcMAGo+aJH2D/X4IkO90x4j7eg7Fw3waUdUMBnfRPabtjcIu\n grJIIljOjhjSdRWOGAkbJR3UXzMIxtTWHyTreiPeetJCVn2ks3649YnI0v8+u9lN45EfEe2RF8z\n ZZE3CCv7VnAABLI6GNgMN/z+31Eb4oh6dM0YgeldTbhvNUHodsAb8ZbKer2E/9rzPa2MapqcnLm\n 8/eIZintX9FwC5tT","X-Received":"by 2002:a17:906:6a10:b0:b9c:1667:e17 with SMTP id\n a640c23a62f3a-b9c674229a9mr151240566b.7.1775222526220; Fri, 03 Apr 2026\n 06:22:06 -0700 (PDT)","MIME-Version":"1.0","References":"<20260403073251.1051533-1-paul.henrys_ext@softathome.com>\n <20260403075528.1150196-1-paul.henrys_ext@softathome.com>\n <20260403075528.1150196-2-paul.henrys_ext@softathome.com>","In-Reply-To":"<20260403075528.1150196-2-paul.henrys_ext@softathome.com>","From":"Simon Glass <sjg@chromium.org>","Date":"Fri, 3 Apr 2026 07:21:52 -0600","X-Gm-Features":"AQROBzA225IYMQH_l8giCKpwrApTMbtvPavKyIUGER3MjMUvgUEfgBJ-bPvXKmg","Message-ID":"\n <CAFLszTiQQ2rGrNcuQ_oQPb8xBt72XZ-Sq88bkZ0eDK9x7X8SBQ@mail.gmail.com>","Subject":"Re: [PATCH v4 2/3] binman: Generate preload header and sign data only\n once","To":"paul.henrys_ext@softathome.com","Cc":"u-boot+nodisclaimer@lists.denx.de, sjg+nodisclaimer@chromium.org,\n trini+nodisclaimer@konsulko.com, alpernebiyasak+nodisclaimer@gmail.com,\n philippe.reynes+nodisclaimer@softathome.com, u-boot@lists.denx.de","Content-Type":"text/plain; charset=\"UTF-8\"","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.39","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<https://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>","X-Virus-Scanned":"clamav-milter 0.103.8 at phobos.denx.de","X-Virus-Status":"Clean"}}]