version 1.11, 2019/05/01 09:20:21 |
version 1.11.2.3, 2020/04/13 08:04:25 |
|
|
/* $NetBSD$ */ |
/* $NetBSD$ */ |
|
|
/* |
/* |
* Copyright (c) 2018 The NetBSD Foundation, Inc. |
* Copyright (c) 2018-2019 The NetBSD Foundation, Inc. |
* All rights reserved. |
* All rights reserved. |
* |
* |
* This code is derived from software contributed to The NetBSD Foundation |
* This code is derived from software contributed to The NetBSD Foundation |
Line 95 struct nvmm_impl { |
|
Line 95 struct nvmm_impl { |
|
void (*fini)(void); |
void (*fini)(void); |
void (*capability)(struct nvmm_capability *); |
void (*capability)(struct nvmm_capability *); |
|
|
size_t conf_max; |
size_t mach_conf_max; |
const size_t *conf_sizes; |
const size_t *mach_conf_sizes; |
|
|
|
size_t vcpu_conf_max; |
|
const size_t *vcpu_conf_sizes; |
|
|
size_t state_size; |
size_t state_size; |
|
|
void (*machine_create)(struct nvmm_machine *); |
void (*machine_create)(struct nvmm_machine *); |
Line 105 struct nvmm_impl { |
|
Line 109 struct nvmm_impl { |
|
|
|
int (*vcpu_create)(struct nvmm_machine *, struct nvmm_cpu *); |
int (*vcpu_create)(struct nvmm_machine *, struct nvmm_cpu *); |
void (*vcpu_destroy)(struct nvmm_machine *, struct nvmm_cpu *); |
void (*vcpu_destroy)(struct nvmm_machine *, struct nvmm_cpu *); |
|
int (*vcpu_configure)(struct nvmm_cpu *, uint64_t, void *); |
void (*vcpu_setstate)(struct nvmm_cpu *); |
void (*vcpu_setstate)(struct nvmm_cpu *); |
void (*vcpu_getstate)(struct nvmm_cpu *); |
void (*vcpu_getstate)(struct nvmm_cpu *); |
int (*vcpu_inject)(struct nvmm_cpu *); |
int (*vcpu_inject)(struct nvmm_cpu *); |
int (*vcpu_run)(struct nvmm_machine *, struct nvmm_cpu *, |
int (*vcpu_run)(struct nvmm_machine *, struct nvmm_cpu *, |
struct nvmm_exit *); |
struct nvmm_vcpu_exit *); |
}; |
}; |
|
|
int nvmm_vcpu_get(struct nvmm_machine *, nvmm_cpuid_t, struct nvmm_cpu **); |
|
void nvmm_vcpu_put(struct nvmm_cpu *); |
|
|
|
extern const struct nvmm_impl nvmm_x86_svm; |
extern const struct nvmm_impl nvmm_x86_svm; |
extern const struct nvmm_impl nvmm_x86_vmx; |
extern const struct nvmm_impl nvmm_x86_vmx; |
|
|