bhyve: Simplify spinup_ap_realmode slightly.
There is no reason to modify the passed in rip variable. Reviewed by: corvink, markj Differential Revision: https://reviews.freebsd.org/D37647
This commit is contained in:
parent
7224a96a55
commit
e53fcff184
@ -45,21 +45,20 @@ __FBSDID("$FreeBSD$");
|
||||
#include "spinup_ap.h"
|
||||
|
||||
static void
|
||||
spinup_ap_realmode(struct vmctx *ctx, int newcpu, uint64_t *rip)
|
||||
spinup_ap_realmode(struct vmctx *ctx, int newcpu, uint64_t rip)
|
||||
{
|
||||
int vector, error;
|
||||
uint16_t cs;
|
||||
uint64_t desc_base;
|
||||
uint32_t desc_limit, desc_access;
|
||||
|
||||
vector = *rip >> PAGE_SHIFT;
|
||||
*rip = 0;
|
||||
vector = rip >> PAGE_SHIFT;
|
||||
|
||||
/*
|
||||
* Update the %cs and %rip of the guest so that it starts
|
||||
* executing real mode code at at 'vector << 12'.
|
||||
*/
|
||||
error = vm_set_register(ctx, newcpu, VM_REG_GUEST_RIP, *rip);
|
||||
error = vm_set_register(ctx, newcpu, VM_REG_GUEST_RIP, 0);
|
||||
assert(error == 0);
|
||||
|
||||
error = vm_get_desc(ctx, newcpu, VM_REG_GUEST_CS, &desc_base,
|
||||
@ -87,7 +86,7 @@ spinup_ap(struct vmctx *ctx, int newcpu, uint64_t rip)
|
||||
error = vcpu_reset(ctx, newcpu);
|
||||
assert(error == 0);
|
||||
|
||||
spinup_ap_realmode(ctx, newcpu, &rip);
|
||||
spinup_ap_realmode(ctx, newcpu, rip);
|
||||
|
||||
vm_resume_cpu(ctx, newcpu);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user