Page MenuHomeFreeBSD

D47694.id146790.diff
No OneTemporary

D47694.id146790.diff

diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c
--- a/sys/amd64/amd64/trap.c
+++ b/sys/amd64/amd64/trap.c
@@ -606,6 +606,16 @@
if (kdb_trap(type, dr6, frame))
return;
#endif
+ /*
+ * Most likely, EFI RT hitting INT3.
+ */
+ if ((td->td_pflags & (TDP_NOFAULTING |
+ TDP_RESETSPUR)) == (TDP_NOFAULTING |
+ TDP_RESETSPUR) &&
+ td->td_pcb->pcb_onfault != NULL) {
+ frame->tf_rip = (long)curpcb->pcb_onfault;
+ return;
+ }
break;
case T_NMI:

File Metadata

Mime Type
text/plain
Expires
Thu, May 1, 1:09 PM (11 h, 50 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17882004
Default Alt Text
D47694.id146790.diff (506 B)

Event Timeline