elf_loader: skip SIF teardown for HDD-backed embedded loader#403
Open
NathanNeurotic wants to merge 1 commit intoBETA-11-playfrom
Open
elf_loader: skip SIF teardown for HDD-backed embedded loader#403NathanNeurotic wants to merge 1 commit intoBETA-11-playfrom
NathanNeurotic wants to merge 1 commit intoBETA-11-playfrom
Conversation
Fix D-10 black-screen regression. The parent embedded loader unconditionally shuts down the SIF subsystem before handing control to the child loader, which breaks HDD-backed launches because the child loader depends on the SIF layer. Add a check in ExecuteViaEmbeddedLoader() to skip SifExitIopHeap(), SifExitRpc(), and SifExitCmd() when launching from an HDD path (using is_hdd_backed_exec_path). Non-HDD paths continue to cleanup the SIF as before.
There was a problem hiding this comment.
Code Review
This pull request modifies the ExecuteViaEmbeddedLoader function in src/elf_loader/src/elf.c to conditionally skip SIF and RPC cleanup when the execution path is HDD-backed. Feedback was provided regarding incorrect indentation within the newly added conditional block and the subsequent FlushCache call, which should be corrected to maintain the file's code style.
Comment on lines
+380
to
+385
| if (!is_hdd_backed_exec_path(partition_context)) { | ||
| SifExitIopHeap(); | ||
| SifExitRpc(); | ||
| SifExitCmd(); | ||
| FlushCache(0); | ||
| } | ||
| FlushCache(0); |
There was a problem hiding this comment.
The indentation of the code within the if block and the following FlushCache call is incorrect. It should follow the existing tab-based indentation style of the file to maintain readability.
if (!is_hdd_backed_exec_path(partition_context)) {
SifExitIopHeap();
SifExitRpc();
SifExitCmd();
}
FlushCache(0);
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix D-10 black-screen regression. The parent embedded loader unconditionally shuts down the SIF subsystem before handing control to the child loader, which breaks HDD-backed launches because the child loader depends on the SIF layer. Add a check in ExecuteViaEmbeddedLoader() to skip SifExitIopHeap(), SifExitRpc(), and SifExitCmd() when launching from an HDD path (using is_hdd_backed_exec_path). Non-HDD paths continue to cleanup the SIF as before.
Pull Request
Summary
Provide a clear and concise description of the change.
Type of Change
Select all that apply:
Related Issues
Link related issues using:
Closes #
Fixes #
Related to #
Scope
If this PR modifies multiple subsystems, explain why that is necessary:
Technical Details
Describe:
If modifying core logic, explain potential side effects.
Testing
Describe how you tested this change:
Breaking Changes
If this is a breaking change, describe:
If not applicable, state: "No breaking changes."
Security Considerations
Does this change affect:
If yes, explain impact.
Checklist
Additional Notes
Provide any additional context here.