Re: [PATCH v2 1/2] EDK2 Code First: PI Specification: New error codes of Host Software class


Michael D Kinney
 

The spec and code changes need to be put together in the edk2-staging repository
following the process here:

https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Code-First-Process

Once we have Reviewed-by from community for the spec and code changes and everything
is checked into the edk2-staging repository, platforms can test the changes and provide
feedback. The amount of testing required depends on the complexity of the change.
Once testing requirements have been met, it is ready for UEFI Forum review of the
content in edk2-staging.


Mike

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Kun Qin
Sent: Tuesday, January 18, 2022 11:00 AM
To: devel@edk2.groups.io; Kinney, Michael D <michael.d.kinney@...>
Cc: Andrew Fish <afish@...>; Leif Lindholm <leif@...>; Gao, Liming <gaoliming@...>; Liu, Zhiguang
<zhiguang.liu@...>
Subject: Re: [edk2-devel] [PATCH v2 1/2] EDK2 Code First: PI Specification: New error codes of Host Software class

Hi Mike,

Do you have further feedback regarding this updated change? If not,
could you please shed some light on how to proceed on this code first PI
spec change request?

Any help is appreciated.

Regards,
Kun

On 01/07/2022 17:32, Kun Qin via groups.io wrote:
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3794

This change includes specification update markdown file that describes
the proposed PI Specification v1.7 Errata A in detail and potential
impact to the existing codebase.

Cc: Andrew Fish <afish@...>
Cc: Leif Lindholm <leif@...>
Cc: Michael D Kinney <michael.d.kinney@...>
Cc: Liming Gao <gaoliming@...>
Cc: Zhiguang Liu <zhiguang.liu@...>

Signed-off-by: Kun Qin <kuqin12@...>
---

Notes:
v2:
- Removed "RELEASE_ASSERT" definition
- Removed reference to EDK2 based memory type info [Mike]

CodeFirst/BZ3794-SpecChange.md | 55 ++++++++++++++++++++
1 file changed, 55 insertions(+)

diff --git a/CodeFirst/BZ3794-SpecChange.md b/CodeFirst/BZ3794-SpecChange.md
new file mode 100644
index 000000000000..61a0be798d7f
--- /dev/null
+++ b/CodeFirst/BZ3794-SpecChange.md
@@ -0,0 +1,55 @@
+# Title: Introduction of `EFI_SW_EC_FRAGMENTED_MEMORY_MAP` Status Code
+
+## Status: Draft
+
+## Document: UEFI Platform Initialization Specification Version 1.7 Errata A
+
+## License
+
+SPDX-License-Identifier: CC-BY-4.0
+
+## Submitter: [TianoCore Community](https://www.tianocore.org)
+
+## Summary of the change
+
+Add `EFI_SW_EC_FRAGMENTED_MEMORY_MAP` into Status Codes definition.
+
+## Benefits of the change
+
+Current Status Codes covered various [software class error code
definitions](https://github.com/tianocore/edk2/blob/master/MdePkg/Include/Pi/PiStatusCode.h).
+
+However, fragmented memory map from boot to boot would fail to meet certain OS ACPI requirements (i.e. S4 resume boot requires
consistent memory maps) and trigger system reboots. Yet the corresponding case was not covered by the already defined status
codes.
+
+The unexpected system reboots above could indicate decay of system health and reporting of such generic events would provide
helpful information to OEMs to investigate/prevent system failures in general.
+
+The request of this change intends to expand definitions of `EFI_SW_EC_**` under Status Codes to cover more unexpected system
reboot events, which could improve Status Code futility and readability.
+
+## Impact of the change
+
+Occupy a new macro definitions of Error Codes under Software class Status Codes.
+
+## Detailed description of the change [normative updates]
+
+### Specification Changes
+
+1. In PI Specification v1.7 Errata A: Vol. 3, Table 3-61: Error Code Operations: Host Software Class, add one new rows below
`EFI_SW_EC_FV_CORRUPTED` definition:
+
+ | Operation | Description | Extended Data |
+ | --- | --- | --- |
+ | EFI_SW_EC_FRAGMENTED_MEMORY_MAP | System will reboot due to fragmented memory maps | None |
+
+1. In PI Specification v1.7 Errata A: Vol. 3, Table 3-61: Error Code Operations: Host Software Class, replace the row of
`0x0014-0x00FF` to:
+
+ | Operation | Description | Extended Data |
+ | --- | --- | --- |
+ | 0x0015-0x00FF | Reserved for future use by this specification for Host Software class error codes. | None |
+
+1. In PI Specification v1.7 Errata A: Vol. 3, Section 6.7.4.3 Error Code Definitions: Prototype, add one new definitions below
`EFI_SW_EC_FV_CORRUPTED` definition:
+
+ ```c
+ #define EFI_SW_EC_FRAGMENTED_MEMORY_MAP 0x00000014
+ ```
+
+### Code Changes
+
+1. Add macro definitions in `MdePkg/Include/Pi/PiStatusCode.h` to match new specification.


Join devel@edk2.groups.io to automatically receive all group messages.