From: Alexander Graf <agraf@suse.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v4 20/21] sandbox: Always allocate aligned buffers
Date: Mon, 18 Jun 2018 17:23:14 +0200 [thread overview]
Message-ID: <20180618152315.34233-21-agraf@suse.de> (raw)
In-Reply-To: <20180618152315.34233-1-agraf@suse.de>
In some code paths we check whether host virtual addresses are sane.
That only works if at least alignments between host and U-Boot address
spaces match.
So let's always map U-Boot addresses with 64kb alignment. That should
be enough to ensure that the actual RAM ends up in a different page
from the header on all architectures.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
arch/sandbox/cpu/os.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/sandbox/cpu/os.c b/arch/sandbox/cpu/os.c
index 9fa79a8843..4dc6483922 100644
--- a/arch/sandbox/cpu/os.c
+++ b/arch/sandbox/cpu/os.c
@@ -143,14 +143,15 @@ void os_tty_raw(int fd, bool allow_sigs)
void *os_malloc(size_t length)
{
struct os_mem_hdr *hdr;
+ size_t alloc_length = length + (64 * 1024);
- hdr = mmap(NULL, length + sizeof(*hdr), PROT_READ | PROT_WRITE,
+ hdr = mmap(NULL, alloc_length, PROT_READ | PROT_WRITE,
MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
if (hdr == MAP_FAILED)
return NULL;
hdr->length = length;
- return hdr + 1;
+ return (void*)hdr + (64 * 1024);
}
void os_free(void *ptr)
--
2.12.3
next prev parent reply other threads:[~2018-06-18 15:23 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-18 15:22 [U-Boot] [PATCH v4 00/21] sandbox: efi_loader support Alexander Graf
2018-06-18 15:22 ` [U-Boot] [PATCH v4 01/21] efi: sandbox: Add distroboot support Alexander Graf
2018-06-18 15:22 ` [U-Boot] [PATCH v4 02/21] efi: sandbox: Add relocation constants Alexander Graf
2018-06-18 15:22 ` [U-Boot] [PATCH v4 03/21] efi_loader: Use compiler constants for image loader Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:22 ` [U-Boot] [PATCH v4 04/21] efi_loader: Use map_sysmem() in bootefi command Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:22 ` [U-Boot] [PATCH v4 05/21] efi.h: Do not use config options Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 06/21] efi_loader: Allow SMBIOS tables in highmem Alexander Graf
2018-06-21 2:01 ` Simon Glass
2018-06-21 9:38 ` Alexander Graf
2018-06-21 19:44 ` Simon Glass
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 07/21] sandbox: Map host memory for efi_loader Alexander Graf
2018-06-21 2:01 ` Simon Glass
2018-06-18 15:23 ` [U-Boot] [PATCH v4 08/21] efi_loader: efi_allocate_pages is too restrictive Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 09/21] efi_loader: Disable miniapps on sandbox Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 10/21] fs: Convert fs_read/write to take buffer instead of address Alexander Graf
2018-06-21 2:02 ` Simon Glass
2018-06-21 15:27 ` Tom Rini
2018-06-18 15:23 ` [U-Boot] [PATCH v4 11/21] efi_loader: Introduce ms abi vararg helpers Alexander Graf
2018-06-21 2:02 ` Simon Glass
2018-06-21 9:40 ` Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-23 8:37 ` Bin Meng
2018-06-25 16:47 ` Alexander Graf
2018-06-26 1:51 ` Bin Meng
2018-06-26 11:18 ` Alexander Graf
2018-06-27 2:59 ` Bin Meng
2018-06-18 15:23 ` [U-Boot] [PATCH v4 12/21] efi: sandbox: Enable EFI loader for sandbox Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 13/21] distro: Move to compiler based target architecture determination Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 14/21] efi_loader: " Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 15/21] sandbox: Fix setjmp/longjmp Alexander Graf
2018-06-21 2:02 ` Simon Glass
2018-06-21 9:41 ` Alexander Graf
2018-06-21 19:45 ` Simon Glass
2018-06-22 11:54 ` Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 16/21] elf: Move x86 reloc defines to common elf.h Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 17/21] efi_loader: Use common elf.h reloc defines Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 18/21] efi: sandbox: Adjust memory usage for sandbox Alexander Graf
2018-06-21 2:02 ` Simon Glass
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-18 15:23 ` [U-Boot] [PATCH v4 19/21] sandbox: Allow to execute from RAM Alexander Graf
2018-06-21 2:02 ` Simon Glass
2018-06-21 9:44 ` Alexander Graf
2018-06-21 19:45 ` Simon Glass
2018-06-22 9:43 ` Alexander Graf
2018-06-18 15:23 ` Alexander Graf [this message]
2018-06-18 15:23 ` [U-Boot] [PATCH v4 21/21] efi_loader: Expose U-Boot addresses in memory map for sandbox Alexander Graf
2018-06-21 15:13 ` [U-Boot] [U-Boot, v4, " Alexander Graf
2018-06-23 4:01 ` [U-Boot] [PATCH v4 " Simon Glass
2018-06-23 6:57 ` Alexander Graf
2018-06-25 2:58 ` Simon Glass
2018-06-25 2:58 ` Simon Glass
2018-06-18 15:53 ` [U-Boot] [PATCH v4 00/21] sandbox: efi_loader support Alexander Graf
2018-06-21 2:44 ` Simon Glass
2018-06-21 9:47 ` Alexander Graf
2018-06-21 19:45 ` Simon Glass
2018-06-22 9:44 ` Alexander Graf
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=20180618152315.34233-21-agraf@suse.de \
--to=agraf@suse.de \
--cc=u-boot@lists.denx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox