mfd: Introduce remove_script function for twl4030
[safe/jmp/linux-2.6] / include / linux / kvm_host.h
index 5e9cb90..a3fd0f9 100644 (file)
@@ -38,6 +38,7 @@
 #define KVM_REQ_MMU_SYNC           7
 #define KVM_REQ_KVMCLOCK_UPDATE    8
 #define KVM_REQ_KICK               9
+#define KVM_REQ_DEACTIVATE_FPU    10
 
 #define KVM_USERSPACE_IRQ_SOURCE_ID    0
 
@@ -83,6 +84,8 @@ struct kvm_vcpu {
        struct kvm_run *run;
        unsigned long requests;
        unsigned long guest_debug;
+       int srcu_idx;
+
        int fpu_active;
        int guest_fpu_loaded;
        wait_queue_head_t wq;
@@ -158,8 +161,8 @@ struct kvm_memslots {
 
 struct kvm {
        spinlock_t mmu_lock;
-       spinlock_t requests_lock;
-       struct rw_semaphore slots_lock;
+       raw_spinlock_t requests_lock;
+       struct mutex slots_lock;
        struct mm_struct *mm; /* userspace tied to this vm */
        struct kvm_memslots *memslots;
        struct srcu_struct srcu;
@@ -297,6 +300,7 @@ int kvm_clear_guest_page(struct kvm *kvm, gfn_t gfn, int offset, int len);
 int kvm_clear_guest(struct kvm *kvm, gpa_t gpa, unsigned long len);
 struct kvm_memory_slot *gfn_to_memslot(struct kvm *kvm, gfn_t gfn);
 int kvm_is_visible_gfn(struct kvm *kvm, gfn_t gfn);
+unsigned long kvm_host_page_size(struct kvm *kvm, gfn_t gfn);
 void mark_page_dirty(struct kvm *kvm, gfn_t gfn);
 
 void kvm_vcpu_block(struct kvm_vcpu *vcpu);
@@ -397,6 +401,7 @@ struct kvm_assigned_dev_kernel {
        struct work_struct interrupt_work;
        struct list_head list;
        int assigned_dev_id;
+       int host_segnr;
        int host_busnr;
        int host_devfn;
        unsigned int entries_nr;