Setting the Stack Size for a User-Space Application
Setting the Stack Size for a User-Space Application
This application note explains how to set up the stack size for a user-space application.
The stack size can be changed using the fdpichdr utility. This utility is provided as a part of the Emcraft distribution (linux-cortexm-<target>-<release>/A2F/fdpichdr/
). Activate the cross-build environment (. ./ACTIVATE.sh
) before using it:
$ cd linux-cortexm-<target>-<release>
$ . ./ACTIVATE.sh
$ fdpichdr --help
Usage: fdpichdr [options] <elfs>
Options: -[s:vqhV]
-s, --stack-size <size> * Set the stack size
-v, --verbose * Make a lot of noise
-q, --quiet * Only show errors
-h, --help * Print this help and exit
-V, --version * Print version and exit
Let's for example set the stack size of the lcdtest
application to 32KB:
$ cd projects/rootfs
$ fdpichdr -vs $((32 * 1024)) lcdtest/lcdtest
lcdtest/lcdtest: setting stack size to 32768 (0x8000)
skipping program header 0x6
skipping program header 0x3
skipping program header 0x1
skipping program header 0x1
skipping program header 0x2
Found PT_GNU_STACK; changing value 0x8000 -> 0x8000
$
, multiple selections available,