blob: 25474857c9ab1f1b5b435e64d466315bb8d072a1 [file] [log] [blame]
description: >
Implement this to add system dump management.
System dumps are dump of the host memory and hardware states generated
during a failure in the host firmware. This can be a huge dump stored in the
host memory, the BMC doesnt store this dump but stream this dump to an
external client based on the offload request. Apart from system generated
system dump, users can also request for this kind of dump.
properties:
- name: SourceDumpId
type: uint32
description: >
The dump id provided by the source of the dump. There are dumps which
get generated outside the BMC, like a system dump which gets generated
and stored in the host memory. All dumps will have a unique id but
when communicating to the source of the dump the SourceDumpId will be
used.
- name: Token
type: uint32
description: >
A token exchanged with an external firmware subsystem when creating a
dump outside of the BMC. This token can be used to identify the dump
entry once the collection is completed.
- name: SystemImpact
type: enum [self.SystemImpact]
default: Disruptive
description: >
System dumps can be broadly classified into two types based on their
impact on the system state. The first type, known as a 'disruptive'
dump, alters the system state. This kind of dump is typically
generated during a host crash, although it can also be manually
requested by a user. Despite its disruptive nature, this dump is able
to collect a lot of data, making it particularly useful for diagnosing
system crashes. The second type is a 'non-disruptive' dump. As the
name suggests, this dump is created without causing any disruption to
the system state.
- name: UserChallenge
type: string
description: >
On some host implementations a user-challenge need to be provided by
the user and it flows through BMC and up to the host as a part of the
dump request. Non-disruptive dumps consume significant host resources
and involve the collection of host memory data. To safeguard these
operations and ensure they are initiated only by authorized personnel,
the provided passphrase is employed. In some systems, an Access
Control List (ACL) file, provided through the Platform Level Data
Model (PLDM), is used. The host validates the provided user-challenge
against this ACL. If the user-challenge doesn't match any entry in the
ACL, the host will reject the dump request. This field is needed so
the host can check that only authorized users are allowed to perform
certain dump operations.
enumerations:
- name: SystemImpact
description: Indicate the type of system dump
values:
- name: Disruptive
description: >
The system state will change with this type of dump collection
- name: NonDisruptive
description: >
The system state will not change with the collection