diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 14:29:10 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 14:29:10 +0000 |
commit | 2aa4a82499d4becd2284cdb482213d541b8804dd (patch) | |
tree | b80bf8bf13c3766139fbacc530efd0dd9d54394c /toolkit/crashreporter/CrashAnnotations.yaml | |
parent | Initial commit. (diff) | |
download | firefox-upstream.tar.xz firefox-upstream.zip |
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/crashreporter/CrashAnnotations.yaml')
-rw-r--r-- | toolkit/crashreporter/CrashAnnotations.yaml | 979 |
1 files changed, 979 insertions, 0 deletions
diff --git a/toolkit/crashreporter/CrashAnnotations.yaml b/toolkit/crashreporter/CrashAnnotations.yaml new file mode 100644 index 0000000000..399fb4704a --- /dev/null +++ b/toolkit/crashreporter/CrashAnnotations.yaml @@ -0,0 +1,979 @@ +# 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 + +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 + +AdapterDriverVendor: + description: > + Graphics adapter driver vendor. + 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 + +ApplicationBuildID: + description: > + Product application's build ID. + 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: > + Available commit-space in bytes. + - Under Windows, computed from the PERFORMANCE_INFORMATION structure by substracting + the CommitTotal field from the CommitLimit field. + - Under Linux, computed from /proc/meminfo's CommitLimit - Committed_AS. Note that + the kernel is not guaranteed to enforce that CommittedLimit >= Committed_AS. If + Committed_AS > CommittedLimit, this value is set to 0. + - Not available on other platforms. + type: string + ping: true + +AvailablePhysicalMemory: + description: > + Amount of free physical memory in bytes. + - Under Windows, populated with the contents of the MEMORYSTATUSEX's structure + ullAvailPhys field. + - Under macOS, populated with vm_statistics64_data_t::free_count. + - Under Linux, populated with /proc/meminfo's MemFree. + - Not available on other platforms. + type: string + ping: true + +AvailableSwapMemory: + description: > + Amount of free swap space in bytes. + - Under macOS, populated with the contents of + sysctl "vm.swapusage" :: xsu_avail. + - Under Linux, populated with /proc/meminfo's SwapFree. + - Not available on other platforms. + type: string + ping: true + +AvailableVirtualMemory: + description: > + Amount of free virtual memory in bytes + - Under Windows, populated with the contents of the MEMORYSTATUSEX's structure ullAvailVirtual field. + - Under Linux, populated with /proc/meminfo's MemAvailable. + - Not available on other platforms. + - For macOS, see AvailableSwapMemory, AvailablePhysicalMemory and PurgeablePhysicalMemory. + 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 + +Breadcrumbs: + description: > + Trail of events that occurred before a report. this will consist of multiple breadcrumbs with + timestamp, message, category, level, type and data in JSON format. + type: string + +BreakpadReserveAddress: + description: > + Address of the buffer reserved by Breakpad. + type: string + +BreakpadReserveSize: + description: > + Size of the buffer reserved by Breakpad. + type: string + +Bug_1086977: + description: > + Mac-only annotation which should be present only if Firefox crashed when + loading a facebook plugin. + type: string + +Bug_1541161: + description: > + Dump JS Stack in case loadinfo is null within NewChannelFromURIWithProxyFlagsInternal(). + 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 + +DesktopEnvironment: + description: > + Desktop environment used on Linux, e.g. GNOME, KDE, XFCE, etc. + type: string + +DeviceResetReason: + description: > + Reason why a DirectX device has been reset, Windows only. + type: string + +DOMFissionEnabled: + description: > + Set to 1 when DOM fission is enabled, and subframes are potentially loaded + in a separate process. + type: boolean + ping: true + +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 + +ExperimentalFeatures: + description: > + Comma-separated list of enabled experimental features from about:preferences#experimental. + type: string + ping: true + +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 + +FramePoisonSize: + description: > + Size of the memory area used for the poison value we place in freed + memory. + type: integer + +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 + +GraphicsCompileShader: + description: > + Name of the shader we are in the process of compiling, if applicable. See + file names in gfx/wr/webrender/res/* for the possible values. + 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 + +PHCKind: + description: > + The allocation kind, if the crash involved a bad access of a special PHC + allocation. + type: string + +PHCBaseAddress: + description: > + The allocation's base address, if the crash involved a bad access of a + special PHC allocation. Encoded as a decimal address. + type: string + +PHCUsableSize: + description: > + The allocation's usable size, if the crash involved a bad access of a + special PHC allocation. + # A 32-bit integer is enough because the maximum usable size of a special PHC + # allocation is far less than 2 GiB. + type: integer + +PHCAllocStack: + description: > + The allocation's allocation stack trace, if the crash involved a bad access + of a special PHC allocation. Encoded as a comma-separated list of decimal + addresses. + type: string + +PHCFreeStack: + description: > + The allocation's free stack trace, if the crash involved a bad access + of a special PHC allocation. Encoded as a comma-separated list of decimal + addresses. + type: string + +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 + +IsWayland: + description: > + If true then the Wayland windowing system was in use. + type: boolean + +IsWaylandDRM: + description: > + If true then the Wayland DRM backend was in use. + type: boolean + +IsWebRenderResourcePathOverridden: + description: > + If true then the WebRender resources (i.e. shaders) are loaded from a user specified path. + type: boolean + +JavaException: + description: > + JSON structured Java stack trace, only present on Firefox for Android if we encounter an + uncaught Java exception. + type: string + +JavaStackTrace: + description: > + Java stack trace, only present on Firefox for Android if we encounter an + uncaught Java exception. + type: string + +JSActorMessage: + description: > + If an actor is currently treating a message, this is the name of the message. + Otherwise, empty. + type: string + +JSActorName: + description: > + If an actor is currently treating a message, this is the name of the actor. + Otherwise, empty. + 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 + +LauncherProcessState: + description: > + Launcher process enabled state. The integer value of this annotation must + match with one of the values in the + mozilla::LauncherRegistryInfo::EnableState enum + type: integer + +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 + +MainThreadRunnableName: + description: > + Name of the currently executing nsIRunnable on the main thread. + type: string + ping: true + +MarshalActCtxManifestPath: + description: > + Proxy stream marshalling current activation context manifest path. + type: string + +MemoryErrorCorrection: + description: > + Windows only, type of error correction used by system memory. See + documentation for MemoryErrorCorrection property of + Win32_PhysicalMemoryArray WMI class. + type: string + ping: true + +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 + +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, the possible values are defined in + GeckoProcessTypes.h. + 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 + +PurgeablePhysicalMemory: + description: > + macOS only. Amount of physical memory currently allocated but which may + be deallocated by the system in case of memory pressure. Populated from + vm_statistics64_data_t::purgeable_count * vm_page_size. + type: string + ping: true + +QuotaManagerShutdownTimeout: + description: > + This annotation is present if the quota manager shutdown (resp. the shutdown + of the quota manager clients) was not finished in time and the browser was + crashed instead of waiting for the shutdown to finish. The status of objects + which were blocking completion of the shutdown when reaching the timeout + is contained in the annotation. + + In the case of IndexedDB, objects are divided into three groups: + FactoryOperations, LiveDatabases and DatabaseMaintenances. + + In the case of LocalStorage, objects are divided into three groups: + PrepareDatastoreOperations, Datastores and LiveDatabases. + + In the case of Cache API, objects are in one group only: + Managers. + + Each group is reported separately and contains the number of objects in the + group and the status of individual objects in the group (duplicate entries + are removed): + "GroupName: N (objectStatus1, objectStatus2, ...)" where N is the number of + objects in the group. + + The status of individual objects is constructed by taking selected object + properties. Properties which contain origin strings are anonymized. + + In addition, intermediate steps are recorded for change events after shutdown + started. These include the time difference and the type of object. + type: string + ping: true + +RDDProcessStatus: + description: > + Status of the RDD process, can be set to "Running" or "Destroyed" + type: string + +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 + +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 + ping: true + +StartupTime: + description: > + The time when Firefox was launched expressed in seconds since the Epoch. + type: integer + +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 + +SubmittedFromInfobar: + description: > + This annotation is set to 1 when the crash report has been manually + submitted from Firefox info-bar or has been automatically submitted after + the user opted-in to auto-submission. + type: boolean + +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: > + Maximum amount of memory that can be committed without extending the swap/page file. + - Under Windows, populated with the contents of the PERFORMANCE_INFORMATION's + structure CommitLimit field. + - Under Linux, populated with /proc/meminfo MemTotal + SwapTotal. The swap file + typically cannot be extended, so that's a hard limit. + - Not available on other systems. + type: string + ping: true + +TotalPhysicalMemory: + description: > + Amount of physical memory in bytes. + - Under Windows, populated with the contents of the MEMORYSTATUSEX's structure + ullTotalPhys field. + - Under macOS, populated with sysctl "hw.memsize". + - Under Linux, populated with /proc/meminfo's "MemTotal". + - Not available on other systems. + type: string + ping: true + +TotalVirtualMemory: + description: > + Size of the virtual address space. + - Under Windows, populated with the contents of the MEMORYSTATUSEX's structure + ullTotalVirtual field. + - Not available on other platforms. + 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 + +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 + +VRProcessStatus: + description: > + Status of the VR process, can be set to "Running" or "Destroyed" + type: string + +Winsock_LSP: + description: > + Information on winsock LSPs injected in our networking stack. + type: string |