Commit 8c00682
QemuQ35Pkg: Disable paging at SMM init entry and re-enable once it is done.
System would hang in debug builds on attempting SmmRelocation
from QemuQ35Pkg's PlatformPei.
INFO - PlatformPei: OnMpServices2Available
INFO - SmmRelocationInit Start
INFO - SmmRelocationInit - SmmRelocationSize: 0x0000A000
INFO - SmmRelocationInit - SmmRelocationStart: 0x7F000000
INFO - SmmRelocationInit - SmmStackSize: 0x00001000
INFO - SmmRelocationInit - SmmStacks: 0x7EAF6000
Paging was enabled, and as best we can tell, when
attempting to init the AP's, a page fault would be
triggered and hang the system.
Follow the MpInitLib's implementation of disabling
Paging during the Ap Smm relocation to prevent
triggering of page faults and hanging the
system.1 parent 28684b0 commit 8c00682
File tree
2 files changed
+13
-7
lines changed- Platforms/QemuQ35Pkg/Library/SmmRelocationLib
- Ia32
2 files changed
+13
-7
lines changedLines changed: 11 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
94 | 94 | | |
95 | 95 | | |
96 | 96 | | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
97 | 101 | | |
98 | 102 | | |
99 | 103 | | |
| |||
106 | 110 | | |
107 | 111 | | |
108 | 112 | | |
109 | | - | |
110 | | - | |
111 | | - | |
112 | | - | |
113 | | - | |
114 | | - | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
115 | 117 | | |
116 | | - | |
117 | 118 | | |
118 | 119 | | |
119 | 120 | | |
| |||
125 | 126 | | |
126 | 127 | | |
127 | 128 | | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
128 | 132 | | |
129 | 133 | | |
130 | 134 | | |
| |||
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
206 | 206 | | |
207 | 207 | | |
208 | 208 | | |
| 209 | + | |
| 210 | + | |
209 | 211 | | |
210 | 212 | | |
211 | 213 | | |
| |||
0 commit comments