Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp3851156ybf; Tue, 3 Mar 2020 14:12:52 -0800 (PST) X-Google-Smtp-Source: ADFU+vtcXC2dym8nR00xPADgTCP+IRGeZM5SzytBV66HC4pp8xg6D2YYCrVmg9KvkSmMvJJzpfzL X-Received: by 2002:a05:6808:6ca:: with SMTP id m10mr480073oih.63.1583273572139; Tue, 03 Mar 2020 14:12:52 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583273572; cv=none; d=google.com; s=arc-20160816; b=kg6sf9J9B8+2Cv6dHfQQoQgJeGUidKasSwttZIi+VgLiaKAeePZmH6QIl58Y+b//9h F3QqAQLt+yKcGJWCvg54rbQAi2GhZJpYEwQdZhObgO+Bhod2KN65woHatN5v3BDC3kuc oSuqc4erZor7zhJRZNUmnrONKprOo1DBdEHdgE+AKOU5/jjSox3MIQcZrJseUHIwVNX3 wHfXwU3ybsA7d2aA5ayRQUHgWYiZnm9J36yMC5S6jrEZKL7joXEIt9TqqMA1Tl6HwznI aKJJSLhzqs6kyPskfTobgtXxfaGZ9F/br7sjHen/2rXmYqqQBAhaCEbmUdPWMxv2KaA6 Ce+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=AmcbQwyEtfdi8QD7clg+NqRsV8BYwj3SzR0V6CDlNfE=; b=dGxcVaDmUNSDkZEso9PqoJBbd3SyYy1bhYCVFdLn87z4x1aQnrP4Cfu3EAUr1OKFt1 etb629UQCAafUBBXBKZap5dpO503sI5NpvVffAOwOAceTAGkRAP2+Gy/uGcJoQbohV8Q mz/sAWKCP7zf7hbgLiyU9pwaJ68AqEEOb7X3a/fuuq6ETsadI8Yyw/qsAyCuqwwjKvYG eDzfj8mdkSo5e16d09hU84swJK1VXJ6RXqhX7At9j0becvnaqkk7+fXIK8HiY76+ldXV a3sLtWm/bxUF6FTz9rygvRtFC/IGR9rA6lRseQoaThQf0lbtsRvpy9a0gYkCyGG/pYgg eC9Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c140si65899oib.195.2020.03.03.14.12.40; Tue, 03 Mar 2020 14:12:52 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727958AbgCCWMP (ORCPT + 99 others); Tue, 3 Mar 2020 17:12:15 -0500 Received: from mail-qv1-f68.google.com ([209.85.219.68]:44534 "EHLO mail-qv1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727854AbgCCWMJ (ORCPT ); Tue, 3 Mar 2020 17:12:09 -0500 Received: by mail-qv1-f68.google.com with SMTP id b13so72881qvt.11; Tue, 03 Mar 2020 14:12:09 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=AmcbQwyEtfdi8QD7clg+NqRsV8BYwj3SzR0V6CDlNfE=; b=mc25+UCPkTYj/sumjvlVCB6LXhBWB8rl4O9veurGisXTKZylY7K4uaQaTvrvuYzDmX 1SZ2x50jg2Q6gXm9r+AXjdxpLnWWFB1sKz2xY/KNCIK1RW2K4x8espcc3imHomP+ydAv rDpbG2ROCZ6WRTcqdJDgUWHjSKwpxRgX99mcQ/6mAjul3GU1GnmO0GbufoEgWfzIfEIe hLK6fi19MIw/qf6GgV4LL3avV/3erdJmEOqL/CO+gvV3IFhcPKTHcmH7blqBm5ZaVPBf 4tJUezpzBehJka9fsqGbsVv22IHzWSehA2lmHw7z1b/YSUorUQw9JwtNigD2l/uBuJ+r XPmw== X-Gm-Message-State: ANhLgQ1fClR60AYl7X2Rhba9Dos9PCb7425w45elfR0AELgTWUXnIkwF TjHgmw8d74pHmq1VyKqjE9fr1t6nde4= X-Received: by 2002:ad4:4b2f:: with SMTP id s15mr5634560qvw.95.1583273528710; Tue, 03 Mar 2020 14:12:08 -0800 (PST) Received: from rani.riverdale.lan ([2001:470:1f07:5f3::b55f]) by smtp.gmail.com with ESMTPSA id i91sm13267378qtd.70.2020.03.03.14.12.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Mar 2020 14:12:08 -0800 (PST) From: Arvind Sankar To: Ard Biesheuvel Cc: linux-efi@vger.kernel.org, x86@kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 3/5] efi/x86: Add kernel preferred address to PE header Date: Tue, 3 Mar 2020 17:12:03 -0500 Message-Id: <20200303221205.4048668-4-nivedita@alum.mit.edu> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200303221205.4048668-1-nivedita@alum.mit.edu> References: <20200301230537.2247550-1-nivedita@alum.mit.edu> <20200303221205.4048668-1-nivedita@alum.mit.edu> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Store the kernel's link address as ImageBase in the PE header. Note that the PE specification requires the ImageBase to be 64k aligned. The preferred address should almost always satisfy that, except for 32-bit kernel if the configuration has been customized. Signed-off-by: Arvind Sankar --- arch/x86/boot/header.S | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/x86/boot/header.S b/arch/x86/boot/header.S index 4ee25e28996f..736b3a0c9454 100644 --- a/arch/x86/boot/header.S +++ b/arch/x86/boot/header.S @@ -138,10 +138,12 @@ optional_header: #endif extra_header_fields: + # PE specification requires ImageBase to be 64k-aligned + .set image_base, (LOAD_PHYSICAL_ADDR + 0xffff) & ~0xffff #ifdef CONFIG_X86_32 - .long 0 # ImageBase + .long image_base # ImageBase #else - .quad 0 # ImageBase + .quad image_base # ImageBase #endif .long 0x20 # SectionAlignment .long 0x20 # FileAlignment -- 2.24.1