~ubuntu-branches/ubuntu/wily/qemu-kvm-spice/wily

« back to all changes in this revision

Viewing changes to hw/virtio-balloon.h

  • Committer: Bazaar Package Importer
  • Author(s): Serge Hallyn
  • Date: 2011-10-19 10:44:56 UTC
  • Revision ID: james.westby@ubuntu.com-20111019104456-xgvskumk3sxi97f4
Tags: upstream-0.15.0+noroms
ImportĀ upstreamĀ versionĀ 0.15.0+noroms

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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 */
 
28
#define VIRTIO_BALLOON_F_STATS_VQ 1       /* Memory stats virtqueue */
 
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
 
 
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;
 
53
} __attribute__((packed)) VirtIOBalloonStat;
 
54
 
 
55
#endif