[U-Boot] [PATCH v8 12/30] sandbox: Try to start the RAM buffer at a particular address
Alexander Graf
agraf at suse.de
Mon Jun 18 14:45:36 UTC 2018
On 06/18/2018 04:08 PM, Simon Glass wrote:
> Use a starting address of 256MB which should be available. This helps to
> make sandbox RAM buffers pointers more recognisable.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
Nak, this has a non-0 chance of failing, in case something else is
already mapped at that address. You don't want to have your CI blow up
1% of the time due to this.
Alex
> ---
>
> Changes in v8: None
> Changes in v7: None
> Changes in v6: None
> Changes in v5: None
> Changes in v4: None
> Changes in v3: None
> Changes in v2: None
>
> arch/sandbox/cpu/os.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/arch/sandbox/cpu/os.c b/arch/sandbox/cpu/os.c
> index a1a982af2d..1553aa687d 100644
> --- a/arch/sandbox/cpu/os.c
> +++ b/arch/sandbox/cpu/os.c
> @@ -145,7 +145,12 @@ void *os_malloc(size_t length)
> struct os_mem_hdr *hdr;
> int page_size = getpagesize();
>
> - hdr = mmap(NULL, length + page_size,
> + /*
> + * Use an address that is hopefully available to us so that pointers
> + * to this memory are fairly obvious. If we end up with a different
> + * address, that's fine too.
> + */
> + hdr = mmap((void *)0x10000000, length + page_size,
> PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
> if (hdr == MAP_FAILED)
> return NULL;
More information about the U-Boot
mailing list