From patchwork Fri Jan 25 11:45:16 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Graf X-Patchwork-Id: 156572 Delivered-To: patch@linaro.org Received: by 2002:a02:48:0:0:0:0:0 with SMTP id 69csp260662jaa; Fri, 25 Jan 2019 03:50:02 -0800 (PST) X-Google-Smtp-Source: ALg8bN6MjJl5e8UyiWqqXmwjkXM60n7UQsKI4hVLe9IsZJVUSlo5DVzNkEHULkiVLaX+7mP+oWJ/ X-Received: by 2002:adf:9b11:: with SMTP id b17mr11236179wrc.168.1548417001984; Fri, 25 Jan 2019 03:50:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548417001; cv=none; d=google.com; s=arc-20160816; b=iqLoCvx7Llt6eS0aAQjQ9ymYW3endQMNPa9e07Gkv7WWAW1kh0yryA5V0R508Lm2PG paI9Pvy4M7FjGDjfwpQ2eyh0BYwOdT8Gs/AuCO3aeQOhO1v90Jthi8/RisQinVsN3cpc vGnY06r4LK2ykrW5UGedwrnax7rj/uWvW89lrbmAaNqDwj6oIWr6Prgta7dc2sxVW0ZT O+NkSPU9zmij35WYdbMcmFqCIBIhQo8jCR6EhHUvHGmPWSyaXQtw/DTaxpLQo5/sT3M3 ywgLDcfjIPNoE37H9tPghU065Y5lkFSEFGu2baOb2njhLL2VrDNoJPkX1qHZ5hYoT3xy Kfgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:references:in-reply-to:message-id:date:subject :to:from; bh=xZ6F+BVHDubGmLwI7XJs+METJy7MyyYGlp6CKd6zwGw=; b=QjqofzA+MFkStsnbdhdL1bQZ32JzQ2AkUUVPSt9OR7g7LdbPY+UUTY/bDPTuBiGxoG qr4FgctkJPBGaYsKhbDe4Ph/SunoTRLOs5SEcG94si1KvU5Ljj4/UQDgsY6XNsTlAYaC a9vpQpGcMLLLVNGIIWlIaqfLagI+YH8PkHYAfv/oXb83ixfdfFMF+gRLPggpuY1Fwk5t 4SorGz0dbb7CGTFXNNtVmM2/Qns0utlz1m64gePF8MZLfIhI4tPWSVHX/7DU7xnxO4nv w2tj2LLNzOzZ8fxdfBLT72B9omlcHFANiXi114zAUuOqw4lX2OSLNbKHS+tENZS7Opno hIRQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of grub-devel-bounces+patch=linaro.org@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="grub-devel-bounces+patch=linaro.org@gnu.org" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id v126si42868682wmf.58.2019.01.25.03.50.01 for (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 25 Jan 2019 03:50:01 -0800 (PST) Received-SPF: pass (google.com: domain of grub-devel-bounces+patch=linaro.org@gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; spf=pass (google.com: domain of grub-devel-bounces+patch=linaro.org@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="grub-devel-bounces+patch=linaro.org@gnu.org" Received: from localhost ([127.0.0.1]:43053 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gmzzl-00006V-0d for patch@linaro.org; Fri, 25 Jan 2019 06:50:01 -0500 Received: from eggs.gnu.org ([209.51.188.92]:58331) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gmzzR-0008Ud-Gw for grub-devel@gnu.org; Fri, 25 Jan 2019 06:49:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gmzzP-0004Hb-T5 for grub-devel@gnu.org; Fri, 25 Jan 2019 06:49:41 -0500 Received: from mx2.suse.de ([195.135.220.15]:52266 helo=mx1.suse.de) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gmzzP-0004Bv-Jl for grub-devel@gnu.org; Fri, 25 Jan 2019 06:49:39 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id CDEDCADC8; Fri, 25 Jan 2019 11:49:28 +0000 (UTC) From: Alexander Graf To: grub-devel@gnu.org Subject: [PATCH v5 3/3] mkimage: Clarify file alignment in efi case Date: Fri, 25 Jan 2019 12:45:16 +0100 Message-Id: <20190125114516.12127-4-agraf@suse.de> X-Mailer: git-send-email 2.12.3 In-Reply-To: <20190125114516.12127-1-agraf@suse.de> References: <20190125114516.12127-1-agraf@suse.de> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x (no timestamps) [generic] X-Received-From: 195.135.220.15 X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: The development of GNU GRUB Cc: Jon Masters , Leif Lindholm , Daniel Kiper MIME-Version: 1.0 Errors-To: grub-devel-bounces+patch=linaro.org@gnu.org Sender: "Grub-devel" There are a few spots in the PE generation code for EFI binaries that uses the section alignment rather than file alignment, even though the alignment is really only file bound. Replace those cases with the file alignment constant instead. Reported-by: Daniel Kiper Signed-off-by: Alexander Graf --- util/mkimage.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) -- 2.12.3 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel diff --git a/util/mkimage.c b/util/mkimage.c index 16af12e0c..6631bfe45 100644 --- a/util/mkimage.c +++ b/util/mkimage.c @@ -1227,10 +1227,10 @@ grub_install_generate_image (const char *dir, const char *prefix, header_size = EFI64_HEADER_SIZE; reloc_addr = ALIGN_UP (header_size + core_size, - image_target->section_align); + GRUB_PE32_FILE_ALIGNMENT); pe_size = ALIGN_UP (reloc_addr + layout.reloc_size, - image_target->section_align); + GRUB_PE32_FILE_ALIGNMENT); pe_img = xmalloc (reloc_addr + layout.reloc_size); memset (pe_img, 0, header_size); memcpy ((char *) pe_img + header_size, core_img, core_size); @@ -1280,7 +1280,7 @@ grub_install_generate_image (const char *dir, const char *prefix, o->image_base = 0; o->section_alignment = grub_host_to_target32 (image_target->section_align); - o->file_alignment = grub_host_to_target32 (image_target->section_align); + o->file_alignment = grub_host_to_target32 (GRUB_PE32_FILE_ALIGNMENT); o->image_size = grub_host_to_target32 (pe_size); o->header_size = grub_host_to_target32 (header_size); o->subsystem = grub_host_to_target16 (GRUB_PE32_SUBSYSTEM_EFI_APPLICATION); @@ -1315,7 +1315,7 @@ grub_install_generate_image (const char *dir, const char *prefix, o->code_base = grub_cpu_to_le32 (header_size); o->image_base = 0; o->section_alignment = grub_host_to_target32 (image_target->section_align); - o->file_alignment = grub_host_to_target32 (image_target->section_align); + o->file_alignment = grub_host_to_target32 (GRUB_PE32_FILE_ALIGNMENT); o->image_size = grub_host_to_target32 (pe_size); o->header_size = grub_host_to_target32 (header_size); o->subsystem = grub_host_to_target16 (GRUB_PE32_SUBSYSTEM_EFI_APPLICATION);