Date: Sun, 3 Mar 2002 21:07:23 -0800 (PST) From: Jake Burkholder <jake@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/sparc64/sparc64 vm_machdep.c Message-ID: <200203040507.g2457Nm52814@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
jake 2002/03/03 21:07:23 PST Modified files: sys/sparc64/sparc64 vm_machdep.c Log: Fix obscure problems with vfork where part of the parent's stack could be clobbered by the child. This is more complicated than usual because the window that could get clobbered is pushed in kernel mode, so a lot of registers would have to be saved in other registers in userland and we don't have enough. What we do have is space in the pcb to temporarily store user windows that were spilled in kernel mode, but could not be immediately stored to the user stack. So we copy in the parent's topmost window and save it in the pcb, and arrange for it to be copied back out when the child is done frobbing the stack. Reviewed by: tmm Revision Changes Path 1.21 +40 -8 src/sys/sparc64/sparc64/vm_machdep.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200203040507.g2457Nm52814>