svn commit: r270697 - projects/amd64_xen_pv/sys/amd64/xen
Cherry G. Mathew
cherry at FreeBSD.org
Wed Aug 27 08:05:58 UTC 2014
Author: cherry
Date: Wed Aug 27 08:05:57 2014
New Revision: 270697
URL: http://svnweb.freebsd.org/changeset/base/270697
Log:
Flag on stack frame that segment registers have been saved.
This now completes FreeBSD/Xen pv bringup for UP.
Next steps (open list):
- Optimise current call paths.
(exception.S, amortise across multiple hypercalls etc.)
- SMP
- vet exception.S (and others) for security.
- Bring codebase as close to native as possible, and merge
as much code as possible with native and pvhvm.
- Merge to -current
Approved by: gibbs(implicit)
Modified:
projects/amd64_xen_pv/sys/amd64/xen/exception.S
Modified: projects/amd64_xen_pv/sys/amd64/xen/exception.S
==============================================================================
--- projects/amd64_xen_pv/sys/amd64/xen/exception.S Wed Aug 27 06:13:44 2014 (r270696)
+++ projects/amd64_xen_pv/sys/amd64/xen/exception.S Wed Aug 27 08:05:57 2014 (r270697)
@@ -97,12 +97,16 @@
movq TF_R15(%rsp), %r15
/* Note: %fs/%gs are saved/restored by the hypervisor */
-/* Save generic data segment registers to the stack */
+/*
+ * Save generic data segment registers to the stack
+ * Indicate that segments have been saved.
+ */
#define SAVE_SEGMENT_REGS \
movw %es, TF_ES(%rsp) ; \
movw %ds, TF_DS(%rsp) ; \
movw %fs, TF_FS(%rsp) ; \
movw %gs, TF_FS(%rsp) ; \
+ movl $TF_HASSEGS,TF_FLAGS(%rsp) ; \
/* Restore generic data segment registers from the stack */
/* This macro overwrites some general registers */
More information about the svn-src-projects
mailing list