blob: 25474857c9ab1f1b5b435e64d466315bb8d072a1 [file] [log] [blame]
Dhruvaraj Subhashchandran5006cdf2020-01-20 04:08:10 -06001description: >
2 Implement this to add system dump management.
3
Patrick Williamsa1347412022-12-06 10:56:22 -06004 System dumps are dump of the host memory and hardware states generated
5 during a failure in the host firmware. This can be a huge dump stored in the
6 host memory, the BMC doesnt store this dump but stream this dump to an
7 external client based on the offload request. Apart from system generated
8 system dump, users can also request for this kind of dump.
Dhruvaraj Subhashchandran5006cdf2020-01-20 04:08:10 -06009
10properties:
11 - name: SourceDumpId
12 type: uint32
13 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060014 The dump id provided by the source of the dump. There are dumps which
15 get generated outside the BMC, like a system dump which gets generated
16 and stored in the host memory. All dumps will have a unique id but
17 when communicating to the source of the dump the SourceDumpId will be
18 used.
Dhruvaraj Subhashchandran27afd1f2023-07-08 13:07:21 -050019 - name: Token
20 type: uint32
21 description: >
22 A token exchanged with an external firmware subsystem when creating a
23 dump outside of the BMC. This token can be used to identify the dump
24 entry once the collection is completed.
Dhruvaraj Subhashchandran2117dea2023-07-08 13:28:06 -050025 - name: SystemImpact
26 type: enum [self.SystemImpact]
27 default: Disruptive
28 description: >
29 System dumps can be broadly classified into two types based on their
30 impact on the system state. The first type, known as a 'disruptive'
31 dump, alters the system state. This kind of dump is typically
32 generated during a host crash, although it can also be manually
33 requested by a user. Despite its disruptive nature, this dump is able
34 to collect a lot of data, making it particularly useful for diagnosing
35 system crashes. The second type is a 'non-disruptive' dump. As the
36 name suggests, this dump is created without causing any disruption to
37 the system state.
Dhruvaraj Subhashchandrancb01cd42023-07-10 02:20:18 -050038 - name: UserChallenge
39 type: string
40 description: >
41 On some host implementations a user-challenge need to be provided by
42 the user and it flows through BMC and up to the host as a part of the
43 dump request. Non-disruptive dumps consume significant host resources
44 and involve the collection of host memory data. To safeguard these
45 operations and ensure they are initiated only by authorized personnel,
46 the provided passphrase is employed. In some systems, an Access
47 Control List (ACL) file, provided through the Platform Level Data
48 Model (PLDM), is used. The host validates the provided user-challenge
49 against this ACL. If the user-challenge doesn't match any entry in the
50 ACL, the host will reject the dump request. This field is needed so
51 the host can check that only authorized users are allowed to perform
52 certain dump operations.
Dhruvaraj Subhashchandran2117dea2023-07-08 13:28:06 -050053
54enumerations:
55 - name: SystemImpact
56 description: Indicate the type of system dump
57 values:
58 - name: Disruptive
59 description: >
60 The system state will change with this type of dump collection
61 - name: NonDisruptive
62 description: >
63 The system state will not change with the collection