Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


Avoid strict-aliasing related issues when compiling with optimization
[palacios.git] / linux_module / memtrack.h
1 /*
2  * Palacios Memory Tracking Userland Interface
3  * Copyright (c) 2014 Peter Dinda <pdinda@northwestern.edu>
4  */
5
6 #ifndef __PALACIOS_MEMTRACK_H__
7 #define __PALACIOS_MEMTRACK_H__
8
9 #include <palacios/vmm_mem_track.h>
10
11 #define V3_VM_MEM_TRACK_SIZE 300
12 #define V3_VM_MEM_TRACK_CMD  301
13 #define V3_VM_MEM_TRACK_SNAP 302
14
15
16 // Used to get needed info to allocate requests
17 struct v3_mem_track_sizes {
18     uint64_t  num_cores;
19     uint64_t  num_pages;
20 };
21
22 // These are sent for start and stop requests
23 struct v3_mem_track_cmd {
24     enum { V3_MEM_TRACK_START, V3_MEM_TRACK_STOP} request;
25     struct v3_vm_mem_track                        config;  // for "start"
26 };
27
28
29 // A snapshot request consists of the v3_mem_track_snapshot to fill out
30
31 #endif