1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef _LINUX_VIRTIO_BALLOON_H
8 #define _LINUX_VIRTIO_BALLOON_H
9 #include <linux/types.h>
10 #include <linux/virtio_types.h>
11 #include <linux/virtio_ids.h>
12 #include <linux/virtio_config.h>
13 #define VIRTIO_BALLOON_F_MUST_TELL_HOST 0
14 #define VIRTIO_BALLOON_F_STATS_VQ 1
15 #define VIRTIO_BALLOON_F_DEFLATE_ON_OOM 2
16 #define VIRTIO_BALLOON_F_FREE_PAGE_HINT 3
17 #define VIRTIO_BALLOON_F_PAGE_POISON 4
18 #define VIRTIO_BALLOON_F_REPORTING 5
19 #define VIRTIO_BALLOON_PFN_SHIFT 12
20 #define VIRTIO_BALLOON_CMD_ID_STOP 0
21 #define VIRTIO_BALLOON_CMD_ID_DONE 1
22 struct virtio_balloon_config {
23   __le32 num_pages;
24   __le32 actual;
25   union {
26     __le32 free_page_hint_cmd_id;
27     __le32 free_page_report_cmd_id;
28   };
29   __le32 poison_val;
30 };
31 #define VIRTIO_BALLOON_S_SWAP_IN 0
32 #define VIRTIO_BALLOON_S_SWAP_OUT 1
33 #define VIRTIO_BALLOON_S_MAJFLT 2
34 #define VIRTIO_BALLOON_S_MINFLT 3
35 #define VIRTIO_BALLOON_S_MEMFREE 4
36 #define VIRTIO_BALLOON_S_MEMTOT 5
37 #define VIRTIO_BALLOON_S_AVAIL 6
38 #define VIRTIO_BALLOON_S_CACHES 7
39 #define VIRTIO_BALLOON_S_HTLB_PGALLOC 8
40 #define VIRTIO_BALLOON_S_HTLB_PGFAIL 9
41 #define VIRTIO_BALLOON_S_NR 10
42 #define VIRTIO_BALLOON_S_NAMES_WITH_PREFIX(VIRTIO_BALLOON_S_NAMES_prefix) { VIRTIO_BALLOON_S_NAMES_prefix "swap-in", VIRTIO_BALLOON_S_NAMES_prefix "swap-out", VIRTIO_BALLOON_S_NAMES_prefix "major-faults", VIRTIO_BALLOON_S_NAMES_prefix "minor-faults", VIRTIO_BALLOON_S_NAMES_prefix "free-memory", VIRTIO_BALLOON_S_NAMES_prefix "total-memory", VIRTIO_BALLOON_S_NAMES_prefix "available-memory", VIRTIO_BALLOON_S_NAMES_prefix "disk-caches", VIRTIO_BALLOON_S_NAMES_prefix "hugetlb-allocations", VIRTIO_BALLOON_S_NAMES_prefix "hugetlb-failures" \
43 }
44 #define VIRTIO_BALLOON_S_NAMES VIRTIO_BALLOON_S_NAMES_WITH_PREFIX("")
45 struct virtio_balloon_stat {
46   __virtio16 tag;
47   __virtio64 val;
48 } __attribute__((packed));
49 #endif
50