summary refs log tree commit diff
path: root/Documentation/debugging.adoc
blob: 3871a7c9fd523fb407bb7b3905e1b3442fe20c1d (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 Spectrum
:page-parent: Explanation
:toc:
:toclevels: 1

// 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
----