]>
Commit | Line | Data |
---|---|---|
bd322087 AL |
1 | /* |
2 | * Virtio Support | |
3 | * | |
4 | * Copyright IBM, Corp. 2007-2008 | |
5 | * | |
6 | * Authors: | |
7 | * Anthony Liguori <aliguori@us.ibm.com> | |
8 | * Rusty Russell <rusty@rustcorp.com.au> | |
9 | * | |
10 | * This work is licensed under the terms of the GNU GPL, version 2. See | |
11 | * the COPYING file in the top-level directory. | |
12 | * | |
13 | */ | |
14 | ||
15 | #ifndef _QEMU_VIRTIO_BALLOON_H | |
16 | #define _QEMU_VIRTIO_BALLOON_H | |
17 | ||
18 | #include "virtio.h" | |
19 | #include "pci.h" | |
20 | ||
21 | /* from Linux's linux/virtio_balloon.h */ | |
22 | ||
23 | /* The ID for virtio_balloon */ | |
24 | #define VIRTIO_ID_BALLOON 5 | |
25 | ||
26 | /* The feature bitmap for virtio balloon */ | |
27 | #define VIRTIO_BALLOON_F_MUST_TELL_HOST 0 /* Tell before reclaiming pages */ | |
625a5bef | 28 | #define VIRTIO_BALLOON_F_STATS_VQ 1 /* Memory stats virtqueue */ |
bd322087 AL |
29 | |
30 | /* Size of a PFN in the balloon interface. */ | |
31 | #define VIRTIO_BALLOON_PFN_SHIFT 12 | |
32 | ||
33 | struct virtio_balloon_config | |
34 | { | |
35 | /* Number of pages host wants Guest to give up. */ | |
36 | uint32_t num_pages; | |
37 | /* Number of pages we've actually got in balloon. */ | |
38 | uint32_t actual; | |
39 | }; | |
40 | ||
625a5bef AL |
41 | /* Memory Statistics */ |
42 | #define VIRTIO_BALLOON_S_SWAP_IN 0 /* Amount of memory swapped in */ | |
43 | #define VIRTIO_BALLOON_S_SWAP_OUT 1 /* Amount of memory swapped out */ | |
44 | #define VIRTIO_BALLOON_S_MAJFLT 2 /* Number of major faults */ | |
45 | #define VIRTIO_BALLOON_S_MINFLT 3 /* Number of minor faults */ | |
46 | #define VIRTIO_BALLOON_S_MEMFREE 4 /* Total amount of free memory */ | |
47 | #define VIRTIO_BALLOON_S_MEMTOT 5 /* Total amount of memory */ | |
48 | #define VIRTIO_BALLOON_S_NR 6 | |
49 | ||
50 | typedef struct VirtIOBalloonStat { | |
51 | uint16_t tag; | |
52 | uint64_t val; | |
541dc0d4 | 53 | } QEMU_PACKED VirtIOBalloonStat; |
625a5bef | 54 | |
bd322087 | 55 | #endif |