diff options
author | aiju <devnull@localhost> | 2017-09-02 10:43:37 +0000 |
---|---|---|
committer | aiju <devnull@localhost> | 2017-09-02 10:43:37 +0000 |
commit | bd4513fe87360c790e2a96e00dacbf34c5f081cc (patch) | |
tree | cf448dfd9b882d15fa42ba0af5bcbfb076cfdea3 /sys | |
parent | 6ed716eab605e4b374e7d456cc6b3ed586c9f13b (diff) |
devvmx: call vmxshutdown from reboot() function manually
Diffstat (limited to 'sys')
-rw-r--r-- | sys/src/9/pc/devvmx.c | 4 | ||||
-rw-r--r-- | sys/src/9/pc/fns.h | 1 | ||||
-rw-r--r-- | sys/src/9/pc/main.c | 1 | ||||
-rw-r--r-- | sys/src/9/pc64/fns.h | 1 | ||||
-rw-r--r-- | sys/src/9/pc64/main.c | 1 |
5 files changed, 6 insertions, 2 deletions
diff --git a/sys/src/9/pc/devvmx.c b/sys/src/9/pc/devvmx.c index 0eeab1c41..447869a2e 100644 --- a/sys/src/9/pc/devvmx.c +++ b/sys/src/9/pc/devvmx.c @@ -1844,7 +1844,7 @@ vmxnew(void) return vmx; } -static void +void vmxshutdown(void) { int i; @@ -2203,7 +2203,7 @@ Dev vmxdevtab = { vmxreset, devinit, - vmxshutdown, + devshutdown, vmxattach, vmxwalk, vmxstat, diff --git a/sys/src/9/pc/fns.h b/sys/src/9/pc/fns.h index 83367a0a1..01d8fe36f 100644 --- a/sys/src/9/pc/fns.h +++ b/sys/src/9/pc/fns.h @@ -198,6 +198,7 @@ void vectortable(void); void* vmap(ulong, int); int vmapsync(ulong); void vmxprocrestore(Proc *); +void vmxshutdown(void); void vunmap(void*, int); void wbinvd(void); void writeconf(void); diff --git a/sys/src/9/pc/main.c b/sys/src/9/pc/main.c index c5386c43d..824259e3a 100644 --- a/sys/src/9/pc/main.c +++ b/sys/src/9/pc/main.c @@ -735,6 +735,7 @@ reboot(void *entry, void *code, ulong size) ulong *pdb; writeconf(); + vmxshutdown(); /* * the boot processor is cpu0. execute this function on it diff --git a/sys/src/9/pc64/fns.h b/sys/src/9/pc64/fns.h index 57054d599..44613d2b2 100644 --- a/sys/src/9/pc64/fns.h +++ b/sys/src/9/pc64/fns.h @@ -190,6 +190,7 @@ void upafree(uintptr, int); void upareserve(uintptr, int); void vectortable(void); void vmxprocrestore(Proc *); +void vmxshutdown(void); void* vmap(uintptr, int); void vunmap(void*, int); void wbinvd(void); diff --git a/sys/src/9/pc64/main.c b/sys/src/9/pc64/main.c index c3ac11383..48e45a0d1 100644 --- a/sys/src/9/pc64/main.c +++ b/sys/src/9/pc64/main.c @@ -350,6 +350,7 @@ reboot(void *entry, void *code, ulong size) void (*f)(uintptr, uintptr, ulong); writeconf(); + vmxshutdown(); /* * the boot processor is cpu0. execute this function on it |