PROTOCOLS
DebugData
Defined in fuchsia.debugdata/debugdata.fidl
DebugData defines the interface for instrumentation configuration and data publishing.
LoadConfig
The program runtime names a config_name
referring to a debug
configuration of some kind and gets back a VMO to read configuration
data from. The sanitizer runtimes use this to allow large options
text to be stored in a file rather than passed directly in environment
strings.
Request
Name | Type |
---|---|
config_name |
string[1024]
|
Response
Name | Type |
---|---|
config |
handle<vmo>?
|
Publish
The program runtime sends a string naming a data_sink
and transfers
the sole handle to a VMO containing the data
it wants published
there. The data_sink
string identifies a type of data, and the
VMO's object name can specifically identify the data set in this VMO.
The ZX_PROP_VMO_CONTENT_SIZE property should be set on the VMO to
indicate the precise size of the data in case that is not whole pages;
however, leaving it unset (i.e. 0) is acceptable when the whole-page
size of the VMO is the intended size of dump. The client must
transfer the only handle to the VMO (which prevents the VMO being
resized without the receiver's knowledge), but it might still have the
VMO mapped in and continue to write data to it. Code instrumentation
runtimes use this to deliver large binary trace results.
Request
Name | Type |
---|---|
data_sink |
string[1024]
|
data |
handle<vmo>
|
STRUCTS
CONSTANTS
Name | Value | Type | Description |
---|---|---|---|
MAX_NAME |
1024
|
uint64 |
The maximum length, in bytes, of data sink or configuration name. TODO(mcgrathr): Align this with file name limits in some fs protocol. |