|
@@ -107,6 +107,20 @@
|
|
#define KVM_INVALID_INST 0xdeadbeef
|
|
#define KVM_INVALID_INST 0xdeadbeef
|
|
#define KVM_INVALID_ADDR 0xdeadbeef
|
|
#define KVM_INVALID_ADDR 0xdeadbeef
|
|
|
|
|
|
|
|
+/*
|
|
|
|
+ * EVA has overlapping user & kernel address spaces, so user VAs may be >
|
|
|
|
+ * PAGE_OFFSET. For this reason we can't use the default KVM_HVA_ERR_BAD of
|
|
|
|
+ * PAGE_OFFSET.
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+#define KVM_HVA_ERR_BAD (-1UL)
|
|
|
|
+#define KVM_HVA_ERR_RO_BAD (-2UL)
|
|
|
|
+
|
|
|
|
+static inline bool kvm_is_error_hva(unsigned long addr)
|
|
|
|
+{
|
|
|
|
+ return IS_ERR_VALUE(addr);
|
|
|
|
+}
|
|
|
|
+
|
|
extern atomic_t kvm_mips_instance;
|
|
extern atomic_t kvm_mips_instance;
|
|
|
|
|
|
struct kvm_vm_stat {
|
|
struct kvm_vm_stat {
|