Skip to content

Commit e57072f

Browse files
committed
Update docs and tests for ARM gdb support
Updated docs to now show arm is supported. Updated the build test to run on aarch Signed-off-by: Jack Thomson <jackabt@amazon.com>
1 parent 83e06b5 commit e57072f

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

docs/gdb-debugging.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
# GDB Debugging with Firecracker
22

3+
**The GDB feature is not for production use.**
4+
35
Firecracker supports debugging the guest kernel via GDB remote serial protocol.
46
This allows us to connect GDB to the firecracker process and step through debug
5-
the guest kernel. Currently only debugging on x86 is supported.
7+
the guest kernel.
68

79
The GDB feature requires Firecracker to be booted with a config file.
810

911
## Prerequisites
1012

11-
Firstly, to enable GDB debugging we need to compile Firecracker with the `debug`
13+
Firstly, to enable GDB debugging we need to compile Firecracker with the `gdb`
1214
feature enabled, this will enable the necessary components for the debugging
1315
process.
1416

@@ -102,9 +104,14 @@ command in the GDB session which will terminate both.
102104
mitigated by setting these kernel config values:
103105

104106
```
105-
CONFIG_SCHED_MC=y
106-
CONFIG_SCHED_MC_PRIO=y
107+
CONFIG_SCHED_MC=n
108+
CONFIG_SCHED_MC_PRIO=n
107109
```
108110

109111
- Currently we support a limited subset of cpu registers for get and set
110112
operations, if more are required feel free to contribute.
113+
114+
- On ARM the guest virtual address translation will only work on guests with 4kb
115+
pages and not all physical address sizes are supported. If the current
116+
translation implementation doesn't cover a specific setup, feel free to
117+
contribute.

tests/integration_tests/build/test_gdb.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,12 @@
44

55
import platform
66

7-
import pytest
8-
97
import host_tools.cargo_build as host
108

119
MACHINE = platform.machine()
1210
TARGET = "{}-unknown-linux-musl".format(MACHINE)
1311

1412

15-
@pytest.mark.skipif(MACHINE != "x86_64", reason="GDB runs only on x86_64.")
1613
def test_gdb_compiles():
1714
"""Checks that Firecracker compiles with GDB enabled"""
1815

0 commit comments

Comments
 (0)