diff options
| author | Justin T. Gibbs <gibbs@FreeBSD.org> | 2013-08-29 19:52:18 +0000 |
|---|---|---|
| committer | Justin T. Gibbs <gibbs@FreeBSD.org> | 2013-08-29 19:52:18 +0000 |
| commit | 76acc41fb7c740bc49e2638529b8cc750ff281d5 (patch) | |
| tree | 645c89eddfbfb23b9b30e45b882f5beb39a4a267 /sys/dev/xen/control | |
| parent | ea4447500dd8a7e85fd10a9e6aa62738ff634976 (diff) | |
Notes
Diffstat (limited to 'sys/dev/xen/control')
| -rw-r--r-- | sys/dev/xen/control/control.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/sys/dev/xen/control/control.c b/sys/dev/xen/control/control.c index 18f42bbe653b..649f28160407 100644 --- a/sys/dev/xen/control/control.c +++ b/sys/dev/xen/control/control.c @@ -128,12 +128,13 @@ __FBSDID("$FreeBSD$"); #include <geom/geom.h> #include <machine/_inttypes.h> -#include <machine/xen/xen-os.h> +#include <machine/intr_machdep.h> #include <vm/vm.h> #include <vm/vm_extern.h> #include <vm/vm_kern.h> +#include <xen/xen-os.h> #include <xen/blkif.h> #include <xen/evtchn.h> #include <xen/gnttab.h> @@ -144,6 +145,9 @@ __FBSDID("$FreeBSD$"); #include <xen/xenbus/xenbusvar.h> +#include <machine/xen/xenvar.h> +#include <machine/xen/xenfunc.h> + /*--------------------------- Forward Declarations --------------------------*/ /** Function signature for shutdown event handlers. */ typedef void (xctrl_shutdown_handler_t)(void); @@ -242,6 +246,7 @@ xctrl_suspend() xencons_suspend(); gnttab_suspend(); + intr_suspend(); max_pfn = HYPERVISOR_shared_info->arch.max_pfn; @@ -282,7 +287,7 @@ xctrl_suspend() HYPERVISOR_shared_info->arch.max_pfn = max_pfn; gnttab_resume(); - irq_resume(); + intr_resume(); local_irq_enable(); xencons_resume(); @@ -352,13 +357,11 @@ xctrl_suspend() * Prevent any races with evtchn_interrupt() handler. */ disable_intr(); - irq_suspend(); + intr_suspend(); suspend_cancelled = HYPERVISOR_suspend(0); - if (suspend_cancelled) - irq_resume(); - else - xenpci_resume(); + + intr_resume(); /* * Re-enable interrupts and put the scheduler back to normal. |
