summary refs log tree commit diff
path: root/Documentation/development/debugging.adoc
blob: f1bbf01b2d8860fe0f03ac35e3335ad192cec8e3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
= Debugging
:page-parent: Development
:page-nav_order: 4

// SPDX-FileCopyrightText: 2022 Alyssa Ross <hi@alyssa.is>
// SPDX-License-Identifier: GFDL-1.3-no-invariants-or-later OR CC-BY-SA-4.0

== Extracting core dumps when running Spectrum in a VM

When using a VM to run the Spectrum host system, a special mechanism
is available to enable easy introspection of core files.

When a program on the Spectrum host system dumps core, the system will
attempt to upload the core file to _its_ host (i.e. the system running
Spectrum in a VM) using the vsock(7) protocol, on port 1129271877.

For example, when running Spectrum in a VM using `make run` in the
host/rootfs directory (which automatically sets up a virtio-vsock
device), the running this command on the development Linux system will
listen for a core file from Spectrum, and write it to a file:

[source,shell]
----
socat -u VSOCK-LISTEN:1129271877 CREATE:spectrum.core
----