-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature]: Provide a hook API when stack overflow occur with stack protection enabled #503
Comments
This issue has been automatically marked as stale because it has not had activity in 45 days. It will be closed if no further activity occurs within 7 days. Thank you for your contributions. |
This issue has been automatically been closed because it did not have any activity in 45 days and no follow up within 7 days after being marked stale. Thank you for your contributions. |
@TaylorBeebe, sorry, I did not notice the issue would be closed automatically, may I know if there is any plan for this feature request? can we re-open this issue? |
This feature request is in progress -- reopened the issue |
This issue has been automatically marked as stale because it has not had activity in 45 days. It will be closed if no further activity occurs within 7 days. Thank you for your contributions. |
@MarcChen46 |
PR is out of draft status. |
Feature completed |
Feature Overview
[Background]
Currently we have EFI_CPU_ARCH_PROTOCOL.RegisterInterruptHandler() for DXE_DRIVER and EFI_SMM_CPU_SERVICE_PROTOCOL.RegisterExceptionHandler() for DXE_SMM_DRIVER to register EXCEPT_IA32_STACK_FAULT type that can perform some customized actions when stack overflow occurred with stack protection enabled, but it has a dependency that the customized code can only get performed after these protocols get installed, it is the gap we want to resolve.
[Feature request]
When stack overflow occurred in any protected modules types(ex: DXE_DRIVER, DXE_CORE, SMM_CORE, DXE_SMM_DRIVER...), it should provide a hook API or mechanism that allow platform to add customized code (ex: report the error to somewhere as telemetry), the customized should not have dependency on protocols.
Solution Overview
Below is just a proposal for reference, it is ok to have any other kind of methods to achieve it.
[Proposal]
Implement a MU version of BaseStackCheckLib instance and implement below code in BaseStackCheckMsft.c, use MSFT VS compiler to compile this C code that has an customized hook API inside __report_gsfailure.
Alternatives Considered
No response
Urgency
Low
Are you going to implement the feature request?
Someone else needs to implement the feature
Do you need maintainer feedback?
Maintainer feedback requested
Anything else?
No response
The text was updated successfully, but these errors were encountered: