Deleted Added
full compact
vmm_dev.c (268935) vmm_dev.c (268972)
1/*-
2 * Copyright (c) 2011 NetApp, Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (c) 2011 NetApp, Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: stable/10/sys/amd64/vmm/vmm_dev.c 268935 2014-07-21 02:39:17Z jhb $
26 * $FreeBSD: stable/10/sys/amd64/vmm/vmm_dev.c 268972 2014-07-22 03:14:37Z jhb $
27 */
28
29#include <sys/cdefs.h>
27 */
28
29#include <sys/cdefs.h>
30__FBSDID("$FreeBSD: stable/10/sys/amd64/vmm/vmm_dev.c 268935 2014-07-21 02:39:17Z jhb $");
30__FBSDID("$FreeBSD: stable/10/sys/amd64/vmm/vmm_dev.c 268972 2014-07-22 03:14:37Z jhb $");
31
32#include <sys/param.h>
33#include <sys/kernel.h>
34#include <sys/queue.h>
35#include <sys/lock.h>
36#include <sys/mutex.h>
37#include <sys/malloc.h>
38#include <sys/conf.h>

--- 112 unchanged lines hidden (view full) ---

151 struct vm_register *vmreg;
152 struct vm_seg_desc *vmsegdesc;
153 struct vm_run *vmrun;
154 struct vm_exception *vmexc;
155 struct vm_lapic_irq *vmirq;
156 struct vm_lapic_msi *vmmsi;
157 struct vm_ioapic_irq *ioapic_irq;
158 struct vm_isa_irq *isa_irq;
31
32#include <sys/param.h>
33#include <sys/kernel.h>
34#include <sys/queue.h>
35#include <sys/lock.h>
36#include <sys/mutex.h>
37#include <sys/malloc.h>
38#include <sys/conf.h>

--- 112 unchanged lines hidden (view full) ---

151 struct vm_register *vmreg;
152 struct vm_seg_desc *vmsegdesc;
153 struct vm_run *vmrun;
154 struct vm_exception *vmexc;
155 struct vm_lapic_irq *vmirq;
156 struct vm_lapic_msi *vmmsi;
157 struct vm_ioapic_irq *ioapic_irq;
158 struct vm_isa_irq *isa_irq;
159 struct vm_isa_irq_trigger *isa_irq_trigger;
159 struct vm_capability *vmcap;
160 struct vm_pptdev *pptdev;
161 struct vm_pptdev_mmio *pptmmio;
162 struct vm_pptdev_msi *pptmsi;
163 struct vm_pptdev_msix *pptmsix;
164 struct vm_nmi *vmnmi;
165 struct vm_stats *vmstats;
166 struct vm_stat_desc *statdesc;

--- 174 unchanged lines hidden (view full) ---

341 isa_irq->ioapic_irq);
342 break;
343 case VM_ISA_PULSE_IRQ:
344 isa_irq = (struct vm_isa_irq *)data;
345 error = vatpic_pulse_irq(sc->vm, isa_irq->atpic_irq);
346 if (error == 0 && isa_irq->ioapic_irq != -1)
347 error = vioapic_pulse_irq(sc->vm, isa_irq->ioapic_irq);
348 break;
160 struct vm_capability *vmcap;
161 struct vm_pptdev *pptdev;
162 struct vm_pptdev_mmio *pptmmio;
163 struct vm_pptdev_msi *pptmsi;
164 struct vm_pptdev_msix *pptmsix;
165 struct vm_nmi *vmnmi;
166 struct vm_stats *vmstats;
167 struct vm_stat_desc *statdesc;

--- 174 unchanged lines hidden (view full) ---

342 isa_irq->ioapic_irq);
343 break;
344 case VM_ISA_PULSE_IRQ:
345 isa_irq = (struct vm_isa_irq *)data;
346 error = vatpic_pulse_irq(sc->vm, isa_irq->atpic_irq);
347 if (error == 0 && isa_irq->ioapic_irq != -1)
348 error = vioapic_pulse_irq(sc->vm, isa_irq->ioapic_irq);
349 break;
350 case VM_ISA_SET_IRQ_TRIGGER:
351 isa_irq_trigger = (struct vm_isa_irq_trigger *)data;
352 error = vatpic_set_irq_trigger(sc->vm,
353 isa_irq_trigger->atpic_irq, isa_irq_trigger->trigger);
354 break;
349 case VM_MAP_MEMORY:
350 seg = (struct vm_memory_segment *)data;
351 error = vm_malloc(sc->vm, seg->gpa, seg->len);
352 break;
353 case VM_GET_MEMORY_SEG:
354 seg = (struct vm_memory_segment *)data;
355 seg->len = 0;
356 (void)vm_gpabase2memseg(sc->vm, seg->gpa, seg);

--- 242 unchanged lines hidden ---
355 case VM_MAP_MEMORY:
356 seg = (struct vm_memory_segment *)data;
357 error = vm_malloc(sc->vm, seg->gpa, seg->len);
358 break;
359 case VM_GET_MEMORY_SEG:
360 seg = (struct vm_memory_segment *)data;
361 seg->len = 0;
362 (void)vm_gpabase2memseg(sc->vm, seg->gpa, seg);

--- 242 unchanged lines hidden ---