Home | History | Annotate | Download | only in include
History log of /src/sys/arch/xen/include/shutdown_xenbus.h
RevisionDateAuthorComments
 1.5  28-Jul-2012  matt Fix some -fno-common fallout.
 1.4  20-Sep-2011  jym branches: 1.4.2;
Merge jym-xensuspend branch in -current. ok bouyer@.

Goal: save/restore support in NetBSD domUs, for i386, i386 PAE and amd64.

Executive summary:
- split all Xen drivers (xenbus(4), grant tables, xbd(4), xennet(4))
in two parts: suspend and resume, and hook them to pmf(9).
- modify pmap so that Xen hypervisor does not cry out loud in case
it finds "unexpected" recursive memory mappings
- provide a sysctl(7), machdep.xen.suspend, to command suspend from
userland via powerd(8). Note: a suspend can only be handled correctly
when dom0 requested it, so provide a mechanism that will prevent
kernel to blindly validate user's commands

The code is still in experimental state, use at your own risk: restore
can corrupt backend communications rings; this can completely thrash
dom0 as it will loop at a high interrupt level trying to honor
all domU requests.

XXX PAE suspend does not work in amd64 currently, due to (yet again!)
page validation issues with hypervisor. Will fix.

XXX secondary CPUs are not suspended, I will write the handlers
in sync with cherry's Xen MP work.

Tested under i386 and amd64, bear in mind ring corruption though.

No build break expected, GENERICs and XEN* kernels should be fine.
./build.sh distribution still running. In any case: sorry if it does
break for you, contact me directly for reports.
 1.3  17-Oct-2007  garbled branches: 1.3.34;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.2  23-Sep-2007  bouyer Add NetBSD RCS Id.
 1.1  11-Aug-2006  yamt branches: 1.1.2; 1.1.6; 1.1.8; 1.1.10; 1.1.16; 1.1.22; 1.1.30; 1.1.40; 1.1.42;
"xm shutdown" support for xen3. ok'ed by Manuel Bouyer.
 1.1.42.1  06-Nov-2007  matt sync with HEAD
 1.1.40.1  02-Oct-2007  joerg Sync with HEAD.
 1.1.30.1  03-Oct-2007  garbled Sync with HEAD
 1.1.22.1  09-Oct-2007  ad Sync with head.
 1.1.16.3  27-Oct-2007  yamt sync with head.
 1.1.16.2  30-Dec-2006  yamt sync with head.
 1.1.16.1  11-Aug-2006  yamt file shutdown_xenbus.h was added on branch yamt-lazymbuf on 2006-12-30 20:47:25 +0000
 1.1.10.2  09-Sep-2006  rpaulo sync with head
 1.1.10.1  11-Aug-2006  rpaulo file shutdown_xenbus.h was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:44:56 +0000
 1.1.8.1  08-Sep-2006  rpaulo Pull up following revision(s) (requested by jld in ticket #129):
sys/arch/xen/conf/files.xen: revision 1.46
sys/arch/xen/xen/hypervisor.c: revision 1.26
sys/arch/xen/xen/shutdown_xenbus.c: revision 1.1
sys/arch/xen/xenbus/xenbus_probe.c: revision 1.13
sys/arch/xen/include/shutdown_xenbus.h: revision 1.1
"xm shutdown" support for xen3. ok'ed by Manuel Bouyer.
 1.1.6.2  08-Sep-2006  ghen Pull up following revision(s) (requested by jld in ticket #1499):
sys/arch/xen/conf/files.xen: revision 1.46
sys/arch/xen/xen/hypervisor.c: revision 1.26
sys/arch/xen/xen/shutdown_xenbus.c: revision 1.1
sys/arch/xen/xenbus/xenbus_probe.c: revision 1.13
sys/arch/xen/include/shutdown_xenbus.h: revision 1.1
"xm shutdown" support for xen3. ok'ed by Manuel Bouyer.
 1.1.6.1  11-Aug-2006  ghen file shutdown_xenbus.h was added on branch netbsd-3 on 2006-09-08 10:27:36 +0000
 1.1.2.2  11-Aug-2006  yamt sync with head
 1.1.2.1  11-Aug-2006  yamt file shutdown_xenbus.h was added on branch yamt-pdpolicy on 2006-08-11 15:43:16 +0000
 1.3.34.1  27-Aug-2011  jym Rename the functions for suspend to reflect that Xen does not hijack
the ACPI "sleepstate" sysctl(7) node anymore.

Add a boolean value to mark that the save/suspend operation has been
notified by dom0, so as to avoid possible errors where admin would like
to schedule the domain for sleep without dom0 being prepared for that. Fail
with EAGAIN in this case.

Sprinkle some KNF.
 1.4.2.1  30-Oct-2012  yamt sync with head

RSS XML Feed