mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-26 19:51:35 +01:00
freestanding: document --no-continue there as well
This commit is contained in:
15
README.adoc
15
README.adoc
@@ -13380,8 +13380,21 @@ In order to GDB step debug those executables, you will want to use `--no-continu
|
|||||||
./run-gdb --arch aarch64 --no-continue --userland userland/arch/aarch64/freestanding/linux/hello.S
|
./run-gdb --arch aarch64 --no-continue --userland userland/arch/aarch64/freestanding/linux/hello.S
|
||||||
....
|
....
|
||||||
|
|
||||||
|
or in one go with <<tmux>>:
|
||||||
|
|
||||||
|
....
|
||||||
|
./run \
|
||||||
|
--arch aarch64 \
|
||||||
|
--gdb-wait \
|
||||||
|
--tmux-args=--no-continue \
|
||||||
|
--userland userland/arch/aarch64/freestanding/linux/hello.S \
|
||||||
|
;
|
||||||
|
....
|
||||||
|
|
||||||
You are now left on the very first instruction of our tiny executable!
|
You are now left on the very first instruction of our tiny executable!
|
||||||
|
|
||||||
|
This is analogous to <<baremetal-gdb-step-debug,step debugging baremetal examples>>.
|
||||||
|
|
||||||
===== nostartfiles programs
|
===== nostartfiles programs
|
||||||
|
|
||||||
Assembly examples under `nostartfiles` directories can use the standard library, but they don't use the pre-`main` boilerplate and start directly at our explicitly given `_start`:
|
Assembly examples under `nostartfiles` directories can use the standard library, but they don't use the pre-`main` boilerplate and start directly at our explicitly given `_start`:
|
||||||
@@ -15631,6 +15644,8 @@ Alternatively, to start from the very first executed instruction of our tiny <<b
|
|||||||
;
|
;
|
||||||
....
|
....
|
||||||
|
|
||||||
|
analogously to what is done for <<freestanding-programs>>.
|
||||||
|
|
||||||
Now you can just `stepi` to when jumping into main to go to the C code in link:userland/c/hello.c[].
|
Now you can just `stepi` to when jumping into main to go to the C code in link:userland/c/hello.c[].
|
||||||
|
|
||||||
This is specially interesting for the executables that don't use the bootloader from under `baremetal/arch/<arch>/no_bootloader/*.S`, e.g.:
|
This is specially interesting for the executables that don't use the bootloader from under `baremetal/arch/<arch>/no_bootloader/*.S`, e.g.:
|
||||||
|
|||||||
Reference in New Issue
Block a user