# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1174521543 0
# Node ID 4e874484f4dad6dd1c779ca5652c063368942195
# Parent 49ec3725d0c08130d339ad4d3ccb27b1557f8c27
# Parent e9a5ba5528087173f1d8fd7695434c8211f1c3b9
Merge with xenppc-unstable-merge.hg
---
linux-2.6-xen-sparse/arch/x86_64/kernel/head64-xen.c | 8 +++-----
tools/python/xen/xend/XendAPI.py | 11 ++++++-----
tools/python/xen/xend/XendDmesg.py | 3 ++-
tools/python/xen/xm/main.py | 19 +++++++++----------
xen/arch/x86/mm/shadow/types.h | 2 +-
5 files changed, 21 insertions(+), 22 deletions(-)
diff -r 49ec3725d0c0 -r 4e874484f4da
linux-2.6-xen-sparse/arch/x86_64/kernel/head64-xen.c
--- a/linux-2.6-xen-sparse/arch/x86_64/kernel/head64-xen.c Wed Mar 21
18:08:31 2007 -0500
+++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/head64-xen.c Wed Mar 21
23:59:03 2007 +0000
@@ -105,13 +105,11 @@ void __init x86_64_start_kernel(char * r
int i;
xen_start_info = (struct start_info *)real_mode_data;
- if (!xen_feature(XENFEAT_auto_translated_physmap)) {
+ if (!xen_feature(XENFEAT_auto_translated_physmap))
phys_to_machine_mapping =
(unsigned long *)xen_start_info->mfn_list;
- start_pfn = (__pa(xen_start_info->pt_base) >> PAGE_SHIFT) +
- xen_start_info->nr_pt_frames;
- }
-
+ start_pfn = (__pa(xen_start_info->pt_base) >> PAGE_SHIFT) +
+ xen_start_info->nr_pt_frames;
machine_to_phys_mapping = (unsigned long *)MACH2PHYS_VIRT_START;
machine_to_phys_nr_ents = MACH2PHYS_NR_ENTRIES;
diff -r 49ec3725d0c0 -r 4e874484f4da tools/python/xen/xend/XendAPI.py
--- a/tools/python/xen/xend/XendAPI.py Wed Mar 21 18:08:31 2007 -0500
+++ b/tools/python/xen/xend/XendAPI.py Wed Mar 21 23:59:03 2007 +0000
@@ -665,6 +665,7 @@ class XendAPI(object):
('add_to_other_config', None),
('remove_from_other_config', None),
('dmesg', 'String'),
+ ('dmesg_clear', 'String'),
('get_log', 'String'),
('send_debug_keys', None)]
@@ -742,11 +743,11 @@ class XendAPI(object):
return xen_api_error(XEND_ERROR_HOST_RUNNING)
return xen_api_error(XEND_ERROR_UNSUPPORTED)
- def host_dmesg(self, session, host_ref, clear):
- if clear:
- return xen_api_success(XendDmesg.instance().clear())
- else:
- return xen_api_success(XendDmesg.instance().info())
+ def host_dmesg(self, session, host_ref):
+ return xen_api_success(XendDmesg.instance().info())
+
+ def host_dmesg_clear(self, session, host_ref):
+ return xen_api_success(XendDmesg.instance().clear())
def host_get_log(self, session, host_ref):
log_file = open(XendLogging.getLogFilename())
diff -r 49ec3725d0c0 -r 4e874484f4da tools/python/xen/xend/XendDmesg.py
--- a/tools/python/xen/xend/XendDmesg.py Wed Mar 21 18:08:31 2007 -0500
+++ b/tools/python/xen/xend/XendDmesg.py Wed Mar 21 23:59:03 2007 +0000
@@ -13,6 +13,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#============================================================================
# Copyright (C) 2004, 2005 Mike Wray <mike.wray@xxxxxx>
+# Copyright (C) 2007 XenSource Inc.
#============================================================================
"""Get dmesg output for this node.
@@ -28,7 +29,7 @@ class XendDmesg:
return self.xc.readconsolering()
def clear(self):
- self.xc.readconsolering(True)
+ return self.xc.readconsolering(True)
def instance():
global inst
diff -r 49ec3725d0c0 -r 4e874484f4da tools/python/xen/xm/main.py
--- a/tools/python/xen/xm/main.py Wed Mar 21 18:08:31 2007 -0500
+++ b/tools/python/xen/xm/main.py Wed Mar 21 23:59:03 2007 +0000
@@ -217,7 +217,7 @@ SUBCOMMAND_OPTIONS = {
('-q', '--quiet', 'Do not print an error message if the domain does not
exist'),
),
'dmesg': (
- ('-c', '--clear', 'Clear dmesg buffer'),
+ ('-c', '--clear', 'Clear dmesg buffer as well as printing it'),
),
'vnet-list': (
('-l', '--long', 'List Vnets as SXP'),
@@ -1587,17 +1587,16 @@ def xm_dmesg(args):
usage('dmesg')
if serverType == SERVER_XEN_API:
+ host = server.xenapi.session.get_this_host()
+ if use_clear:
+ print server.xenapi.host.dmesg_clear(host),
+ else:
+ print server.xenapi.host.dmesg(host),
+ else:
if not use_clear:
- print server.xenapi.host.dmesg(
- server.xenapi.session.get_this_host(),0)
+ print server.xend.node.dmesg.info(),
else:
- server.xenapi.host.dmesg(
- server.xenapi.session.get_this_host(),1)
- else:
- if not use_clear:
- print server.xend.node.dmesg.info()
- else:
- server.xend.node.dmesg.clear()
+ print server.xend.node.dmesg.clear(),
def xm_log(args):
arg_check(args, "log", 0)
diff -r 49ec3725d0c0 -r 4e874484f4da xen/arch/x86/mm/shadow/types.h
--- a/xen/arch/x86/mm/shadow/types.h Wed Mar 21 18:08:31 2007 -0500
+++ b/xen/arch/x86/mm/shadow/types.h Wed Mar 21 23:59:03 2007 +0000
@@ -597,7 +597,7 @@ accumulate_guest_flags(struct vcpu *v, w
* have reserved bits that we can use for this.
*/
-#define SH_L1E_MAGIC 0xffffffff00000000ULL
+#define SH_L1E_MAGIC 0xffffffff00000001ULL
static inline int sh_l1e_is_magic(shadow_l1e_t sl1e)
{
return ((sl1e.l1 & SH_L1E_MAGIC) == SH_L1E_MAGIC);
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|