The branch main has been updated by mhorne:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=1fd001db9c330f133708f3c04c8852f8b07cfed9

commit 1fd001db9c330f133708f3c04c8852f8b07cfed9
Author:     Mitchell Horne <[email protected]>
AuthorDate: 2021-04-07 19:23:46 +0000
Commit:     Mitchell Horne <[email protected]>
CommitDate: 2021-04-08 12:41:41 +0000

    arm64: clear debug register state on fork
    
    Following the analogous change for amd64 and i386 in 8223717ce62c,
    ensure that new processes start with these registers inactive.
    
    PR:             254661
    Reported by:    Michał Górny
    Reviewed by:    kib, emaste
    MFC after:      3 days
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D29630
---
 sys/arm64/arm64/vm_machdep.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys/arm64/arm64/vm_machdep.c b/sys/arm64/arm64/vm_machdep.c
index c37f1d849359..a7b02e98959f 100644
--- a/sys/arm64/arm64/vm_machdep.c
+++ b/sys/arm64/arm64/vm_machdep.c
@@ -91,6 +91,9 @@ cpu_fork(struct thread *td1, struct proc *p2, struct thread 
*td2, int flags)
        td2->td_pcb = pcb2;
        bcopy(td1->td_pcb, pcb2, sizeof(*pcb2));
 
+       /* Clear the debug register state. */
+       bzero(&pcb2->pcb_dbg_regs, sizeof(pcb2->pcb_dbg_regs));
+
        tf = (struct trapframe *)STACKALIGN((struct trapframe *)pcb2 - 1);
        bcopy(td1->td_frame, tf, sizeof(*tf));
        tf->tf_x[0] = 0;
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to