• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/virt/kvm/

Lines Matching defs:kvm

25 #include <trace/events/kvm.h>
49 struct kvm *kvm, int irq_source_id, int level)
52 struct kvm_pic *pic = pic_irqchip(kvm);
62 struct kvm *kvm, int irq_source_id, int level)
64 struct kvm_ioapic *ioapic = kvm->arch.vioapic;
81 int kvm_irq_delivery_to_apic(struct kvm *kvm, struct kvm_lapic *src,
89 printk(KERN_INFO "kvm: apic: phys broadcast and lowest prio\n");
91 kvm_for_each_vcpu(i, vcpu, kvm) {
118 struct kvm *kvm, int irq_source_id, int level)
138 return kvm_irq_delivery_to_apic(kvm, NULL, &irq);
147 int kvm_set_irq(struct kvm *kvm, int irq_source_id, u32 irq, int level)
161 irq_rt = rcu_dereference(kvm->irq_routing);
169 r = irq_set[i].set(&irq_set[i], kvm, irq_source_id, level);
179 void kvm_notify_acked_irq(struct kvm *kvm, unsigned irqchip, unsigned pin)
188 gsi = rcu_dereference(kvm->irq_routing)->chip[irqchip][pin];
190 hlist_for_each_entry_rcu(kian, n, &kvm->irq_ack_notifier_list,
197 void kvm_register_irq_ack_notifier(struct kvm *kvm,
200 mutex_lock(&kvm->irq_lock);
201 hlist_add_head_rcu(&kian->link, &kvm->irq_ack_notifier_list);
202 mutex_unlock(&kvm->irq_lock);
205 void kvm_unregister_irq_ack_notifier(struct kvm *kvm,
208 mutex_lock(&kvm->irq_lock);
210 mutex_unlock(&kvm->irq_lock);
214 int kvm_request_irq_source_id(struct kvm *kvm)
216 unsigned long *bitmap = &kvm->arch.irq_sources_bitmap;
219 mutex_lock(&kvm->irq_lock);
223 printk(KERN_WARNING "kvm: exhaust allocatable IRQ sources!\n");
231 mutex_unlock(&kvm->irq_lock);
236 void kvm_free_irq_source_id(struct kvm *kvm, int irq_source_id)
242 mutex_lock(&kvm->irq_lock);
245 printk(KERN_ERR "kvm: IRQ source ID out of range!\n");
248 clear_bit(irq_source_id, &kvm->arch.irq_sources_bitmap);
249 if (!irqchip_in_kernel(kvm))
253 clear_bit(irq_source_id, &kvm->arch.vioapic->irq_states[i]);
257 clear_bit(irq_source_id, &pic_irqchip(kvm)->irq_states[i]);
261 mutex_unlock(&kvm->irq_lock);
264 void kvm_register_irq_mask_notifier(struct kvm *kvm, int irq,
267 mutex_lock(&kvm->irq_lock);
269 hlist_add_head_rcu(&kimn->link, &kvm->mask_notifier_list);
270 mutex_unlock(&kvm->irq_lock);
273 void kvm_unregister_irq_mask_notifier(struct kvm *kvm, int irq,
276 mutex_lock(&kvm->irq_lock);
278 mutex_unlock(&kvm->irq_lock);
282 void kvm_fire_mask_notifiers(struct kvm *kvm, unsigned irqchip, unsigned pin,
290 gsi = rcu_dereference(kvm->irq_routing)->chip[irqchip][pin];
292 hlist_for_each_entry_rcu(kimn, n, &kvm->mask_notifier_list, link)
298 void kvm_free_irq_routing(struct kvm *kvm)
302 kfree(kvm->irq_routing);
369 int kvm_set_irq_routing(struct kvm *kvm,
410 mutex_lock(&kvm->irq_lock);
411 old = kvm->irq_routing;
412 rcu_assign_pointer(kvm->irq_routing, new);
413 mutex_unlock(&kvm->irq_lock);
469 int kvm_setup_default_irq_routing(struct kvm *kvm)
471 return kvm_set_irq_routing(kvm, default_routing,