]> git.karo-electronics.de Git - karo-tx-linux.git/blob - tools/kvm/x86/interrupt.c
Merge remote-tracking branch 'signal/for-next'
[karo-tx-linux.git] / tools / kvm / x86 / interrupt.c
1 #include "kvm/interrupt.h"
2
3 #include "kvm/util.h"
4
5 #include <string.h>
6
7 void interrupt_table__copy(struct interrupt_table *itable, void *dst, unsigned int size)
8 {
9         if (size < sizeof(itable->entries))
10                 die("An attempt to overwrite host memory");
11
12         memcpy(dst, itable->entries, sizeof(itable->entries));
13 }
14
15 void interrupt_table__setup(struct interrupt_table *itable, struct real_intr_desc *entry)
16 {
17         unsigned int i;
18
19         for (i = 0; i < REAL_INTR_VECTORS; i++)
20                 itable->entries[i] = *entry;
21 }
22
23 void interrupt_table__set(struct interrupt_table *itable,
24                                 struct real_intr_desc *entry, unsigned int num)
25 {
26         if (num < REAL_INTR_VECTORS)
27                 itable->entries[num] = *entry;
28 }