ia64/xen-unstable

changeset 8162:5358eceec5ea

Merged.
author emellor@leeni.uk.xensource.com
date Thu Dec 01 03:40:26 2005 +0000 (2005-12-01)
parents e0d01dd6c4ca 57acbaf6dd29
children 310746cf9f27
files
line diff
     1.1 --- a/linux-2.6-xen-sparse/arch/xen/i386/kernel/fixup.c	Thu Dec 01 03:39:23 2005 +0000
     1.2 +++ b/linux-2.6-xen-sparse/arch/xen/i386/kernel/fixup.c	Thu Dec 01 03:40:26 2005 +0000
     1.3 @@ -56,9 +56,11 @@ fastcall void do_fixup_4gb_segment(struc
     1.4  	DP("***************************************************************");
     1.5  	DP("***************************************************************");
     1.6  	DP("** WARNING: Currently emulating unsupported memory accesses  **");
     1.7 -	DP("**          in /lib/tls libraries. The emulation is very     **");
     1.8 +	DP("**          in /lib/tls glibc libraries. The emulation is    **");
     1.9  	DP("**          slow. To ensure full performance you should      **");
    1.10 -	DP("**          execute the following as root:                   **");
    1.11 +	DP("**          install a 'xen-friendly' (nosegneg) version of   **");
    1.12 +	DP("**          the library, or disable tls support by executing **");
    1.13 +	DP("**          the following as root:                           **");
    1.14  	DP("**          mv /lib/tls /lib/tls.disabled                    **");
    1.15  	DP("** Offending process: %-38.38s **", info);
    1.16  	DP("***************************************************************");
     2.1 --- a/linux-2.6-xen-sparse/drivers/xen/privcmd/privcmd.c	Thu Dec 01 03:39:23 2005 +0000
     2.2 +++ b/linux-2.6-xen-sparse/drivers/xen/privcmd/privcmd.c	Thu Dec 01 03:40:26 2005 +0000
     2.3 @@ -33,6 +33,7 @@
     2.4  #include <asm-xen/xen_proc.h>
     2.5  
     2.6  static struct proc_dir_entry *privcmd_intf;
     2.7 +static struct proc_dir_entry *capabilities_intf;
     2.8  
     2.9  static int privcmd_ioctl(struct inode *inode, struct file *file,
    2.10                           unsigned int cmd, unsigned long data)
    2.11 @@ -234,6 +235,18 @@ static struct file_operations privcmd_fi
    2.12  	.mmap  = privcmd_mmap,
    2.13  };
    2.14  
    2.15 +static int capabilities_read(char *page, char **start, off_t off,
    2.16 +                        int count, int *eof, void *data)
    2.17 +{
    2.18 +	int len = 0;
    2.19 +	*page = 0;
    2.20 +
    2.21 +	if (xen_start_info->flags & SIF_INITDOMAIN)
    2.22 +		len = sprintf( page, "control_d\n" );
    2.23 +
    2.24 +	*eof = 1;
    2.25 +	return len;
    2.26 +}
    2.27  
    2.28  static int __init privcmd_init(void)
    2.29  {
    2.30 @@ -241,6 +254,10 @@ static int __init privcmd_init(void)
    2.31  	if (privcmd_intf != NULL)
    2.32  		privcmd_intf->proc_fops = &privcmd_file_ops;
    2.33  
    2.34 +	capabilities_intf = create_xen_proc_entry("capabilities", 0400 );
    2.35 +	if (capabilities_intf != NULL)
    2.36 +		capabilities_intf->read_proc = capabilities_read;
    2.37 +
    2.38  	return 0;
    2.39  }
    2.40  
     3.1 --- a/tools/xm-test/lib/XmTestLib/config.py	Thu Dec 01 03:39:23 2005 +0000
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,4 +0,0 @@
     3.4 -#!/usr/bin/python
     3.5 -
     3.6 -USE_BLKDEV_FOR_ROOT = False
     3.7 -
     4.1 --- a/tools/xm-test/tests/create/05_create_noroot_noram_neg.py	Thu Dec 01 03:39:23 2005 +0000
     4.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.3 @@ -1,26 +0,0 @@
     4.4 -#!/usr/bin/python
     4.5 -
     4.6 -# Copyright (C) International Business Machines Corp., 2005
     4.7 -# Author: Li Ge <lge@us.ibm.com>
     4.8 -
     4.9 -# Test description: 
    4.10 -# Negative Test:
    4.11 -# Test for creating domain with no ramdisk and no root. Verify fail.
    4.12 -
    4.13 -import sys
    4.14 -import re
    4.15 -import time
    4.16 -
    4.17 -from XmTestLib import *
    4.18 -
    4.19 -status, output = traceCommand("xm create /dev/null name=NOROOT memory=64 kernel=%s" % getDefaultKernel())
    4.20 -
    4.21 -# sleep a while to wait for the kernel fails to mount root and NOROOT
    4.22 -# goes away from the xm list
    4.23 -time.sleep(15)
    4.24 -
    4.25 -eyecatcher = "NOROOT"
    4.26 -status, output = traceCommand("xm list")
    4.27 -where = output.find(eyecatcher)
    4.28 -if where != -1:
    4.29 -	FAIL("xm create test05 passed with no root and no ramdisk. Expected result: Fail.")
     5.1 --- a/tools/xm-test/tests/create/Makefile.am	Thu Dec 01 03:39:23 2005 +0000
     5.2 +++ b/tools/xm-test/tests/create/Makefile.am	Thu Dec 01 03:40:26 2005 +0000
     5.3 @@ -4,7 +4,6 @@ TESTS = 01_create_basic_pos.test \
     5.4  	02_create_noparm_neg.test \
     5.5  	03_create_badparm_neg.test \
     5.6  	04_create_conflictname_neg.test \
     5.7 -	05_create_noroot_noram_neg.test \
     5.8  	06_create_mem_neg.test \
     5.9  	07_create_mem64_pos.test \
    5.10  	08_create_mem128_pos.test \
     6.1 --- a/tools/xm-test/tests/migrate/01_migrate_localhost_pos.py	Thu Dec 01 03:39:23 2005 +0000
     6.2 +++ b/tools/xm-test/tests/migrate/01_migrate_localhost_pos.py	Thu Dec 01 03:40:26 2005 +0000
     6.3 @@ -38,8 +38,8 @@ except ConsoleError, e:
     6.4  try:
     6.5      # Activate the console
     6.6      console.sendInput("foo")
     6.7 -    # Make sure a command succeeds
     6.8 -    run = console.runCmd("ls /bin")
     6.9 +    # Set a variable to check on the other side
    6.10 +    run = console.runCmd("foo=bar")
    6.11  except ConsoleError, e:
    6.12      FAIL(str(e))
    6.13  
    6.14 @@ -66,18 +66,21 @@ if (old_domid == new_domid):
    6.15  # Attach a console to it
    6.16  try:
    6.17      console = XmConsole(domain.getName(), historySaveCmds=True)
    6.18 +    console.debugMe = True
    6.19  except ConsoleError, e:
    6.20      pass
    6.21  
    6.22 +console.sendInput("ls")
    6.23 +
    6.24  # Run 'ls'
    6.25  try:
    6.26      # Check the dmesg output on the domU
    6.27 -    run = console.runCmd("ls /bin")
    6.28 +    run = console.runCmd("echo xx$foo")
    6.29  except ConsoleError, e:
    6.30      FAIL(str(e))
    6.31 -
    6.32 -if not re.search("chmod", run["output"]):
    6.33 -    FAIL("invalid console output from ls after migration")
    6.34 +    
    6.35 +if not re.search("bar", run["output"]):
    6.36 +    FAIL("Migrated domain has been reset")
    6.37  
    6.38  # Close the console
    6.39  console.closeConsole()
     7.1 --- a/tools/xm-test/tests/network-attach/03_network_attach_detach_multiple_pos.py	Thu Dec 01 03:39:23 2005 +0000
     7.2 +++ b/tools/xm-test/tests/network-attach/03_network_attach_detach_multiple_pos.py	Thu Dec 01 03:40:26 2005 +0000
     7.3 @@ -24,6 +24,9 @@ except DomainError, e:
     7.4  # Attach a console to it
     7.5  try:
     7.6      console = XmConsole(domain.getName(), historySaveCmds=True)
     7.7 +    # network-detach is crashing, so we enable console debugging
     7.8 +    # for now, so that reports include the oops
     7.9 +    console.debugMe = True
    7.10  except ConsoleError, e:
    7.11      FAIL(str(e))
    7.12  
     8.1 --- a/tools/xm-test/tests/restore/01_restore_basic_pos.py	Thu Dec 01 03:39:23 2005 +0000
     8.2 +++ b/tools/xm-test/tests/restore/01_restore_basic_pos.py	Thu Dec 01 03:40:26 2005 +0000
     8.3 @@ -25,6 +25,8 @@ except DomainError, e:
     8.4  # Make sure the domain isn't DOA
     8.5  try:
     8.6      console = XmConsole(domain.getName())
     8.7 +    console.sendInput("input")
     8.8 +    console.runCmd("foo=bar")
     8.9  except ConsoleError, e:
    8.10      FAIL(str(e))
    8.11  
    8.12 @@ -63,9 +65,12 @@ if not isDomainRunning(domain.getName())
    8.13  # Make sure it's alive
    8.14  try:
    8.15      newConsole = XmConsole(domain.getName())
    8.16 -    run = newConsole.runCmd("ls")
    8.17 -    if run["return"] != 0:
    8.18 -        FAIL("Unable to read from restored domain")
    8.19 +    # Enable debug dumping because this generates a Oops on x86_64
    8.20 +    newConsole.debugMe = True
    8.21 +    newConsole.sendInput("ls")
    8.22 +    run = newConsole.runCmd("echo xx$foo")
    8.23 +    if not re.search("bar", run["output"]):
    8.24 +        FAIL("Restored domain has been reset")
    8.25  except ConsoleError, e:
    8.26      FAIL("Restored domain is dead (%s)" % str(e))
    8.27  
     9.1 --- a/tools/xm-test/tests/restore/04_restore_withdevices_pos.py	Thu Dec 01 03:39:23 2005 +0000
     9.2 +++ b/tools/xm-test/tests/restore/04_restore_withdevices_pos.py	Thu Dec 01 03:40:26 2005 +0000
     9.3 @@ -90,6 +90,11 @@ if s != 0:
     9.4  
     9.5  try:
     9.6      console = XmConsole(domain.getName())
     9.7 +    # Enable debug dumping, as this causes an Oops on x86_64
     9.8 +    console.debugMe = True
     9.9 +
    9.10 +    # In case the domain is rebooted
    9.11 +    console.sendInput("ls")
    9.12  
    9.13      run = console.runCmd("ls | grep proc")
    9.14      if run["return"] != 0: