Page MenuHomePhabricator

Non-Secure scatter files might over-allocate RAM
Open, LowPublic

Description

In non-secure scatter files ER_DATA defined as:

ER_DATA NS_DATA_START NS_DATA_SIZE {
    * (+ZI +RW)
}

This is followed by several other execution region definitions in RAM.

NS_DATA_SIZE is defined as the maximum available RAM for the NS Software. So in extreme case ER_DATA can be so large that the stacks and the heap overruns the available NS RAM, and that is not noticed by the linker.

ER_DATA should be defined something like:

ER_DATA NS_DATA_START NS_DATA_SIZE-NS_MSP_STACK_SIZE-NS_PSP_STACK_SIZE-NS_HEAP_SIZE {
    * (+ZI +RW)
}

Event Timeline

matetothpal triaged this task as Low priority.Mar 12 2020, 1:51 PM
matetothpal created this task.