OBS User unknown 2007-07-25 00:03:48 +00:00 committed by Git OBS Bridge
parent 4c207325e4
commit 8c81bc310e
9 changed files with 176 additions and 78 deletions

View File

@ -0,0 +1,21 @@
# HG changeset patch
# User kfraser@localhost.localdomain
# Date 1180086787 -3600
# Node ID a717cb2fac908ba82619ba52e34a2cc77942df4f
# Parent 9073caff4b63490bc63bbe2b0b48fd06cc47d6c6
xend: Fix checkname so that it detects duplicate domains.
Signed-off-by: Mats Petersson <mats.petersson@amd.com>
Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -2057,7 +2057,7 @@ class XendDomainInfo:
raise VmError('Invalid VM Name')
dom = XendDomain.instance().domain_lookup_nr(name)
- if dom and dom.info['uuid'] != self.info['uuid']:
+ if dom and dom.domid != self.domid:
raise VmError("VM name '%s' already exists%s" %
(name,
dom.domid is not None and

27
15587-domid-reset.patch Normal file
View File

@ -0,0 +1,27 @@
# HG changeset patch
# User kfraser@localhost.localdomain
# Date 1184330609 -3600
# Node ID 00fabe66d79e46de1d1318fd545ddbde734a8137
# Parent 049e4e61644d6dbdae15802dafb7db8e9c5e70fc
[Xend] Fix problem when destroying VMs using the Xen-API
When domains are destroyed/suspend-resume/migration using the Xen-API
things break due to the domid not having been reset. This patch fixes
this. This is the best place I found for fixing this problem. I could
not push this line into _stateSet() for the case of DOM_STATE_HALTED
and left a comment regarding this.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -1562,6 +1562,7 @@ class XendDomainInfo:
log.exception("Removing domain path failed.")
self._stateSet(DOM_STATE_HALTED)
+ self.domid = None # Do not push into _stateSet()!
finally:
self.refresh_shutdown_lock.release()

View File

@ -0,0 +1,40 @@
# HG changeset patch
# User kfraser@localhost.localdomain
# Date 1184749804 -3600
# Node ID 2cbaa58b131172dd7b35c384cbe2027e3893e26f
# Parent 9c077fc8ccf132b5e0074e44edda83bf9152675f
[xend][xen-api] Save new memory values in domain config when calling
VM.set_memory_[dynamic|static]_[min|max] via Xen API.
Signed-off-by: Jim Fehlig <jfehlig@novell.com>
Index: xen-3.1-testing/tools/python/xen/xend/XendAPI.py
===================================================================
--- xen-3.1-testing.orig/tools/python/xen/xend/XendAPI.py
+++ xen-3.1-testing/tools/python/xen/xend/XendAPI.py
@@ -1393,22 +1393,22 @@ class XendAPI(object):
def VM_set_memory_dynamic_max(self, session, vm_ref, mem):
dom = XendDomain.instance().get_vm_by_uuid(vm_ref)
dom.set_memory_dynamic_max(int(mem))
- return xen_api_success_void()
+ return self._VM_save(dom)
def VM_set_memory_dynamic_min(self, session, vm_ref, mem):
dom = XendDomain.instance().get_vm_by_uuid(vm_ref)
dom.set_memory_dynamic_min(int(mem))
- return xen_api_success_void()
+ return self._VM_save(dom)
def VM_set_memory_static_max(self, session, vm_ref, mem):
dom = XendDomain.instance().get_vm_by_uuid(vm_ref)
dom.set_memory_static_max(int(mem))
- return xen_api_success_void()
+ return self._VM_save(dom)
def VM_set_memory_static_min(self, session, vm_ref, mem):
dom = XendDomain.instance().get_vm_by_uuid(vm_ref)
dom.set_memory_static_min(int(mem))
- return xen_api_success_void()
+ return self._VM_save(dom)
def VM_set_memory_dynamic_max_live(self, session, vm_ref, mem):
dom = XendDomain.instance().get_vm_by_uuid(vm_ref)

View File

@ -47,8 +47,7 @@ virtualization (the Linux kernel needs to be changed slightly, to make the
virtualization easier). It results in very good performance (consult
http://www.cl.cam.ac.uk/research/srg/netos/xen/performance.html) but has the
downside of unchanged operating systems not being supported. However, new
hardware features (e.g., Intel's VT and AMD's V) are overcoming this
limitation.
hardware features (e.g., Intel VT and AMD-V) are overcoming this limitation.
Terminology
@ -74,7 +73,7 @@ machines".
The acronym "HVM" refers to a hardware-assisted virtual machine. These are
VMs that have not been modified (e.g., Windows) and therefore need hardware
support such as Intel's VT or AMD's V to run on Xen.
support such as Intel VT or AMD-V to run on Xen.
Kernels
@ -200,15 +199,6 @@ boots. (See "Network Troubleshooting" below.) XenSource has been allocated a
range of MAC addresses with the OUI of 00-16-3E. By using MACs from this
range you can be sure they will not conflict with any physical adapters.
Note that older paravirtualized SUSE Linux (older than SLES 10 SP1) will
default to using a text-based installation. To perform a graphical
installation of these OSs, add "vnc=1" to the "Additional Arguments" field
(found on the "Operating System Installation" page in the wizard). See this
page for further guidance on installing via VNC:
http://www.novell.com/coolsolutions/feature/15568.html
SLES 10 SP1 and later will automatically install graphically, as they contain
the paravirtual frame buffer driver.
Once you have the VM configured, click "OK". The wizard will now create a
configuration file for the VM, and create a disk image. The disk image will
exist in /var/lib/xen/images, and a corresponding config file will exist in
@ -380,12 +370,6 @@ veth0 will take over the old MAC address, be renamed to eth0, and be enabled
(ifup'ed). vif0.0 and peth0 are then enslaved to xenbr0. veth0 is connected
to vif0.0 behind the scenes.
Caveats:
- rcSuSEfirewall is not currently called from the Xen networking scripts, but
implicitly started by the ifup call; it won't get restarted on starting
additional domains.
This issue may be addressed in a future update.
Configuring network interfaces when using Xen bridging:
Due to the renaming of network interfaces by the network-bridge script
(e.g. eth0 to peth0), network interfaces should not be configured or restarted

View File

@ -1,22 +0,0 @@
Index: xen-unstable/tools/python/xen/xend/XendBootloader.py
===================================================================
--- xen-unstable.orig/tools/python/xen/xend/XendBootloader.py
+++ xen-unstable/tools/python/xen/xend/XendBootloader.py
@@ -25,7 +25,7 @@ import pty, termios, fcntl
from xen.lowlevel import ptsname
def bootloader(blexec, disk, dom, quiet = False, blargs = '', kernel = '',
- ramdisk = '', kernel_args = ''):
+ ramdisk = '', kernel_args = '', dryrun = False):
"""Run the boot loader executable on the given disk and return a
config image.
@param blexec Binary to use as the boot loader
@@ -91,6 +91,8 @@ def bootloader(blexec, disk, dom, quiet
args.append("--args=%s" % kernel_args)
if quiet:
args.append("-q")
+ if dryrun:
+ args.append("--dryrun")
args.append("--output=%s" % fifo)
if blargs:
args.extend(shlex.split(blargs))

View File

@ -1,7 +1,7 @@
Index: xen-3.0.5-testing/docs/Makefile
Index: xen-3.1-testing/docs/Makefile
===================================================================
--- xen-3.0.5-testing.orig/docs/Makefile
+++ xen-3.0.5-testing/docs/Makefile
--- xen-3.1-testing.orig/docs/Makefile
+++ xen-3.1-testing/docs/Makefile
@@ -90,7 +90,8 @@ install: all
$(INSTALL_DIR) $(DESTDIR)$(mandir)
cp -dR man1 $(DESTDIR)$(mandir)
@ -22,10 +22,10 @@ Index: xen-3.0.5-testing/docs/Makefile
+ ln -sf $*.html html.done/$*/index.html
+ rm -rf html/
+
Index: xen-3.0.5-testing/tools/xentrace/Makefile
Index: xen-3.1-testing/tools/xentrace/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/xentrace/Makefile
+++ xen-3.0.5-testing/tools/xentrace/Makefile
--- xen-3.1-testing.orig/tools/xentrace/Makefile
+++ xen-3.1-testing/tools/xentrace/Makefile
@@ -38,14 +38,14 @@ install: build
[ -d $(DESTDIR)/usr/bin ] || $(INSTALL_DIR) $(DESTDIR)/usr/bin
[ -z "$(LIBBIN)" ] || [ -d $(DESTDIR)/usr/$(LIBDIR)/xen/bin ] || \
@ -47,10 +47,10 @@ Index: xen-3.0.5-testing/tools/xentrace/Makefile
.PHONY: clean
clean:
Index: xen-3.0.5-testing/tools/examples/Makefile
Index: xen-3.1-testing/tools/examples/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/examples/Makefile
+++ xen-3.0.5-testing/tools/examples/Makefile
--- xen-3.1-testing.orig/tools/examples/Makefile
+++ xen-3.1-testing/tools/examples/Makefile
@@ -41,18 +41,6 @@ XEN_HOTPLUG_SCRIPTS = xen-backend.agent
UDEV_RULES_DIR = /etc/udev
UDEV_RULES = xen-backend.rules
@ -100,10 +100,10 @@ Index: xen-3.0.5-testing/tools/examples/Makefile
done
.PHONY: clean
Index: xen-3.0.5-testing/tools/security/Makefile
Index: xen-3.1-testing/tools/security/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/security/Makefile
+++ xen-3.0.5-testing/tools/security/Makefile
--- xen-3.1-testing.orig/tools/security/Makefile
+++ xen-3.1-testing/tools/security/Makefile
@@ -69,9 +69,9 @@ install: all $(ACM_CONFIG_FILE)
$(INSTALL_DIR) $(DESTDIR)$(ACM_SECGEN_CGIDIR)
$(INSTALL_PROG) $(ACM_INST_CGI) $(DESTDIR)$(ACM_SECGEN_CGIDIR)
@ -116,10 +116,10 @@ Index: xen-3.0.5-testing/tools/security/Makefile
endif
else
.PHONY: all
Index: xen-3.0.5-testing/tools/pygrub/Makefile
Index: xen-3.1-testing/tools/pygrub/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/pygrub/Makefile
+++ xen-3.0.5-testing/tools/pygrub/Makefile
--- xen-3.1-testing.orig/tools/pygrub/Makefile
+++ xen-3.1-testing/tools/pygrub/Makefile
@@ -16,7 +16,7 @@ install: all
$(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
else
@ -129,10 +129,10 @@ Index: xen-3.0.5-testing/tools/pygrub/Makefile
$(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
endif
Index: xen-3.0.5-testing/tools/python/Makefile
Index: xen-3.1-testing/tools/python/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/python/Makefile
+++ xen-3.0.5-testing/tools/python/Makefile
--- xen-3.1-testing.orig/tools/python/Makefile
+++ xen-3.1-testing/tools/python/Makefile
@@ -60,7 +60,7 @@ install: install-messages install-dtd
CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)/usr" --prefix="" --force --install-lib="$(DESTDIR)$(LIBPATH)/python"
else
@ -142,10 +142,10 @@ Index: xen-3.0.5-testing/tools/python/Makefile
endif
install-dtd: all
Index: xen-3.0.5-testing/tools/Makefile
Index: xen-3.1-testing/tools/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/Makefile
+++ xen-3.0.5-testing/tools/Makefile
--- xen-3.1-testing.orig/tools/Makefile
+++ xen-3.1-testing/tools/Makefile
@@ -25,7 +25,6 @@ SUBDIRS-$(LIBXENAPI_BINDINGS) += libxen
# These don't cross-compile
ifeq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
@ -154,10 +154,10 @@ Index: xen-3.0.5-testing/tools/Makefile
endif
.PHONY: all
Index: xen-3.0.5-testing/docs/Docs.mk
Index: xen-3.1-testing/docs/Docs.mk
===================================================================
--- xen-3.0.5-testing.orig/docs/Docs.mk
+++ xen-3.0.5-testing/docs/Docs.mk
--- xen-3.1-testing.orig/docs/Docs.mk
+++ xen-3.1-testing/docs/Docs.mk
@@ -8,6 +8,6 @@ POD2MAN := pod2man
DOT := dot
NEATO := neato
@ -167,10 +167,10 @@ Index: xen-3.0.5-testing/docs/Docs.mk
+pkgdocdir := $(DOCDIR)
+mandir := $(MANDIR)
Index: xen-3.0.5-testing/tools/misc/xen-python-path
Index: xen-3.1-testing/tools/misc/xen-python-path
===================================================================
--- xen-3.0.5-testing.orig/tools/misc/xen-python-path
+++ xen-3.0.5-testing/tools/misc/xen-python-path
--- xen-3.1-testing.orig/tools/misc/xen-python-path
+++ xen-3.1-testing/tools/misc/xen-python-path
@@ -30,7 +30,8 @@ import sys
for p in ['python%s' % sys.version[:3], 'python']:
@ -181,10 +181,10 @@ Index: xen-3.0.5-testing/tools/misc/xen-python-path
if os.path.exists(os.path.join(d, AUXBIN)):
sys.path.append(d)
import xen.util.auxbin
Index: xen-3.0.5-testing/tools/xenstore/Makefile
Index: xen-3.1-testing/tools/xenstore/Makefile
===================================================================
--- xen-3.0.5-testing.orig/tools/xenstore/Makefile
+++ xen-3.0.5-testing/tools/xenstore/Makefile
--- xen-3.1-testing.orig/tools/xenstore/Makefile
+++ xen-3.1-testing/tools/xenstore/Makefile
@@ -24,6 +24,7 @@ TESTENV = XENSTORED_ROOTDIR=$(TESTDIR)
CLIENTS := xenstore-exists xenstore-list xenstore-read xenstore-rm xenstore-chmod
CLIENTS += xenstore-write
@ -237,3 +237,16 @@ Index: xen-3.0.5-testing/tools/xenstore/Makefile
$(INSTALL_PROG) xenstore-control $(DESTDIR)/usr/bin
$(INSTALL_PROG) xenstore-ls $(DESTDIR)/usr/bin
$(INSTALL_DIR) $(DESTDIR)/usr/$(LIBDIR)
Index: xen-3.1-testing/tools/misc/Makefile
===================================================================
--- xen-3.1-testing.orig/tools/misc/Makefile
+++ xen-3.1-testing/tools/misc/Makefile
@@ -14,7 +14,7 @@ TARGETS-$(CONFIG_X86) += xen-detect
TARGETS := $(TARGETS-y)
INSTALL_BIN = $(TARGETS) xencons
-INSTALL_SBIN = netfix xm xen-bugtool xen-python-path xend xenperf
+INSTALL_SBIN = netfix xm xen-bugtool xen-python-path xend
.PHONY: all
all: build

View File

@ -1,3 +1,21 @@
-------------------------------------------------------------------
Mon Jul 23 12:57:45 MDT 2007 - ccoffing@novell.com
- Drop xen-bootloader-dryrun.diff; not needed for xen 3.1
- rpmlint: Actually apply patch for #280637
- rpmlint: Rename logrotate config from xend to xen
- Don't package xenperf twice
- xen-detect is a domU tool
-------------------------------------------------------------------
Mon Jul 23 12:06:55 MDT 2007 - jfehlig@novell.com
- Added upstream patches that fix various bugs
+ 15168 fixes check for duplicate domains
+ 15587 resets domain ID and fixes problems with domain state
via Xen API
+ 15609 stores memory values changed via Xen API
-------------------------------------------------------------------
Thu Jul 19 13:41:15 MDT 2007 - ccoffing@novell.com

View File

@ -34,7 +34,7 @@ BuildRequires: glibc-32bit glibc-devel-32bit
BuildRequires: kernel-source kernel-syms xorg-x11
%endif
Version: 3.1.0_15042
Release: 12
Release: 14
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@ -46,7 +46,7 @@ Source3: boot.xen
Source4: boot.local.xenU
Source5: init.xend
Source6: init.xendomains
Source7: logrotate.xend.conf
Source7: logrotate.conf
Source8: domUloader.py
Source9: xmexample.domUloader
Source10: xmexample.disks
@ -79,6 +79,9 @@ Patch18: 15433-pae-ptwr-check.patch
Patch19: 15444-vmxassist-p2r.patch
Patch20: 15480-man-xm.patch
Patch21: rtl8139-data-corruption.patch
Patch22: 15168-check-dup-domians.patch
Patch23: 15587-domid-reset.patch
Patch24: 15609-save-mem-values.patch
# Our patches
Patch100: xen-config.diff
Patch101: xend-config.diff
@ -89,7 +92,6 @@ Patch106: xen-changeset.diff
Patch107: xen-paths.diff
Patch108: xen-xmexample.diff
Patch109: xen-xmexample-nbd.diff
Patch110: xen-bootloader-dryrun.diff
Patch111: xen-domUloader.diff
Patch113: xen-network-bridge.diff
Patch114: xen-no-dummy-nfs-ip.diff
@ -547,6 +549,9 @@ Authors:
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
@ -556,7 +561,6 @@ Authors:
%patch107 -p1
%patch108 -p1
%patch109 -p1
%patch110 -p1
%patch111 -p1
%patch113 -p1
%patch114 -p1
@ -618,6 +622,7 @@ Authors:
%patch208 -p1
%patch209 -p1
%patch210 -p1
%patch211 -p1
XEN_EXTRAVERSION=%version-%release
XEN_EXTRAVERSION=${XEN_EXTRAVERSION#%{xvers}}
sed -i "s/XEN_EXTRAVERSION[\t ]*.=.*\$/XEN_EXTRAVERSION = $XEN_EXTRAVERSION/" xen/Makefile
@ -729,7 +734,7 @@ install -m644 %SOURCE17 $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.xend
rm $RPM_BUILD_ROOT/etc/xen/scripts/block-*nbd
install -m755 %SOURCE11 %SOURCE12 %SOURCE13 %SOURCE18 $RPM_BUILD_ROOT/etc/xen/scripts/
# logrotate
install -m644 -D %SOURCE7 $RPM_BUILD_ROOT/etc/logrotate.d/xend
install -m644 -D %SOURCE7 $RPM_BUILD_ROOT/etc/logrotate.d/xen
# directories
mkdir -p $RPM_BUILD_ROOT/var/lib/xenstored
mkdir -p $RPM_BUILD_ROOT/var/lib/xen/images
@ -793,8 +798,8 @@ rm -f $RPM_BUILD_ROOT/%pysite/*.egg-info
%files tools
%defattr(-,root,root)
/usr/bin/lomount
/usr/bin/xen-detect
/usr/bin/xencons
/usr/bin/xenperf
/usr/bin/xenstore*
/usr/bin/xentrace*
/usr/sbin/blktapctrl
@ -837,7 +842,7 @@ rm -f $RPM_BUILD_ROOT/%pysite/*.egg-info
%dir /var/run/xenstored
/etc/init.d/xend
/etc/init.d/xendomains
%config /etc/logrotate.d/xend
%config /etc/logrotate.d/xen
%dir %attr(700,root,root) /etc/xen
/etc/xen/auto
%config /etc/xen/examples
@ -864,6 +869,7 @@ rm -f $RPM_BUILD_ROOT/%pysite/*.egg-info
%files tools-domU
%defattr(-,root,root)
/usr/bin/xen-detect
/bin/xenstore-*
%files tools-ioemu
@ -891,7 +897,6 @@ rm -f $RPM_BUILD_ROOT/%pysite/*.egg-info
%{_libdir}/libxen*.a
%{_libdir}/libxen*.so
/usr/bin/serial-split
/usr/bin/xenperf
/usr/include/blktaplib.h
/usr/include/fsimage*
/usr/include/xen*.h
@ -929,6 +934,18 @@ rm -f $RPM_BUILD_ROOT/%pysite/*.egg-info
/sbin/ldconfig
%changelog
* Mon Jul 23 2007 - ccoffing@novell.com
- Drop xen-bootloader-dryrun.diff; not needed for xen 3.1
- rpmlint: Actually apply patch for #280637
- rpmlint: Rename logrotate config from xend to xen
- Don't package xenperf twice
- xen-detect is a domU tool
* Mon Jul 23 2007 - jfehlig@novell.com
- Added upstream patches that fix various bugs
+ 15168 fixes check for duplicate domains
+ 15587 resets domain ID and fixes problems with domain state
via Xen API
+ 15609 stores memory values changed via Xen API
* Thu Jul 19 2007 - ccoffing@novell.com
- BuildRequires LibVNCServer-devel
- Rotate all logs.