Skip to content

Comments

Open reverse connection to allow monitor to control debugger#20

Merged
mpickering merged 1 commit intomasterfrom
wip/reverse-connection
Nov 21, 2025
Merged

Open reverse connection to allow monitor to control debugger#20
mpickering merged 1 commit intomasterfrom
wip/reverse-connection

Conversation

@mpickering
Copy link
Collaborator

The socket will now listen for messages recieved from the monitor process.

Currently there are three messages supported.

  • startHeapProfiling
  • stopHeapProfiling
  • requestHeapProfile

When the process recieves these messages, the relevant RTS API functions are called.

This commit also includes a new python test driver, and support for test scripts which can communicate over the socket.

@mpickering mpickering force-pushed the wip/reverse-connection branch 2 times, most recently from ab93f09 to c0f1010 Compare November 21, 2025 09:21
The socket will now listen for messages recieved from the monitor
process.

Currently there are three messages supported.

* startHeapProfiling
* stopHeapProfiling
* requestHeapProfile

When the process recieves these messages, the relevant RTS API functions
are called.

This commit also includes a new python test driver, and support for test
scripts which can communicate over the socket.

If you are manually starting the sockets (ie, before hs_main runs) then
you need to call `eventlog_socket_ready()` before attempting to use the
control channel, to signal that the RTS is ready to receive requests.

I also have rewritten the testsuite driver into python to allow testing
the control socket by sending various messages.

There is now a test matrix which tests normal/reconnect modes for
fibber/fibber-tcp/fibber-c-main against all the control scripts.
@mpickering mpickering force-pushed the wip/reverse-connection branch from c0f1010 to cdc0eb5 Compare November 21, 2025 11:27
@mpickering mpickering merged commit 1bbf21d into master Nov 21, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant