Commit Graph
22054 Commits
Author SHA1 Message Date
Keir Fraser c8cb30cfc8 mce: Provide ERST interface
This patch is used to provide ERST write/read/clear operation
interface to Xen MCE.

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
2010-08-22 09:53:15 +01:00
Keir Fraser 96590ca760 Implement ACPI APEI ERST feature
APEI are ACPI4.0 new features. It consists of ERST, BERT, HEST, and
EINJ.  ERST is used to save fault error log to a platform persistent
storage, so that when reboot os can retrieve the error log and handle
it.

This patch is used to implement ERST feature to Xen.  It consists of
3-level hierarchy: operation level, action level, and instru= ction
level.  Instruction do basic io; Action done by sequential
instructions parsed from ACPI ERST table; Operation done by
sequential actions defined by ACPI spec, providing erst_write/
erst_read/ erst_clear interfaces to MCE/ NMI/ PCIe error handling
mechanism, etc.

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
2010-08-22 09:52:18 +01:00
Keir Fraser 37eb6d05fe x86: Automatically EOI guest-bound interrupts if guest takes too long.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-08-22 09:37:08 +01:00
Gianni Tedesco f69a68961f xl: poison data objects in auto-generated destructors
Increase the probability of blowing up badly up during any
use-after-destroy scenarios.

Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-20 17:12:00 +01:00
Brendan Cully 603b00dba7 libxc: remus: unbreak after 21488:dd6bbdc42033
The aforementioned patch missed several calls to read_exact, causing spurious
timeouts under Remus.

Also add a couple of additional error reports to rdexact.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
Reviewed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 18:24:12 +01:00
Stefano Stabellini 8ef0c5ff6c libxl: Disable opengl if info->opengl == 0 (correct sense of test)
Disable opengl if info->opengl == 0

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 18:15:44 +01:00
Ian Jackson 73eafe46b4 QEMU_TAG update 2010-08-19 18:13:01 +01:00
Ian Jackson 8b139bdc02 QEMU_TAG update 2010-08-19 17:51:39 +01:00
Michael Young 4053efae85 tools/python: fix xm list for Python 2.7
This patch fixes
  Unexpected error: <type 'exceptions.AttributeError'>
This is due to xmlrpc changes in Python 2.7.  This patch should
fixe it for both old and new versions.

Signed-off-by: Michael Young <m.a.young@durham.ac.uk>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 17:09:30 +01:00
Keir Fraser 90d0bd9ffb timers: Fix printk format specifier
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-08-19 16:24:13 +01:00
Ian Campbell 2035f2836f xl: use libxl_device_pci_destroy
[PATCH 16 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:33:43 +01:00
Ian Campbell f305cf3953 libxl/xl: Use libxl_vcpuinfo_destroy
Replaces libxl_free_vcpu_list.

The ->cpumap field is now always a unique allocation rather than each
being an offset into the cpumap allocated in the first
libxl_device_pci in the list.

Refactor vcpulist so that the two cases can share more code.

[PATCH 15 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:32:56 +01:00
Ian Campbell f37b9745f2 libxl/xl: Use libxl_device_nic_destroy and libxl_nicinfo_destroy
Replaces libxl_free_nics_list

[PATCH 14 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:32:28 +01:00
Ian Campbell 59b4737876 libxl/xl: use libxl_diskinfo_destroy and libxl_device_disk_destroy
[PATCH 13 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:31:46 +01:00
Ian Campbell 84bc71818a xl: destroy device model info after creation
[PATCH 12 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:31:14 +01:00
Ian Campbell 76bf6f9d73 libxl: use libxl_version_info_destroy, not hand-coded do_free_version_info
[PATCH 11 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:30:48 +01:00
Ian Campbell f80273af03 xl: free the libxl types contained in struct domain_config
Resolves the following leaks found using "valgrind xl create -n ..."
(plus presumably others which didn't trigger because I have no devices
of that type)

[PATCH 10 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>

==21241== 5 bytes in 1 blocks are definitely lost in loss record 1 of 6
==21241==    at 0x4022F0A: malloc (vg_replace_malloc.c:236)
==21241==    by 0x411B22F: strdup (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x804E56B: parse_config_data (xl_cmdimpl.c:760)
==21241==    by 0x8056B04: create_domain (xl_cmdimpl.c:1357)
==21241==    by 0x8057ECE: main_create (xl_cmdimpl.c:3154)
==21241==    by 0x804B2FB: main (xl.c:76)
==21241==
==21241== 6 bytes in 1 blocks are definitely lost in loss record 2 of 6
==21241==    at 0x4022F0A: malloc (vg_replace_malloc.c:236)
==21241==    by 0x411B22F: strdup (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x804DAAA: parse_config_data (xl_cmdimpl.c:586)
==21241==    by 0x8056B04: create_domain (xl_cmdimpl.c:1357)
==21241==    by 0x8057ECE: main_create (xl_cmdimpl.c:3154)
==21241==    by 0x804B2FB: main (xl.c:76)
==21241==
==21241== 24 bytes in 1 blocks are definitely lost in loss record 3 of 6
==21241==    at 0x4022F0A: malloc (vg_replace_malloc.c:236)
==21241==    by 0x411B22F: strdup (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x804E51F: parse_config_data (xl_cmdimpl.c:754)
==21241==    by 0x8056B04: create_domain (xl_cmdimpl.c:1357)
==21241==    by 0x8057ECE: main_create (xl_cmdimpl.c:3154)
==21241==    by 0x804B2FB: main (xl.c:76)
==21241==
==21241== 27 bytes in 1 blocks are definitely lost in loss record 4 of 6
==21241==    at 0x4022F0A: malloc (vg_replace_malloc.c:236)
==21241==    by 0x411B22F: strdup (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x804DF4A: parse_config_data (xl_cmdimpl.c:664)
==21241==    by 0x8056B04: create_domain (xl_cmdimpl.c:1357)
==21241==    by 0x8057ECE: main_create (xl_cmdimpl.c:3154)
==21241==    by 0x804B2FB: main (xl.c:76)
==21241==
==21241== 28 bytes in 1 blocks are definitely lost in loss record 5 of 6
==21241==    at 0x4022F0A: malloc (vg_replace_malloc.c:236)
==21241==    by 0x410C1A7: vasprintf (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x40EE59A: asprintf (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x804CA8B: init_nic_info (xl_cmdimpl.c:322)
==21241==    by 0x804E6FF: parse_config_data (xl_cmdimpl.c:791)
==21241==    by 0x8056B04: create_domain (xl_cmdimpl.c:1357)
==21241==    by 0x8057ECE: main_create (xl_cmdimpl.c:3154)
==21241==    by 0x804B2FB: main (xl.c:76)
==21241==
==21241== 44 bytes in 1 blocks are definitely lost in loss record 6 of 6
==21241==    at 0x4022F0A: malloc (vg_replace_malloc.c:236)
==21241==    by 0x411B22F: strdup (in /lib/i686/cmov/libc-2.7.so)
==21241==    by 0x804E168: parse_config_data (xl_cmdimpl.c:694)
==21241==    by 0x8056B04: create_domain (xl_cmdimpl.c:1357)
==21241==    by 0x8057ECE: main_create (xl_cmdimpl.c:3154)
==21241==    by 0x804B2FB: main (xl.c:76)
2010-08-19 15:29:57 +01:00
Ian Campbell 10cf11b436 libxl: implement destroy for libxl_file_reference builtin type
As well as freeing data any file mappings need to be torn down so
implement an explicit destroy function.

Also the map and unmap function are internal to libxl so make that so.

[PATCH 09 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:25:15 +01:00
Ian Campbell 60ce81bc56 libxl: do not generate a destructor for data types which do not require one
libxl_dominfo, libxl_poolinfo, libxl_vminfo, libxl_domain_build_state,
libxl_physinfo and libxl_sched_credit contain no members which require
destruction so omit the auto generated destructor.

As an exception continue to generate destructors for libxl_device_*
and libxl_{devtype}* even if they have no interesting members so that
all device types can be treated the same without special knowledge
about the type contents being required.

[PATCH 08 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:24:41 +01:00
Ian Campbell 252af5a1a0 libxl: build info bootloader{,_args} are not const.
[PATCH 07 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:21:29 +01:00
Ian Campbell 5ccd288712 libxl: libxl_device_console.build_state is const
This field always refers to a libxl_domain_build_state structure which
is managed already by the caller, therefore it is incorrect to free it
as part of libxl_device_console_destroy.

(arguably this field should be a copy of, not a reference too, the original)

[PATCH 06 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:21:01 +01:00
Ian Campbell bcbf6e2049 libxl: generate destructors for each libxl defined type
I chose the name "_destroy" rather than "_free" because the destructor
functions will free only the members of a type recursively but will
not free the actual type structure itself. The allocation of the type
is typically done by the caller and may not be a single allocation,
e.g. lists/arrays of types or embedded in other structures etc.

The exceptions to this rule are libxl_string_list_destroy and
libxl_key_value_list_destroy but I'm not 100% convinced they are
exceptions (since they are kind-of opaque) and I couldn't see a
cleanerway to express this concept. I have made a best effort attempt
to implement these functions sanely but since as far as I can tell
nothing in the current code base ever sets
libxl_domain_create_info.{xsdata,platformdata} I'm flying somewhat
blind.

[PATCH 05 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:20:22 +01:00
Ian Campbell 735f084c0f libxl: autogenerate _libxl_types.h
The libxl interface types are represented by a simple python data
structure (which could be parsed from a bespoke language in the
future).

This will allow the autogeneration of functions to free the component
members of the libxl types. In the future it may also enable auto
generation of type marshalling code for language bindings.

The generated file should be identical to before with the exception of
the "DO NOT EDIT" header.

It was unfortunately necessary to add explcit an dependency on
_libxl_types.h (indirectly via libxl.h) to all C files since the
autogenerated dependencies are not available in time.

[PATCH 04 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 15:15:55 +01:00
Ian Campbell 9d8fb61af7 libxl: tweak formatting of _libxl_types.h to better suit autogeneration
This makes it easier to do a before/after comparison when the file
becomes autogenerated.

[PATCH 03 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 14:46:32 +01:00
Ian Campbell 7f132993d7 libxl: move type definitions into _libxl_types.h
The intention is to autogenerate this file in a future patch. This
pure code motion patch allows for easier before and after comparison
of that patch.

[PATCH 02 of 16 of
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 14:45:36 +01:00
Ian Campbell 4440de5a7c xl: free all data on exit from the domain monitor daemon.
[PATCH 01 of 16
 libxl: autogenerate type definitions and destructor functions]

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-19 14:40:24 +01:00
Keir Fraser bc0b38f45a Update MAINTAINERS file.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-08-18 18:06:10 +01:00
Ian Jackson b6e7618284 Merge 2010-08-18 17:11:13 +01:00
Ian Campbell daefca3426 tools/libxl: fix "xl console" for primary console
libxl_console_constype is an enum and can therefore be unsigned so
using -1 as a sentinel for unset in main_console fails to work as
expected.

Arrange for all valid enum values to be > 0 and use 0 as the sentinal
instead.

If the user does not request a specific type then always use the
primary console since using "-n" but not "-t" is not meaningful as we
do not know which type to request.

Also make libxl_console_exec reject invalid values of type.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-18 17:09:59 +01:00
Ian Campbell 7faaa30132 tools/libxc: free thread specific hypercall buffer on xc_interface_close
The per-thread hypercall buffer is usually cleaned up on pthread_exit
by the destructor passed to pthread_key_create. However if the calling
application is not threaded then the destructor is never called.

This frees the data for the current thread only but that is OK since
any other threads will be cleaned up by the destructor.

Changed since v1:
 * Ensure hcall_buf_pkey is initialised before use. Thanks to
   Christoph Egger for his help diagnosing this issue on NetBSD.
 * Remove redundant if (hcall_buf) from xc_clean_hcall_buf since
   _xc_clean_hcall_buf includes the same check.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-18 17:09:25 +01:00
Daniel Kiper 730381aa46 tools/xenpaging: Add _XOPEN_SOURCE to fix build problems with recent gcc
This patch fixes compilation issues with
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21).

Signed-off-by: Daniel Kiper <dkiper@net-space.pl>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-18 16:48:25 +01:00
Keir Fraser 116d62ddfd timers: Simplify implementation logic.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-08-18 14:56:01 +01:00
Brendan Cully 33577c40bf tools/hotplug: 21549:8bcaec29574e breaks vif-script with arguments.
For example, (vif-script 'vif-bridge bridge=eth1') in xend-config.sxp will
cause vif-setup to attempt to execute 'vif-bridge bridge=eth1' due to a
quoting mismatch. The fix appears to be to remove the extra quotes around
"$script" in vif-setup.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-18 14:50:51 +01:00
Keir Fraser 6d91c142bc timers: Improve debug-key printing.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-08-18 14:22:48 +01:00
Keir Fraser 2a9f4ae1ad x86 cpuidle: check whether cpu is online in cpu idle control
We observed a 2.6.18.8 dom0 kernel crash when Xen has maxcpus < num
of physical cores (maxcpus=3D4 for a 12-core system). It appeared that
hypervisor doesn't check whether CPU is online or not. This small
patch fixed the issue.

Signed-off-by: Uwe Dannowski <uwe.dannowski@amd.com>
Acked-by: Wei Huang <wei.huang2@amd.com>
2010-08-17 19:32:37 +01:00
Keir Fraser f5c637a788 xentrace: Fix buffer allocation to properly depend on T_INFO_PAGES
Signed-off-by: Andre Przywara <andre.przywara@amd.com>
2010-08-17 19:30:35 +01:00
Gianni Tedesco 299ac6622b tools/libxl: fix leak in libxl_wait_for_backend()
Another leak was been introduced since the gc patch-set.

Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-17 17:23:25 +01:00
Ian Jackson 8188bc8a37 tools/libxl: compile with -Wmissing-declarations
Since the recent build error caused by mismatch of symbol types due to
missing declarations, build libxl with -Wmissing-declarations.

The patch is mostly straightforward, a one liner in the makefile enables
the flag, a lot of functions in xl_cmdimpl.c needed to be made static
and libxl_paths.c needed to include libxl.h.

The one wart on the patch-set is that flex has a bug where it emits code
with missing declarations for yy(set|get)_column.  This can be worked
around by providing the declarations ourselves regardless.

Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-08-17 17:20:53 +01:00
Christoph Egger d83eb7f21e xend: remove non-ASCII characters.
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-17 15:23:36 +01:00
Ian Campbell 6d064404a2 libxl: xs_read accepts NULL for *len parameter
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:05 +01:00
Ian Campbell e04488a1f9 libxl: do not GC data returned to the caller by libxl_device_disk_getinfo.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:05 +01:00
Ian Campbell 32234af4f2 libxl: ensure result of libxl_poolid_to_name is always dynamically allocated
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:05 +01:00
Ian Campbell b9737c7f78 lbixl: make libxl_device_model_starting type opaque to users of libxl
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:05 +01:00
Ian Campbell 701e976171 libxl: make libxl_console_reader type opaque to users of libxl
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:05 +01:00
Ian Campbell 9063feaaab libxl: add specific type for hwcaps
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:04 +01:00
Ian Campbell 28c011204a libxl: add specific type for cpumap.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:04 +01:00
Ian Campbell 2057908adf libxl: move various enum and #defines above datastructure definitions.
These are left behind when the datastructures move to _lixl_types.hg
in a following patch and moving them first makes that pure code motion
patch more obviously correct.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:04 +01:00
Ian Campbell e26a803d45 libxl: define specific types for string list and key,value list
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:04 +01:00
Ian Campbell f0cbb9697b xl: use the regular implicit rules to build the xl .o files
Having $(XL_OBJS) makes part of a subsequent patch a little cleaner.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-16 15:31:04 +01:00
"Jiang, Yunhong" dfccb4b2cf fix libxl build failure
Fix libxl build issue caused by 21966, which adds the hidden attribute,
but didn't update the tools/libxl/xenguest.c.

Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
committer: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2010-08-17 12:45:44 +01:00