blob: 5969fa062c453bbb91bb47371f282168b5cf83a5 [file] [log] [blame]
Nick Kralevicha67e4de2013-01-14 11:28:26 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
Ben Cheng655a7c02013-10-16 16:09:24 -070019#ifndef _LINUX_VIRTIO_BALLOON_H
20#define _LINUX_VIRTIO_BALLOON_H
Christopher Ferris05d08e92016-02-04 13:16:38 -080021#include <linux/types.h>
22#include <linux/virtio_types.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070023#include <linux/virtio_ids.h>
24#include <linux/virtio_config.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070025#define VIRTIO_BALLOON_F_MUST_TELL_HOST 0
26#define VIRTIO_BALLOON_F_STATS_VQ 1
Christopher Ferris05d08e92016-02-04 13:16:38 -080027#define VIRTIO_BALLOON_F_DEFLATE_ON_OOM 2
Ben Cheng655a7c02013-10-16 16:09:24 -070028#define VIRTIO_BALLOON_PFN_SHIFT 12
Tao Baod7db5942015-01-28 10:07:51 -080029struct virtio_balloon_config {
Christopher Ferris05d08e92016-02-04 13:16:38 -080030 __u32 num_pages;
Christopher Ferris05d08e92016-02-04 13:16:38 -080031 __u32 actual;
Ben Cheng655a7c02013-10-16 16:09:24 -070032};
Ben Cheng655a7c02013-10-16 16:09:24 -070033#define VIRTIO_BALLOON_S_SWAP_IN 0
34#define VIRTIO_BALLOON_S_SWAP_OUT 1
35#define VIRTIO_BALLOON_S_MAJFLT 2
36#define VIRTIO_BALLOON_S_MINFLT 3
Ben Cheng655a7c02013-10-16 16:09:24 -070037#define VIRTIO_BALLOON_S_MEMFREE 4
38#define VIRTIO_BALLOON_S_MEMTOT 5
Christopher Ferris106b3a82016-08-24 12:15:38 -070039#define VIRTIO_BALLOON_S_AVAIL 6
Christopher Ferris76a1d452018-06-27 14:12:29 -070040#define VIRTIO_BALLOON_S_CACHES 7
41#define VIRTIO_BALLOON_S_HTLB_PGALLOC 8
42#define VIRTIO_BALLOON_S_HTLB_PGFAIL 9
43#define VIRTIO_BALLOON_S_NR 10
44#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" \
45}
46#define VIRTIO_BALLOON_S_NAMES VIRTIO_BALLOON_S_NAMES_WITH_PREFIX("")
Ben Cheng655a7c02013-10-16 16:09:24 -070047struct virtio_balloon_stat {
Christopher Ferris05d08e92016-02-04 13:16:38 -080048 __virtio16 tag;
Christopher Ferris106b3a82016-08-24 12:15:38 -070049 __virtio64 val;
Ben Cheng655a7c02013-10-16 16:09:24 -070050} __attribute__((packed));
Nick Kralevicha67e4de2013-01-14 11:28:26 -080051#endif