From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B7E3C12002 for ; Wed, 21 Jul 2021 09:32:17 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id F062A611CE for ; Wed, 21 Jul 2021 09:32:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F062A611CE Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=denx.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id DADE082977; Wed, 21 Jul 2021 11:32:14 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=denx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=denx.de; s=phobos-20191101; t=1626859935; bh=ccpA6k5rBQnaCQQQZR54fvr3wd0i/AyoJgnN2pBA0LM=; h=Subject:To:Cc:References:From:Date:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=tXKJoaez6N+jYhGYGFH1PzpcOnQ90FP6VpgKWD7k/pqC3R8fuBiysylOoalIXtpSR BQnGswXo4cUgjoYzNrYxoM15/wWJcHVv1vW3FDMA99M+BeJhgkY1Qb1il0r7aqJTpx 6ZLGKdIIB24uPqTVyrilHHMtlLfvR8BNO9Wu1fvtdmHMEIkTLqFP2yW4nkewJL3iPx hAIPemYhCfiPmG8ePTKfbVFwYXOvBCCK0Mep7C46WubZenO/rtq6OT8x/vpUwS97OO o9SwvQ0P3EH44Y4H2H5XSBEfyTGxhLYL8OueGDZobqxhya/TsJPTyvD/NNNXrv6dJd Aw5DL3YMbqw9A== Received: by phobos.denx.de (Postfix, from userid 109) id D2A9282977; Wed, 21 Jul 2021 11:32:12 +0200 (CEST) Received: from mout-u-205.mailbox.org (mout-u-205.mailbox.org [91.198.250.254]) (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 22A9B80FBE for ; Wed, 21 Jul 2021 11:32:10 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=denx.de Authentication-Results: phobos.denx.de; spf=fail smtp.mailfrom=sr@denx.de Received: from smtp2.mailbox.org (smtp2.mailbox.org [80.241.60.241]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-u-205.mailbox.org (Postfix) with ESMTPS id 4GV9Mt0CFkzQk2X; Wed, 21 Jul 2021 11:32:10 +0200 (CEST) Received: from smtp2.mailbox.org ([80.241.60.241]) by gerste.heinlein-support.de (gerste.heinlein-support.de [91.198.250.173]) (amavisd-new, port 10030) with ESMTP id Nkf007NFycer; Wed, 21 Jul 2021 11:32:06 +0200 (CEST) Subject: Re: [PATCH u-boot-mvebu v2 14/41] tools: kwbimage: Fix calculating size of binary header To: =?UTF-8?Q?Marek_Beh=c3=ban?= , u-boot@lists.denx.de, Chris Packham , Baruch Siach , Dirk Eibach , Chris Packham Cc: Dennis Gilmore , Mario Six , Jon Nettleton , =?UTF-8?Q?Pali_Roh=c3=a1r?= References: <20210719122104.29698-1-marek.behun@nic.cz> <20210719122104.29698-15-marek.behun@nic.cz> From: Stefan Roese Message-ID: <55ee2842-88de-f17b-e814-0cc435100940@denx.de> Date: Wed, 21 Jul 2021 11:32:05 +0200 MIME-Version: 1.0 In-Reply-To: <20210719122104.29698-15-marek.behun@nic.cz> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: de-DE Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EE8EE1840 X-Rspamd-UID: 6b8d7f 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.103.2 at phobos.denx.de X-Virus-Status: Clean On 19.07.21 14:20, Marek Behún wrote: > From: Pali Rohár > > Binary header consist of: > * 1 byte for header type > * 3 bytes for header size > * 1 byte for number of arguments > * 3 reserved bytes > * N*4 bytes for arguments > * M bytes (aligned to 4 bytes) for executable data > * 1 byte for information about next header > * 3 reserved bytes > > The first four bytes are specified as > sizeof(struct opt_hdr_v1) > and the remaining bytes as > ALIGN(s.st_size, 4) + (binarye->binary.nargs + 2) * sizeof(uint32_t) > > Signed-off-by: Pali Rohár > Reviewed-by: Marek Behún Reviewed-by: Stefan Roese Thanks, Stefan > --- > tools/kwbimage.c | 11 ++--------- > 1 file changed, 2 insertions(+), 9 deletions(-) > > diff --git a/tools/kwbimage.c b/tools/kwbimage.c > index 2d4574af7d..6c9f93ae8b 100644 > --- a/tools/kwbimage.c > +++ b/tools/kwbimage.c > @@ -984,7 +984,7 @@ static size_t image_headersz_v1(int *hasext) > } > > headersz += sizeof(struct opt_hdr_v1) + > - s.st_size + > + ALIGN(s.st_size, 4) + > (binarye->binary.nargs + 2) * sizeof(uint32_t); > if (hasext) > *hasext = 1; > @@ -1051,14 +1051,7 @@ int add_binary_header_v1(uint8_t *cur) > > binhdrsz = sizeof(struct opt_hdr_v1) + > (binarye->binary.nargs + 2) * sizeof(uint32_t) + > - s.st_size; > - > - /* > - * The size includes the binary image size, rounded > - * up to a 4-byte boundary. Plus 4 bytes for the > - * next-header byte and 3-byte alignment at the end. > - */ > - binhdrsz = ALIGN(binhdrsz, 4) + 4; > + ALIGN(s.st_size, 4); > hdr->headersz_lsb = cpu_to_le16(binhdrsz & 0xFFFF); > hdr->headersz_msb = (binhdrsz & 0xFFFF0000) >> 16; > > Viele Grüße, Stefan -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de