All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Luca.Fancellu@arm.com, michal.orzel@amd.com, Henry.Wang@arm.com,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH 1/9] xen/arm: Check Xen size when linking
Date: Sun, 25 Jun 2023 21:48:59 +0100	[thread overview]
Message-ID: <20230625204907.57291-2-julien@xen.org> (raw)
In-Reply-To: <20230625204907.57291-1-julien@xen.org>

The linker will happily link Xen if it is bigger than what we can handle
(e.g 2MB). This will result to unexpected failure after boot.

This unexpected failure can be prevented by forbidding linking if Xen is
bigger than the area we reversed.

Signed-off-by: Julien Grall <julien@xen.org>
---
 xen/arch/arm/xen.lds.S | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S
index be58c2c39514..c5d8c6201423 100644
--- a/xen/arch/arm/xen.lds.S
+++ b/xen/arch/arm/xen.lds.S
@@ -241,3 +241,4 @@ ASSERT(IS_ALIGNED(__init_begin,     4), "__init_begin is misaligned")
 ASSERT(IS_ALIGNED(__init_end,       4), "__init_end is misaligned")
 ASSERT(IS_ALIGNED(__bss_start,      POINTER_ALIGN), "__bss_start is misaligned")
 ASSERT(IS_ALIGNED(__bss_end,        POINTER_ALIGN), "__bss_end is misaligned")
+ASSERT((_end - start) <= XEN_VIRT_SIZE, "Xen is too big")
-- 
2.40.1



  reply	other threads:[~2023-06-25 20:49 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-25 20:48 [PATCH 0/9] xen/arm: Enable UBSAN support Julien Grall
2023-06-25 20:48 ` Julien Grall [this message]
2023-06-26  6:15   ` [PATCH 1/9] xen/arm: Check Xen size when linking Henry Wang
2023-06-26  7:10     ` Julien Grall
2023-06-26  7:14       ` Henry Wang
2023-06-26 11:24   ` Michal Orzel
2023-06-28 18:13     ` Julien Grall
2023-06-25 20:49 ` [PATCH 2/9] xen/arm64: head: Don't map too much in boot_third Julien Grall
2023-06-26 11:28   ` Michal Orzel
2023-06-28 18:21     ` Julien Grall
2023-06-29  7:26       ` Michal Orzel
2023-06-29 12:28         ` Julien Grall
2023-06-25 20:49 ` [PATCH 3/9] xen/arm32: " Julien Grall
2023-06-26 11:30   ` Michal Orzel
2023-06-25 20:49 ` [PATCH 4/9] xen/arm32: head: Remove 'r6' from the clobber list of create_page_tables() Julien Grall
2023-06-26  6:37   ` Henry Wang
2023-06-26 11:31   ` Michal Orzel
2023-06-28 10:12   ` Bertrand Marquis
2023-06-25 20:49 ` [PATCH 5/9] xen/arm: Rework the code mapping Xen to avoid relying on the size of Xen Julien Grall
2023-06-26 11:43   ` Michal Orzel
2023-06-28 20:02     ` Julien Grall
2023-06-29  7:30       ` Michal Orzel
2023-06-25 20:49 ` [PATCH 6/9] xen/arm64: entry: Don't jump outside of an alternative Julien Grall
2023-06-27  7:52   ` Michal Orzel
2023-06-25 20:49 ` [PATCH 7/9] xen/arm64: head: Rework PRINT() to work when the string is not withing +/- 1MB Julien Grall
2023-06-26 11:50   ` Michal Orzel
2023-06-26 14:44   ` Henry Wang
2023-06-25 20:49 ` [PATCH 8/9] xen/arm: Allow the user to build Xen with USBAN Julien Grall
2023-06-26  7:29   ` Henry Wang
2023-06-26 11:57     ` Andrew Cooper
2023-06-28 20:35     ` Julien Grall
2023-06-29  1:36       ` Henry Wang
2023-06-29 20:01         ` Julien Grall
2023-06-26 11:56   ` Michal Orzel
2023-06-26 12:56     ` Julien Grall
2023-06-27  8:09       ` Michal Orzel
2023-06-28 20:39         ` Julien Grall
2023-06-28 22:16           ` Luca Fancellu
2023-06-29  7:31           ` Michal Orzel
2023-06-25 20:49 ` [PATCH 9/9] xen/arm32: vfp: Add missing U for shifted constant Julien Grall
2023-06-26  6:43   ` Henry Wang
2023-06-28 10:09   ` Bertrand Marquis
2023-06-26  5:45 ` [PATCH 0/9] xen/arm: Enable UBSAN support Jan Beulich
2023-06-26  7:18   ` Julien Grall
2023-06-26 14:38 ` Henry Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230625204907.57291-2-julien@xen.org \
    --to=julien@xen.org \
    --cc=Henry.Wang@arm.com \
    --cc=Luca.Fancellu@arm.com \
    --cc=Volodymyr_Babchuk@epam.com \
    --cc=bertrand.marquis@arm.com \
    --cc=michal.orzel@amd.com \
    --cc=sstabellini@kernel.org \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.