# HG changeset patch # Parent 5d31bd0eb8d040c0b44fe2a3b737fd752a607e74 libxc: Squash xc_e820.h (and delete) into xenctrl.h .. as there is no need to keep that internal header file anymore. We export two functions xc_domain_[set|get]_memory_map which depend on the 'struct e820entry' defined in 'xc_e820.h'. We move the contents of the 'xc_e820.h' to the 'xenctrl.h' fixing compiler errors when applications outside the Xen tree are trying to compile against the libraries. [backport of c/s 23632] Signed-off-by: Konrad Rzeszutek Wilk diff -r 5d31bd0eb8d0 tools/libxc/xc_core_x86.c --- a/tools/libxc/xc_core_x86.c Wed Jun 01 16:10:50 2011 -0400 +++ b/tools/libxc/xc_core_x86.c Mon Jun 13 13:41:31 2011 -0400 @@ -20,7 +20,7 @@ #include "xg_private.h" #include "xc_core.h" -#include "xc_e820.h" +#include #define GET_FIELD(_p, _f) ((dinfo->guest_width==8) ? ((_p)->x64._f) : ((_p)->x32._f)) diff -r 5d31bd0eb8d0 tools/libxc/xc_domain_save.c --- a/tools/libxc/xc_domain_save.c Wed Jun 01 16:10:50 2011 -0400 +++ b/tools/libxc/xc_domain_save.c Mon Jun 13 13:41:31 2011 -0400 @@ -32,7 +32,6 @@ #include "xg_save_restore.h" #include -#include "xc_e820.h" /* ** Default values for important tuning parameters. Can override by passing diff -r 5d31bd0eb8d0 tools/libxc/xc_e820.h --- a/tools/libxc/xc_e820.h Wed Jun 01 16:10:50 2011 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -/* - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef __XC_E820_H__ -#define __XC_E820_H__ - -#include - -/* - * PC BIOS standard E820 types and structure. - */ -#define E820_RAM 1 -#define E820_RESERVED 2 -#define E820_ACPI 3 -#define E820_NVS 4 -#define E820_UNUSABLE 5 - -#define E820MAX (128) - -struct e820entry { - uint64_t addr; - uint64_t size; - uint32_t type; -} __attribute__((packed)); - -#endif /* __XC_E820_H__ */ diff -r 5d31bd0eb8d0 tools/libxc/xenctrl.h --- a/tools/libxc/xenctrl.h Wed Jun 01 16:10:50 2011 -0400 +++ b/tools/libxc/xenctrl.h Mon Jun 13 13:41:31 2011 -0400 @@ -967,7 +967,22 @@ int xc_domain_set_memmap_limit(xc_interf unsigned long map_limitkb); #if defined(__i386__) || defined(__x86_64__) -#include "xc_e820.h" +/* + * PC BIOS standard E820 types and structure. + */ +#define E820_RAM 1 +#define E820_RESERVED 2 +#define E820_ACPI 3 +#define E820_NVS 4 +#define E820_UNUSABLE 5 + +#define E820MAX (128) + +struct e820entry { + uint64_t addr; + uint64_t size; + uint32_t type; +} __attribute__((packed)); int xc_domain_set_memory_map(xc_interface *xch, uint32_t domid, struct e820entry entries[],