Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.
All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.
--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 13:42:11 +00:00
|
|
|
# This lists all the available crash annotations.
|
|
|
|
#
|
|
|
|
# Mandatory fields for each entry are:
|
|
|
|
# - description: A string describing the annotation
|
|
|
|
# - type: the annotation type, currently `string`, `integer` or `boolean`.
|
|
|
|
# The latter are stringified to `1` for true and `0` for false.
|
|
|
|
#
|
|
|
|
# Additionally a field can have the following optional fields:
|
|
|
|
# - altname: A string that will be used when writing out the annotation to the
|
|
|
|
# .extra file instead of the annotation name
|
|
|
|
# - ping: A boolean that indicates whether the annotation is whitelisted for
|
|
|
|
# going into the crash ping, if not specified this defaults to false
|
|
|
|
# - content: A boolean that indicates whether the field will be included in
|
|
|
|
# subprocess reports, if not specified this defaults to true
|
|
|
|
|
|
|
|
A11yHandlerRegistered:
|
|
|
|
description: >
|
|
|
|
Set to "true" if the accessibility handler is registered, "false" otherwise.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AbortMessage:
|
|
|
|
description: >
|
|
|
|
Message passed to NS_DebugBreak().
|
|
|
|
type: string
|
|
|
|
|
|
|
|
Accessibility:
|
|
|
|
description: >
|
|
|
|
Set to "Active" by the accessibility service when it is active.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AccessibilityClient:
|
|
|
|
description: >
|
|
|
|
Accessibility client ID.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AccessibilityInProcClient:
|
|
|
|
description: >
|
|
|
|
Hexadecimal mask of in-process accessibility consumers, see
|
|
|
|
accessible/windows/msaa/Compatibility.h for the mappings.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ActualStreamLen:
|
|
|
|
description: >
|
|
|
|
Actual length of an IPC proxy stream.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
AdapterDeviceID:
|
|
|
|
description: >
|
|
|
|
Graphics adapter name.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AdapterDriverVersion:
|
|
|
|
description: >
|
|
|
|
Graphics adapter driver version.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AdapterSubsysID:
|
|
|
|
description: >
|
|
|
|
Graphics adapter subsystem ID.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AdapterVendorID:
|
|
|
|
description: >
|
|
|
|
Graphics adapter vendor name.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
additional_minidumps:
|
|
|
|
description: >
|
|
|
|
Comma separated list of additional minidumps for this crash, each element
|
|
|
|
in the list represent the suffix used in the dump filename. E.g. the
|
|
|
|
"browser" entry for crash fa909194-737b-4b93-b8da-da110ac785e0 implies the
|
|
|
|
existence of the fa909194-737b-4b93-b8da-da110ac785e0-browser.dmp file.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
Addons:
|
|
|
|
description: >
|
|
|
|
List of currently enabled add-ons.
|
|
|
|
type: string
|
|
|
|
altname: Add-ons
|
|
|
|
|
|
|
|
AppInitDLLs:
|
|
|
|
description: >
|
|
|
|
List of DLLs loaded when launching any application on Windows, this
|
|
|
|
reflects the contents of the AppInit_DLLs registry key.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AsyncShutdownModule:
|
|
|
|
description: >
|
|
|
|
Holds the contents of the AsyncShutdown.js script
|
|
|
|
type: string
|
|
|
|
|
|
|
|
AsyncShutdownTimeout:
|
|
|
|
description: >
|
|
|
|
This annotation is present if a shutdown blocker was not released in time
|
|
|
|
and the browser was crashed instead of waiting for shutdown to finish. The
|
|
|
|
condition that caused the hang is contained in the annotation.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
AvailablePageFile:
|
|
|
|
description: >
|
|
|
|
Windows-only, maximum amount of memory that can be committed. This
|
|
|
|
annotation is populated with the contents of the MEMORYSTATUSEX's structure
|
|
|
|
ullAvailPageFile field.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
AvailablePhysicalMemory:
|
|
|
|
description: >
|
|
|
|
Windows-only, amount of free physical memory in bytes. This annotation
|
|
|
|
is populated with the contents of the MEMORYSTATUSEX's structure
|
|
|
|
ullAvailPhys field.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
AvailableVirtualMemory:
|
|
|
|
description: >
|
|
|
|
Windows-only, amount of free virtual memory in bytes. This annotation is
|
|
|
|
populated with the contents of the MEMORYSTATUSEX's structure
|
|
|
|
ullAvailVirtual field.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
BIOS_Manufacturer:
|
|
|
|
description: >
|
|
|
|
Name of the BIOS manufacturer.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
BlockedDllList:
|
|
|
|
description: >
|
|
|
|
Comma-separated list of blocked DLLS, Windows-only
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
BlocklistInitFailed:
|
|
|
|
description: >
|
|
|
|
Set to 1 if the DLL blocklist could not be initialized.
|
|
|
|
type: boolean
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
BreakpadReserveAddress:
|
|
|
|
description: >
|
|
|
|
Address of the buffer reserved by Breakpad.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
BreakpadReserveSize:
|
|
|
|
description: >
|
|
|
|
Size of the buffer reserved by Breakpad.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
BuildID:
|
|
|
|
description: >
|
|
|
|
Application build ID, the format is YYYYMMDDHHMMSS.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ClassRegistrationInfoChild:
|
|
|
|
description: >
|
|
|
|
Microsoft COM class registration annotation for the child process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ClassRegistrationInfoParent:
|
|
|
|
description: >
|
|
|
|
Microsoft COM class registration annotation for the parent process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
CoMarshalInterfaceFailure:
|
|
|
|
description: >
|
|
|
|
Annotation describing the error returned by trying to marshal an object
|
|
|
|
via CoMarshalInterface during the creation of an IPC proxy stream.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ContainsMemoryReport:
|
|
|
|
description: >
|
|
|
|
Indicates that the crash dump contains a memory report.
|
|
|
|
type: boolean
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ContentSandboxCapabilities:
|
|
|
|
description: >
|
|
|
|
List of capabilities of the content process sandbox.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ContentSandboxEnabled:
|
|
|
|
description: >
|
|
|
|
Set to 1 when content process sandboxing is enabled.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
ContentSandboxCapable:
|
|
|
|
description: >
|
|
|
|
Set to 1 if the client is capable of content sandboxing.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
ContentSandboxLevel:
|
|
|
|
description: >
|
|
|
|
Content sandbox level.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
CoUnmarshalInterfaceResult:
|
|
|
|
description: >
|
|
|
|
Annotation describing the error returned by trying to unmarshal an object
|
|
|
|
via CoUnmarshalInterface during the creation of an IPC proxy stream.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
CPUMicrocodeVersion:
|
|
|
|
description: >
|
|
|
|
Version of the CPU microcode.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
CpuUsageFlashProcess1:
|
|
|
|
description: >
|
|
|
|
CPU usage of the first Adobe Flash plugin process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
CpuUsageFlashProcess2:
|
|
|
|
description: >
|
|
|
|
CPU usage of the second Adobe Flash plugin process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
CrashAddressLikelyWrong:
|
|
|
|
description: >
|
|
|
|
Set to 1 if signal handling is broken, in which case the crash address is
|
|
|
|
likely to be wrong.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
CrashTime:
|
|
|
|
description: >
|
|
|
|
Crash time in seconds since the Epoch.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
CreateStreamOnHGlobalFailure:
|
|
|
|
description: >
|
|
|
|
Set when failing to obtain a global memory handle during the creation of an
|
|
|
|
IPC proxy stream.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
CycleCollector:
|
|
|
|
description: >
|
|
|
|
Reason why the cycle collector crashed.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
DeviceResetReason:
|
|
|
|
description: >
|
|
|
|
Reason why a DirectX device has been reset, Windows only.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
DOMIPCEnabled:
|
|
|
|
description: >
|
|
|
|
Set to 1 when a tab is running in a content process
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
EMCheckCompatibility:
|
|
|
|
description: >
|
|
|
|
Set to 1 if add-on compatibility checking is enabled.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
EventLoopNestingLevel:
|
|
|
|
description: >
|
|
|
|
Present only if higher than 0, indicates that we're running in a nested
|
|
|
|
event loop and indicates the nesting level.
|
|
|
|
type: integer
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ExpectedStreamLen:
|
|
|
|
description: >
|
|
|
|
Expected length of an IPC proxy stream.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
FlashProcessDump:
|
|
|
|
description: >
|
|
|
|
Type of process the flash plugin is running in, can be either "Broker" or
|
|
|
|
"Sandbox".
|
|
|
|
type: string
|
|
|
|
|
|
|
|
FramePoisonBase:
|
|
|
|
description: >
|
|
|
|
Base pointer of the memory area used for the poison value we place in freed
|
|
|
|
memory.
|
|
|
|
type: string
|
|
|
|
content: false
|
|
|
|
|
|
|
|
FramePoisonSize:
|
|
|
|
description: >
|
|
|
|
Size of the memory area used for the poison value we place in freed
|
|
|
|
memory.
|
|
|
|
type: integer
|
|
|
|
content: false
|
|
|
|
|
|
|
|
GetHGlobalFromStreamFailure:
|
|
|
|
description: >
|
|
|
|
Error returned when invoking GetHGlobalFromStreamFailure() during the
|
|
|
|
creation of an IPC stream proxy.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
GMPLibraryPath:
|
|
|
|
description: >
|
|
|
|
Holds the path to the GMP plugin library.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
GMPPlugin:
|
|
|
|
description: >
|
|
|
|
Set to 1 if the GMP plugin is enabled.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
GPUProcessLaunchCount:
|
|
|
|
description: >
|
|
|
|
Number of times the GPU process was launched.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
GPUProcessStatus:
|
|
|
|
description: >
|
|
|
|
Status of the GPU process, can be set to "Running" or "Destroyed"
|
|
|
|
type: string
|
|
|
|
|
|
|
|
GraphicsCriticalError:
|
|
|
|
description: >
|
|
|
|
Information of a critical error that occurred within the graphics code.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
GraphicsSanityTest:
|
|
|
|
description: >
|
|
|
|
Annotation used in tests.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
GraphicsStartupTest:
|
|
|
|
description: >
|
|
|
|
Set to 1 by the graphics driver crash guard when it's activated.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
HangMonitorDescription:
|
|
|
|
description: >
|
|
|
|
Name of the hang monitor that generated the crash.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
HasDeviceTouchScreen:
|
|
|
|
description: >
|
|
|
|
Set to 1 if the device had a touch-screen, this only applies to Firefox
|
|
|
|
desktop as on mobile devices we assume a touch-screen is always present.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
IAccessibleConfig:
|
|
|
|
description: >
|
|
|
|
Set when something is seriously wrong with the IAccessible configuration in
|
|
|
|
the computer's registry. The value is always set to "NoSystemTypeLibOrPS"
|
|
|
|
type: string
|
|
|
|
|
|
|
|
InstallTime:
|
|
|
|
description: >
|
|
|
|
The time when Firefox was installed expressed as seconds since the Epoch
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
InterfaceRegistrationInfoChild:
|
|
|
|
description: >
|
|
|
|
Microsoft COM interface registration annotation for the child process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
InterfaceRegistrationInfoParent:
|
|
|
|
description: >
|
|
|
|
Microsoft COM interface registration annotation for the parent process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ipc_channel_error:
|
|
|
|
description: >
|
|
|
|
Set before a content process crashes because of an IPC channel error, holds
|
|
|
|
a description of the error.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
IpcCreateEndpointsNsresult:
|
|
|
|
description: >
|
|
|
|
errno value retrieved after failing to create an IPC transport object.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
IpcCreatePipeCloExecErrno:
|
|
|
|
description: >
|
|
|
|
errno value retrieved after failing to set the O_CLOEXEC flag on a pipe
|
|
|
|
used for IPC.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
IpcCreatePipeFcntlErrno:
|
|
|
|
description: >
|
|
|
|
errno value retrieved after a call to fcntl() on a pipe used for IPC failed.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
IpcCreatePipeSocketPairErrno:
|
|
|
|
description: >
|
|
|
|
errno value retrieved after a socketpair() call failed while creating an IPC
|
|
|
|
transport object.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
IpcCreateTransportDupErrno:
|
|
|
|
description: >
|
|
|
|
errno value retrieved after a dup() call failed while creating an IPC
|
|
|
|
transport object.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
IPCFatalErrorMsg:
|
|
|
|
description: >
|
|
|
|
Describes a fatal error that occurred during IPC operation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IPCFatalErrorProtocol:
|
|
|
|
description: >
|
|
|
|
Name of the protocol used by IPC when a fatal error occurred.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IPCMessageName:
|
|
|
|
description: >
|
|
|
|
Name of the IPC message that caused a crash because it was too large.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IPCMessageSize:
|
|
|
|
description: >
|
|
|
|
Size of the IPC message that caused a crash because it was too large.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
IPCReadErrorReason:
|
|
|
|
description: >
|
|
|
|
Reason why reading an object via IPC failed.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IPCShutdownState:
|
|
|
|
description: >
|
|
|
|
IPC shutdown state, can be set to either "RecvShutdown" or
|
|
|
|
"SendFinishShutdown" by a content process while it's shutting down.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IPCSystemError:
|
|
|
|
description: >
|
|
|
|
Description of the last system error that occurred during IPC operation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IPCTransportFailureReason:
|
|
|
|
description: >
|
|
|
|
Reason why creating an IPC channel failed.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
IsGarbageCollecting:
|
|
|
|
description: >
|
|
|
|
If true then the JavaScript garbage collector was running when the crash
|
|
|
|
occurred.
|
|
|
|
type: boolean
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
JavaStackTrace:
|
|
|
|
description: >
|
|
|
|
Java stack trace, only present on Firefox for Android if we encounter an
|
|
|
|
uncaught Java exception.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
JSLargeAllocationFailure:
|
|
|
|
description: >
|
|
|
|
A large allocation couldn't be satisfied, check the JSOutOfMemory
|
|
|
|
description for the possible values of this annotation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
JSOutOfMemory:
|
|
|
|
description: >
|
|
|
|
A small allocation couldn't be satisfied, the annotation may contain the
|
|
|
|
"Reporting", "Reported" or "Recovered" value. The first one means that
|
|
|
|
we crashed while responding to the OOM condition (possibly while running a
|
|
|
|
memory-pressure observers), the second that we crashed after having tried to
|
|
|
|
free some memory, and the last that the GC had managed to free enough memory
|
|
|
|
to satisfy the allocation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
LowCommitSpaceEvents:
|
|
|
|
description: >
|
|
|
|
Number of times the available memory tracker has detected a that
|
|
|
|
commit-space was running low. This is a Windows-specific annotation.
|
|
|
|
type: integer
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
MarshalActCtxManifestPath:
|
|
|
|
description: >
|
|
|
|
Proxy stream marshalling current activation context manifest path.
|
|
|
|
type: string
|
|
|
|
|
2018-09-10 21:56:53 +00:00
|
|
|
MemoryErrorCorrection:
|
|
|
|
description: >
|
|
|
|
Windows only, type of error correction used by system memory. See
|
|
|
|
documentation for MemoryErrorCorrection property of
|
|
|
|
Win32_PhysicalMemoryArray WMI class.
|
|
|
|
type: string
|
|
|
|
|
Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.
All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.
--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 13:42:11 +00:00
|
|
|
MozCrashReason:
|
|
|
|
description: >
|
|
|
|
Plaintext description of why Firefox crashed, this is usually set by
|
|
|
|
assertions and the like.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
Notes:
|
|
|
|
description: >
|
|
|
|
Miscellaneous notes that can be appended to a crash.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
nsAsyncShutdownComponent:
|
|
|
|
description: >
|
|
|
|
Holds the contents of the nsAsyncShutdown.js script
|
|
|
|
type: string
|
|
|
|
|
|
|
|
NumberOfProcessors:
|
|
|
|
description: >
|
|
|
|
Number of logical processors in the system.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
OOMAllocationSize:
|
|
|
|
description: >
|
|
|
|
Size of the allocation that caused an out-of-memory condition.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
PluginCpuUsage:
|
|
|
|
description: >
|
|
|
|
CPU usage of the plugin process.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
PluginFilename:
|
|
|
|
description: >
|
|
|
|
Plugin filename, only the process holding the plugin has this annotation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
PluginHang:
|
|
|
|
description: >
|
|
|
|
The presence of this annotation indicates that this crash was generated in
|
|
|
|
response to a plugin hanging.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
PluginHangUIDuration:
|
|
|
|
description: >
|
|
|
|
Duration in milliseconds of the plugin hang that caused this crash.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
PluginName:
|
|
|
|
description: >
|
|
|
|
Display name of a plugin, only the process holding the plugin has this
|
|
|
|
annotation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
PluginVersion:
|
|
|
|
description: >
|
|
|
|
Version of a plugin, only the process holding the plugin has this
|
|
|
|
annotation.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ProcessType:
|
|
|
|
description: >
|
|
|
|
Type of the process that crashed, can hold the values "content", "plugin" or
|
|
|
|
"gpu" currently.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ProductName:
|
|
|
|
description: >
|
|
|
|
Application name (e.g. Firefox).
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ProductID:
|
|
|
|
description: >
|
|
|
|
Application UUID (e.g. ec8030f7-c20a-464f-9b0e-13a3a9e97384).
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ProxyStreamSize:
|
|
|
|
description: >
|
|
|
|
Size of an IPC proxy stream.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
ProxyStreamSizeFrom:
|
|
|
|
description: >
|
|
|
|
Describes how the size of a proxy stream was obtained. It can be set to
|
|
|
|
either Stream::Stat or GlobalSize.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ProxyStreamUnmarshalStatus:
|
|
|
|
description: >
|
|
|
|
Status of the proxy stream unmarshalling, see ipc/mscom/ProxyStream.cpp for
|
|
|
|
the various value this annotation can take.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ProxyStreamValid:
|
|
|
|
description: >
|
|
|
|
Set to "false" when encountering an invalid IPC proxy stream.
|
|
|
|
type: string
|
|
|
|
|
2018-09-05 19:22:45 +00:00
|
|
|
RecordReplay:
|
|
|
|
description: >
|
|
|
|
Set to 1 if this crash happened in a Web Replay middleman, recording,
|
|
|
|
or replaying process.
|
|
|
|
type: boolean
|
|
|
|
|
2018-08-13 20:47:49 +00:00
|
|
|
RecordReplayError:
|
|
|
|
description: >
|
|
|
|
Any fatal error that occurred while recording/replaying a tab.
|
|
|
|
type: string
|
|
|
|
|
2018-08-14 00:48:28 +00:00
|
|
|
RecordReplayHang:
|
|
|
|
description: >
|
|
|
|
The presence of this annotation indicates that this crash was generated in
|
|
|
|
response to a hang in a replaying process.
|
|
|
|
type: boolean
|
|
|
|
|
Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.
All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.
--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 13:42:11 +00:00
|
|
|
ReleaseChannel:
|
|
|
|
description: >
|
|
|
|
Application release channel (e.g. default, beta, ...)
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
RemoteType:
|
|
|
|
description: >
|
|
|
|
Type of the content process, can be set to "web", "file" or "extension".
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
SafeMode:
|
|
|
|
description: >
|
|
|
|
Set to 1 if the browser was started in safe mode.
|
|
|
|
type: boolean
|
|
|
|
|
|
|
|
SecondsSinceLastCrash:
|
|
|
|
description: >
|
|
|
|
Time in seconds since the last crash occurred.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ServerURL:
|
|
|
|
description: >
|
|
|
|
URL used to post the crash report.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
SheetLoadFailure:
|
|
|
|
description: >
|
|
|
|
Set when failing to load a built-in style sheet. This can contain a
|
|
|
|
potentially very large amount of diagnostic information.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
ShutdownProgress:
|
|
|
|
description: >
|
|
|
|
Shutdown step at which the browser crashed, can be set to "quit-application",
|
|
|
|
"profile-change-teardown", "profile-before-change", "xpcom-will-shutdown" or
|
|
|
|
"xpcom-shutdown".
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
StartupCrash:
|
|
|
|
description: >
|
|
|
|
If set to 1 then this crash occurred during startup.
|
|
|
|
type: boolean
|
|
|
|
content: false
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
StartupTime:
|
|
|
|
description: >
|
|
|
|
The time when Firefox was launched expressed in seconds since the Epoch.
|
|
|
|
type: integer
|
|
|
|
content: false
|
|
|
|
|
|
|
|
StatFailure:
|
|
|
|
description: >
|
|
|
|
Error returned when invoking IStream's Stat function during the creation
|
|
|
|
of an IPC proxy stream.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
StorageConnectionNotClosed:
|
|
|
|
description: >
|
|
|
|
This annotation is added when a mozStorage connection has not been properly
|
|
|
|
closed during shutdown. The annotation holds the filename of the database
|
|
|
|
associated with the connection.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
SystemMemoryUsePercentage:
|
|
|
|
description: >
|
|
|
|
Windows-only, percentage of physical memory in use. This annotation is
|
|
|
|
populated with the contents of the MEMORYSTATUSEX's structure dwMemoryLoad
|
|
|
|
field.
|
|
|
|
type: integer
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
TelemetryClientId:
|
|
|
|
description: >
|
|
|
|
Telemetry client ID.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TelemetryEnvironment:
|
|
|
|
description: >
|
|
|
|
The telemetry environment in JSON format.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TelemetryServerURL:
|
|
|
|
description: >
|
|
|
|
Telemetry server URL. Used to send main process crash pings directly from
|
|
|
|
the crashreporter client.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TelemetrySessionId:
|
|
|
|
description: >
|
|
|
|
Telemetry session ID.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TestKey:
|
|
|
|
description: >
|
|
|
|
Annotation used in tests.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TestUnicode:
|
|
|
|
description: >
|
|
|
|
Annotation used in tests.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TextureUsage:
|
|
|
|
description: >
|
|
|
|
Amount of memory in bytes consumed by textures.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
ThreadIdNameMapping:
|
|
|
|
description: >
|
|
|
|
List of thread names with their corresponding thread IDs.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
TotalPageFile:
|
|
|
|
description: >
|
|
|
|
Windows-only, current committed memory limit. This annotation is
|
|
|
|
populated with the contents of the MEMORYSTATUSEX's structure
|
|
|
|
ullTotalPageFile field.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
TotalPhysicalMemory:
|
|
|
|
description: >
|
|
|
|
Windows-only, amount of physical memory in bytes. This annotation is
|
|
|
|
populated with the contents of the MEMORYSTATUSEX's structure
|
|
|
|
ullTotalPhys field.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
TotalVirtualMemory:
|
|
|
|
description: >
|
|
|
|
Windows-only, size of the virtual address space. This annotation is
|
|
|
|
populated with the contents of the MEMORYSTATUSEX's structure
|
|
|
|
ullTotalVirtual field.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
UnknownNetAddrSocketFamily:
|
|
|
|
description: >
|
|
|
|
An unknown network address family was requested to Necko. The value is the
|
|
|
|
requested family number.
|
|
|
|
type: integer
|
|
|
|
|
|
|
|
UnmarshalActCtx:
|
|
|
|
description: >
|
|
|
|
Proxy stream unmarshalling current activation context.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
UnmarshalActCtxManifestPath:
|
|
|
|
description: >
|
|
|
|
Proxy stream unmarshalling current activation context manifest path.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
UptimeTS:
|
|
|
|
description: >
|
|
|
|
Uptime in seconds. This annotation uses a string instead of an integer
|
|
|
|
because it has a fractional component.
|
|
|
|
type: string
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
URL:
|
|
|
|
description: >
|
|
|
|
URL being loaded.
|
|
|
|
type: string
|
|
|
|
content: false
|
|
|
|
|
|
|
|
User32BeforeBlocklist:
|
|
|
|
description: >
|
|
|
|
Set to 1 if user32.dll was loaded before we could install the DLL blocklist.
|
|
|
|
type: boolean
|
|
|
|
ping: true
|
|
|
|
|
|
|
|
useragent_locale:
|
|
|
|
description: >
|
|
|
|
User-agent locale.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
Vendor:
|
|
|
|
description: >
|
|
|
|
Application vendor (e.g. Mozilla).
|
|
|
|
type: string
|
|
|
|
|
|
|
|
Version:
|
|
|
|
description: >
|
|
|
|
Product version.
|
|
|
|
type: string
|
|
|
|
|
|
|
|
Winsock_LSP:
|
|
|
|
description: >
|
|
|
|
Information on winsock LSPs injected in our networking stack.
|
|
|
|
type: string
|