From 702ffad4142e961e668f9254bc24776437fd17de Mon Sep 17 00:00:00 2001 From: NicJA Date: Tue, 14 Apr 2015 18:01:14 +0000 Subject: [PATCH] make sure we dont trash the kernel git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@50387 fb15a70f-31f2-0310-bbcc-cdcc74a49acc --- arch/arm-native/kernel/kernel_startup.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/arch/arm-native/kernel/kernel_startup.c b/arch/arm-native/kernel/kernel_startup.c index eb58c3090e..58935f381c 100644 --- a/arch/arm-native/kernel/kernel_startup.c +++ b/arch/arm-native/kernel/kernel_startup.c @@ -183,17 +183,24 @@ void __attribute__((used)) kernel_cstart(struct TagItem *msg) if (__arm_arosintern.ARMI_LED_Toggle) __arm_arosintern.ARMI_LED_Toggle(ARM_LED_POWER, ARM_LED_ON); - D(bug("[KRN] Preparing memory\n")); + D(bug("[KRN] Preparing memory 0x%p -> 0x%p\n", memlower, memupper)); + D(bug("[KRN] (protected area 0x%p -> 0x%p)\n", protlower, protupper)); NEWLIST(&memList); + if (memlower >= protlower) + memlower = protupper; + mh = (struct MemHeader *)memlower; /* Initialize TLSF memory allocator */ krnCreateTLSFMemHeader("System Memory", 0, mh, (memupper - memlower), MEMF_FAST | MEMF_PUBLIC | MEMF_KICK | MEMF_LOCAL); - /* Protect the bootstrap area from further use. AllocAbs will do the trick */ - ((struct MemHeaderExt *)mh)->mhe_AllocAbs((struct MemHeaderExt *)mh, protupper-protlower, (void *)protlower); + if (memlower < protlower) + { + /* Protect the bootstrap area from further use. AllocAbs will do the trick */ + ((struct MemHeaderExt *)mh)->mhe_AllocAbs((struct MemHeaderExt *)mh, protupper-protlower, (void *)protlower); + } ranges[0] = (UWORD *)krnGetTagData(KRN_KernelLowest, 0, msg); ranges[1] = (UWORD *)krnGetTagData(KRN_KernelHighest, 0, msg); -- 2.11.4.GIT