Hello community,
here is the log from the commit of package xen
checked in at Thu Dec 20 16:46:38 CET 2007.
--------
--- arch/i386/xen/xen.changes 2007-11-29 21:56:24.000000000 +0100
+++ /mounts/work_src_done/STABLE/xen/xen.changes 2007-12-20 16:34:28.474333000 +0100
@@ -1,0 +2,5 @@
+Wed Dec 19 16:16:36 MST 2007 - carnold@novell.com
+
+- Update to xen 3.2 RC2. Changeset 16646
+
+-------------------------------------------------------------------
Old:
----
15048-localtime.diff
15054-hvm-save-restore.patch
15059-check-libvncserver.patch
15060-check-xenapi.patch
15061-kill-sh_mapcache.patch
15128_xend_dev_disconnect.patch
15152-save-restore-fix-cpu-affinity.patch
15153_xend_dom_teardown.patch
15157_xend_device_destroy.patch
15168-check-dup-domians.patch
15173-32on64-runstate.patch
15183-32on64-multicall.patch
15185-vtpr.patch
15189-pmtimer.patch
15190-clocksource-opt.patch
15211-partial-changeset.patch
15217-hvm-save-restore.patch
15228-hvm-usb-windows-crash.patch
15230-hvm-usb-windows-crash.patch
15234-hvm-usb-windows-crash.patch
15250_xend_device_destroy.patch
15257-hvm-save-restore.patch
15273_libxenapi.patch
15274_xenapi.patch
15275_xenapi.patch
15277-hvm-intel2amd-windows-migrate.patch
15381-log-svm-npt.patch
15383-hvm-usb-windows-crash.patch
15389-32on64-memop-error-path.patch
15390-32on64-setup-error-path.patch
15391-32on64-setup-pgtable.patch
15410-domain-restore.patch
15416-x86_64-failsafe.patch
15418-hvm-usb-windows-crash.patch
15433-pae-ptwr-check.patch
15434-irq-permissions.patch
15444-vmxassist-p2r.patch
15469-hvm-save-restore.patch
15477_dev_attach.patch
15480-man-xm.patch
15528-hvm-sles9-install.patch
15587-domid-reset.patch
15595-rtl8139-data-corruption.patch
15596-rtl8139-crc-fix.patch
15609-save-mem-values.patch
15642_uuid_unique.patch
15645-hvm-save-restore.patch
15649_xenapi.patch
15650_xenapi.patch
15651_xenapi.patch
15689_dev_destroy_cleanup.patch
15691-hvm-save-restore.patch
15693-32on64-gnttab-err.patch
15716_dev_detach.patch
16157-xenmon-security.patch
32on64-call-gates.patch
32on64-cpuid.patch
32on64-ioemu.patch
dmi-table.patch
edd.patch
edid.patch
fix_15716.patch
fix-ioemu-vnc-shift-key.patch
fix-vncfb-shift-key.patch
guest-copy.patch
hvm-debug-msg.patch
hvm-efer.patch
hvm-hypercall-context.patch
hvm-hypercall-debug.patch
hvm-pio-read.patch
hvm-shared-info-size.patch
hvm_vnc.diff
intpte_t-cast.patch
inval-sh-ldt.patch
pci-passthru-reboot-fix.patch
ptwr-sanity.patch
realmode.patch
svm-reg-save.patch
usercopy-gcc43-fix.patch
vgacon-50-lines.patch
vgacon-keep.patch
vmx-check-descr.patch
vmx-no-cstar.patch
x86-emul-rf.patch
x86-machine-check.patch
x86-nmi-inject.patch
x86-page-cacheability.patch
xen-3.1-testing-src.tar.bz2
xend_mem_leak.diff
xend-reboot.diff
New:
----
multinet-common.sh
svm-lmsl.patch
x86_emulate-eflags.patch
xen-3.2-testing-src.tar.bz2
xen-dhcpd
xend-relocation.sh
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xen.spec ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:11.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:11.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package xen (Version 3.1.0_15042)
+# spec file for package xen (Version 3.2.0_16646)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,14 +11,13 @@
# norootforbuild
Name: xen
-%define xvers 3.1
+%define xvers 3.2
%define xvermaj 3
-%define changeset 15042
-%define xen_build_dir xen-3.1-testing
+%define changeset 16646
+%define xen_build_dir xen-3.2-testing
%if %sles_version
%define with_kmp 1
%else
-# Not yet ported to openSUSE 10.3 kernel
%define with_kmp 0
%endif
BuildRequires: LibVNCServer-devel SDL-devel autoconf automake bin86 curl-devel dev86 graphviz latex2html libjpeg-devel libxml2-devel openssl openssl-devel python-devel transfig
@@ -33,14 +32,14 @@
%if %{?with_kmp}0
BuildRequires: kernel-source kernel-syms module-init-tools xorg-x11
%endif
-Version: 3.1.0_15042
-Release: 73
+Version: 3.2.0_16646
+Release: 1
License: GPL v2 only
Group: System/Kernel
AutoReqProv: on
PreReq: %insserv_prereq %fillup_prereq
Summary: Xen Virtualization: Hypervisor (aka VMM aka Microkernel)
-Source0: xen-3.1-testing-src.tar.bz2
+Source0: xen-3.2-testing-src.tar.bz2
Source2: README.SuSE
Source3: boot.xen
Source4: boot.local.xenU
@@ -56,81 +55,26 @@
Source16: xmclone.sh
Source17: sysconfig.xend
Source18: network-multinet
+Source19: multinet-common.sh
+Source20: xen-dhcpd
+Source21: xend-relocation.sh
# Upstream patches
-Patch0: 15048-localtime.diff
-Patch1: 15054-hvm-save-restore.patch
-Patch2: 15059-check-libvncserver.patch
-Patch3: 15060-check-xenapi.patch
-Patch4: 15061-kill-sh_mapcache.patch
-Patch5: 15128_xend_dev_disconnect.patch
-Patch6: 15152-save-restore-fix-cpu-affinity.patch
-Patch7: 15153_xend_dom_teardown.patch
-Patch8: 15157_xend_device_destroy.patch
-Patch9: 15168-check-dup-domians.patch
-Patch10: 15173-32on64-runstate.patch
-Patch11: 15183-32on64-multicall.patch
-Patch12: 15185-vtpr.patch
-Patch13: 15189-pmtimer.patch
-Patch14: 15190-clocksource-opt.patch
-Patch15: 15211-partial-changeset.patch
-Patch16: 15217-hvm-save-restore.patch
-Patch17: 15228-hvm-usb-windows-crash.patch
-Patch18: 15230-hvm-usb-windows-crash.patch
-Patch19: 15234-hvm-usb-windows-crash.patch
-Patch20: 15250_xend_device_destroy.patch
-Patch21: 15257-hvm-save-restore.patch
-Patch22: 15273_libxenapi.patch
-Patch23: 15274_xenapi.patch
-Patch24: 15275_xenapi.patch
-Patch25: 15277-hvm-intel2amd-windows-migrate.patch
-Patch26: 15381-log-svm-npt.patch
-Patch27: 15383-hvm-usb-windows-crash.patch
-Patch28: 15389-32on64-memop-error-path.patch
-Patch29: 15390-32on64-setup-error-path.patch
-Patch30: 15391-32on64-setup-pgtable.patch
-Patch31: 15410-domain-restore.patch
-Patch32: 15416-x86_64-failsafe.patch
-Patch33: 15418-hvm-usb-windows-crash.patch
-Patch34: 15433-pae-ptwr-check.patch
-Patch35: 15444-vmxassist-p2r.patch
-Patch36: 15469-hvm-save-restore.patch
-Patch37: 15477_dev_attach.patch
-Patch38: 15480-man-xm.patch
-Patch39: 15528-hvm-sles9-install.patch
-Patch40: 15587-domid-reset.patch
-Patch41: 15595-rtl8139-data-corruption.patch
-Patch42: 15596-rtl8139-crc-fix.patch
-Patch43: 15609-save-mem-values.patch
-Patch44: 15642_uuid_unique.patch
-Patch45: 15645-hvm-save-restore.patch
-Patch46: 15649_xenapi.patch
-Patch47: 15650_xenapi.patch
-Patch48: 15651_xenapi.patch
-Patch49: 15689_dev_destroy_cleanup.patch
-Patch50: 15691-hvm-save-restore.patch
-Patch51: 15693-32on64-gnttab-err.patch
-Patch52: 15716_dev_detach.patch
-Patch53: fix_15716.patch
-Patch54: hvm_vnc.diff
-Patch55: xend_mem_leak.diff
-Patch56: 16157-xenmon-security.patch
-Patch57: 15434-irq-permissions.patch
# Our patches
Patch100: xen-config.diff
Patch101: xend-config.diff
Patch102: xen-destdir.diff
-Patch104: xen-rpmoptflags.diff
-Patch105: xen-warnings.diff
-Patch106: xen-changeset.diff
-Patch107: xen-paths.diff
-Patch108: xen-xmexample.diff
-Patch109: xen-xmexample-nbd.diff
+Patch103: xen-rpmoptflags.diff
+Patch104: xen-warnings.diff
+Patch105: xen-changeset.diff
+Patch106: xen-paths.diff
+Patch107: xen-xmexample.diff
+Patch108: xen-xmexample-nbd.diff
Patch111: xen-domUloader.diff
-Patch114: xen-no-dummy-nfs-ip.diff
-Patch115: serial-split.patch
-Patch116: xen-xm-top-needs-root.diff
-Patch117: xen-tightvnc-args.diff
-Patch118: xen-max-free-mem.diff
+Patch112: xen-no-dummy-nfs-ip.diff
+Patch113: serial-split.patch
+Patch114: xen-xm-top-needs-root.diff
+Patch115: xen-tightvnc-args.diff
+Patch116: xen-max-free-mem.diff
Patch120: xen-ioapic-ack-default.diff
Patch121: xen-lowmem-emergency-pool.diff
Patch122: block-losetup-retry.diff
@@ -144,60 +88,32 @@
Patch131: tools-xc_kexec.diff
Patch132: tools-kboot.diff
Patch133: libxen_permissive.patch
-Patch135: xen-ioemu-hvm-pv-support.diff
-Patch136: xenapi-console-protocol.patch
-Patch137: xen-disable-qemu-monitor.diff
-Patch138: supported_module.diff
-Patch139: disable_emulated_device.diff
-Patch140: pv-driver-build.patch
-Patch141: qemu-security-etch1.diff
-Patch142: netfront_mac.patch
-Patch143: vnc-i18n-keys.diff
-Patch144: rpmlint.diff
-Patch145: cdrom-removable.patch
+Patch134: xen-ioemu-hvm-pv-support.diff
+Patch135: xenapi-console-protocol.patch
+Patch136: xen-disable-qemu-monitor.diff
+Patch137: supported_module.diff
+Patch138: disable_emulated_device.diff
+Patch140: qemu-security-etch1.diff
+Patch141: netfront_mac.patch
+Patch142: vnc-i18n-keys.diff
+Patch143: rpmlint.diff
+Patch144: cdrom-removable.patch
Patch150: bridge-suse.diff
Patch151: bridge-bonding.diff
Patch152: bridge-hostonly.diff
Patch153: bridge-vlan.diff
-Patch154: pci-passthru-reboot-fix.patch
-Patch155: keymap_nl-be.patch
-Patch156: svm-cr8-performance.diff
-Patch157: xend-reboot.diff
-Patch158: fix-ioemu-vnc-shift-key.patch
-Patch159: fix-vncfb-shift-key.patch
-Patch160: usercopy-gcc43-fix.patch
+Patch154: keymap_nl-be.patch
+Patch155: svm-cr8-performance.diff
# Patches from Jan
-Patch200: inval-sh-ldt.patch
-Patch201: 32on64-cpuid.patch
-Patch202: 32on64-ioemu.patch
-Patch203: intpte_t-cast.patch
-Patch204: ptwr-sanity.patch
-Patch205: hvm-pio-read.patch
-Patch206: hvm-shared-info-size.patch
-Patch207: hvm-hypercall-context.patch
-Patch208: hvm-efer.patch
-Patch209: hvm-hypercall-debug.patch
-Patch210: svm-reg-save.patch
-Patch211: vmx-no-cstar.patch
-Patch212: hvm-debug-msg.patch
-Patch213: guest-copy.patch
-Patch214: x86-page-cacheability.patch
-Patch215: realmode.patch
-Patch216: edd.patch
-Patch217: edid.patch
-Patch218: 32on64-call-gates.patch
-Patch219: x86-nmi-inject.patch
-Patch220: x86_emulate.patch
-Patch221: vgacon-keep.patch
-Patch222: vgacon-50-lines.patch
-Patch223: x86-extra-trap-info.patch
-Patch224: x86-machine-check.patch
-Patch225: x86-emul-rf.patch
-Patch226: vmx-check-descr.patch
-Patch227: x86_64-syscall-clear-df.patch
-Patch228: 32on64-extra-mem.patch
-Patch229: blktap.patch
-Patch230: dmi-table.patch
+Patch240: svm-lmsl.patch
+Patch241: x86_emulate-eflags.patch
+Patch242: x86_emulate.patch
+Patch243: x86-extra-trap-info.patch
+Patch290: x86_64-syscall-clear-df.patch
+Patch291: 32on64-extra-mem.patch
+Patch292: blktap.patch
+# Ky PV Driver Patches
+Patch350: pv-driver-build.patch
Url: http://www.cl.cam.ac.uk/Research/SRG/netos/xen/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%define pysite %(python -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib()")
@@ -262,7 +178,7 @@
%package libs
Summary: Xen Virtualization: Libraries
Group: System/Kernel
-Requires: xen >= 3.1.0_15000
+Requires: xen >= 3.2.0_16500
AutoReqProv: on
%description libs
@@ -311,7 +227,7 @@
%package tools
Summary: Xen Virtualization: Control tools for domain 0
Group: System/Kernel
-Requires: xen-libs >= 3.1.0_15000
+Requires: xen-libs >= 3.2.0_16500
Requires: bridge-utils multipath-tools python python-curses python-xml pyxml
AutoReqProv: on
@@ -384,7 +300,7 @@
%package tools-ioemu
Summary: Xen Virtualization: BIOS and device emulation for unmodified guests
Group: System/Kernel
-Requires: xen-tools >= 3.1.0_15000
+Requires: xen-tools >= 3.2.0_16500
AutoReqProv: on
%description tools-ioemu
@@ -570,79 +486,21 @@
%prep
%setup -q -n %xen_build_dir
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-%patch10 -p1
-%patch11 -p1
-%patch12 -p1
-%patch13 -p1
-%patch14 -p1
-%patch15 -p1
-%patch16 -p1
-%patch17 -p1
-%patch18 -p1
-%patch19 -p1
-%patch20 -p1
-%patch21 -p1
-%patch22 -p1
-%patch23 -p1
-%patch24 -p1
-%patch25 -p1
-%patch26 -p1
-%patch27 -p1
-%patch28 -p1
-%patch29 -p1
-%patch30 -p1
-%patch31 -p1
-%patch32 -p1
-%patch33 -p1
-%patch34 -p1
-%patch35 -p1
-%patch36 -p1
-%patch37 -p1
-%patch38 -p1
-%patch39 -p1
-%patch40 -p1
-%patch41 -p1
-%patch42 -p1
-%patch43 -p1
-%patch44 -p1
-%patch45 -p1
-%patch46 -p1
-%patch47 -p1
-%patch48 -p1
-%patch49 -p1
-%patch50 -p1
-%patch51 -p1
-%patch52 -p1
-%patch53 -p1
-%patch54 -p1
-%patch55 -p1
-%patch56 -p1
-%patch57 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
+%patch103 -p1
%patch104 -p1
%patch105 -p1
%patch106 -p1
%patch107 -p1
%patch108 -p1
-%patch109 -p1
%patch111 -p1
+%patch112 -p1
+%patch113 -p1
%patch114 -p1
%patch115 -p1
%patch116 -p1
-%patch117 -p1
-%patch118 -p1
%patch120 -p1
%patch121 -p1
%patch122 -p1
@@ -656,59 +514,30 @@
%patch131 -p1
%patch132 -p1
%patch133 -p1
-#%patch135 -p1 # re-port
+#%patch134 -p1 # 3.1 disabled - re-port
+%patch135 -p1
%patch136 -p1
%patch137 -p1
-%patch138 -p1
-#%patch139 -p1 # Currently not disabling FV devices when loading PV drivers
+#%patch138 -p1 # 3.1 disabled - Currently not disabling FV devices when loading PV drivers
%patch140 -p1
%patch141 -p1
%patch142 -p1
%patch143 -p1
-%patch144 -p1
-%patch145 -p1
+#%patch144 -p1 # Pat, cdrom
%patch150 -p1
-%patch151 -p1
-%patch152 -p1
-%patch153 -p1
+#%patch151 -p1 # dump if all goes well with defaulting to network-multinet
+#%patch152 -p1 # dump if all goes well with defaulting to network-multinet
+#%patch153 -p1 # dump if all goes well with defaulting to network-multinet
%patch154 -p1
-%patch155 -p1
-%patch156 -p1
-%patch157 -p1
-%patch158 -p1
-%patch159 -p1
-%patch160 -p1
-%patch200 -p1
-%patch201 -p1
-%patch202 -p1
-%patch203 -p1
-%patch204 -p1
-%patch205 -p1
-%patch206 -p1
-%patch207 -p1
-%patch208 -p1
-%patch209 -p1
-%patch210 -p1
-%patch211 -p1
-%patch212 -p1
-%patch213 -p1
-%patch214 -p1
-%patch215 -p1
-%patch216 -p1
-%patch217 -p1
-%patch218 -p1
-%patch219 -p1
-%patch220 -p1
-%patch221 -p1
-%patch222 -p1
-%patch223 -p1
-%patch224 -p1
-%patch225 -p1
-%patch226 -p1
-%patch227 -p1
-%patch228 -p1
-%patch229 -p1
-%patch230 -p1
+#%patch155 -p1 # AMD CR8 Performance - not clean for unstable
+%patch240 -p1
+%patch241 -p1
+%patch242 -p1
+%patch243 -p1
+%patch290 -p1
+%patch291 -p1
+%patch292 -p1
+%patch350 -p1
%build
XEN_EXTRAVERSION=%version-%release
@@ -781,8 +610,6 @@
%ifarch x86_64
mkdir -p $RPM_BUILD_ROOT/usr/lib/xen/bin/
ln -s %{_libdir}/xen/bin/qemu-dm $RPM_BUILD_ROOT/usr/lib/xen/bin/qemu-dm
-ln -s %{_libdir}/xen/bin/xen-sdlfb $RPM_BUILD_ROOT/usr/lib/xen/bin/xen-sdlfb
-ln -s %{_libdir}/xen/bin/xen-vncfb $RPM_BUILD_ROOT/usr/lib/xen/bin/xen-vncfb
%endif
%if %{?with_kmp}0
# pv driver modules
@@ -818,7 +645,7 @@
install -m644 %SOURCE17 $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.xend
# scripts
rm $RPM_BUILD_ROOT/etc/xen/scripts/block-*nbd
-install -m755 %SOURCE11 %SOURCE12 %SOURCE13 %SOURCE18 $RPM_BUILD_ROOT/etc/xen/scripts/
+install -m755 %SOURCE11 %SOURCE12 %SOURCE13 %SOURCE18 %SOURCE19 %SOURCE20 %SOURCE21 $RPM_BUILD_ROOT/etc/xen/scripts/
# logrotate
install -m644 -D %SOURCE7 $RPM_BUILD_ROOT/etc/logrotate.d/xen
# directories
@@ -878,6 +705,7 @@
%defattr(-,root,root)
%{_libdir}/fs/
%{_libdir}/libblktap.so.*
+%{_libdir}/libflask.so*
%{_libdir}/libfsimage.so.*
%{_libdir}/libxen*.so.*
@@ -889,6 +717,7 @@
/usr/bin/xenstore*
/usr/bin/xentrace*
/usr/sbin/blktapctrl
+/usr/sbin/flask-loadpolicy
/usr/sbin/img2qcow
/usr/sbin/qcow-create
/usr/sbin/qcow2raw
@@ -897,6 +726,7 @@
/usr/sbin/tapdisk
/usr/sbin/xen*
/usr/sbin/xm
+/usr/sbin/xsview
%dir %{_libdir}/xen
%dir %{_libdir}/xen/bin
%ifarch x86_64
@@ -908,8 +738,6 @@
%{_libdir}/xen/bin/readnotes
%{_libdir}/xen/bin/xc_restore
%{_libdir}/xen/bin/xc_save
-%{_libdir}/xen/bin/xen-sdlfb
-%{_libdir}/xen/bin/xen-vncfb
%{_libdir}/xen/bin/xenconsole
%{_libdir}/xen/bin/xenctx
%{_mandir}/man1/*.1.gz
@@ -966,8 +794,6 @@
%{_libdir}/xen/bin/qemu-dm
%ifarch x86_64
/usr/lib/xen/bin/qemu-dm
-/usr/lib/xen/bin/xen-sdlfb
-/usr/lib/xen/bin/xen-vncfb
/usr/lib64/xen/bin/xc_kexec
%else
/usr/lib/xen/bin/xc_kexec
@@ -978,11 +804,14 @@
%defattr(-,root,root)
%{_libdir}/libblktap.a
%{_libdir}/libblktap.so
+%{_libdir}/libflask.a
+%{_libdir}/libflask.so*
%{_libdir}/libfsimage.so
%{_libdir}/libxen*.a
%{_libdir}/libxen*.so
/usr/bin/serial-split
/usr/include/blktaplib.h
+/usr/include/flask.h
/usr/include/fsimage*
/usr/include/xen*.h
/usr/include/xen/
@@ -1019,6 +848,8 @@
/sbin/ldconfig
%changelog
+* Wed Dec 19 2007 - carnold@novell.com
+- Update to xen 3.2 RC2. Changeset 16646
* Thu Nov 29 2007 - carnold@novell.com
- Added part of upstream c/s 15211. Fixed open call with O_CREAT
because it had no mode flags.
++++++ 32on64-extra-mem.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:11.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:11.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.0.4-testing/tools/python/xen/xend/XendDomainInfo.py
+Index: xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
---- xen-3.0.4-testing.orig/tools/python/xen/xend/XendDomainInfo.py
-+++ xen-3.0.4-testing/tools/python/xen/xend/XendDomainInfo.py
-@@ -1431,7 +1431,7 @@ class XendDomainInfo:
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendDomainInfo.py
++++ xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
+@@ -1753,7 +1753,7 @@ class XendDomainInfo:
xc.domain_setmaxmem(self.domid, maxmem)
# Make sure there's enough RAM available for the domain
++++++ blktap.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:11.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:11.000000000 +0100
@@ -1,11 +1,11 @@
bug #239173
bug #242953
-Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
+Index: xen-3.2-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
-@@ -1833,7 +1833,7 @@ class XendDomainInfo:
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendDomainInfo.py
++++ xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
+@@ -2060,7 +2060,7 @@ class XendDomainInfo:
(fn, BOOTLOADER_LOOPBACK_DEVICE))
vbd = {
@@ -14,19 +14,19 @@
'device': BOOTLOADER_LOOPBACK_DEVICE,
}
-Index: xen-3.1-testing/tools/ioemu/xenstore.c
+Index: xen-3.2-testing/tools/ioemu/xenstore.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/xenstore.c
-+++ xen-3.1-testing/tools/ioemu/xenstore.c
+--- xen-3.2-testing.orig/tools/ioemu/xenstore.c
++++ xen-3.2-testing/tools/ioemu/xenstore.c
@@ -81,9 +81,9 @@ void xenstore_parse_domain_config(int do
{
char **e = NULL;
char *buf = NULL, *path;
- char *fpath = NULL, *bpath = NULL,
+ char *fpath = NULL, *bpath = NULL, *btype = NULL,
- *dev = NULL, *params = NULL, *type = NULL, *media_present = NULL;
-- int i, is_scsi;
-+ int i, is_scsi, is_tap;
+ *dev = NULL, *params = NULL, *type = NULL, *drv = NULL;
+- int i, is_scsi, is_hdN = 0;
++ int i, is_scsi, is_tap, is_hdN = 0;
unsigned int len, num, hd_index;
for(i = 0; i < MAX_DISKS + MAX_SCSI_DISKS; i++)
@@ -45,36 +45,7 @@
/* read the name of the device */
if (pasprintf(&buf, "%s/dev", bpath) == -1)
continue;
-@@ -123,6 +131,13 @@ void xenstore_parse_domain_config(int do
- dev = xs_read(xsh, XBT_NULL, buf, &len);
- if (dev == NULL)
- continue;
-+ /* Force xvdN to look like hdN */
-+ if (is_tap && !strncmp(dev, "xvd", 3)) {
-+ memmove(dev, dev+1, strlen(dev));
-+ dev[0] = 'h';
-+ dev[1] = 'd';
-+ fprintf(stderr, "Got blktap '%s'\n", dev);
-+ }
- is_scsi = !strncmp(dev, "sd", 2);
- if ((strncmp(dev, "hd", 2) && !is_scsi) || strlen(dev) != 3 )
- continue;
-@@ -140,6 +155,14 @@ void xenstore_parse_domain_config(int do
- params = xs_read(xsh, XBT_NULL, buf, &len);
- if (params == NULL)
- continue;
-+ /* Strip off blktap sub-type prefix aio: etc */
-+ if (is_tap) {
-+ char *offset = strchr(params, ':');
-+ if (!offset)
-+ continue;
-+ memmove(params, offset+1, strlen(offset+1)+1);
-+ fprintf(stderr, "Got params '%s'\n", params);
-+ }
- /*
- * check if device has a phantom vbd; the phantom is hooked
- * to the frontend device (for ease of cleanup), so lookup
-@@ -196,6 +219,7 @@ void xenstore_parse_domain_config(int do
+@@ -243,6 +251,7 @@ void xenstore_parse_domain_config(int do
free(type);
free(params);
free(dev);
++++++ block-flags.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:11.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:11.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-unstable/tools/examples/block
+Index: xen-3.2-testing/tools/examples/block
===================================================================
---- xen-unstable.orig/tools/examples/block
-+++ xen-unstable/tools/examples/block
-@@ -259,10 +259,13 @@ case "$command" in
+--- xen-3.2-testing.orig/tools/examples/block
++++ xen-3.2-testing/tools/examples/block
+@@ -217,11 +217,14 @@ case "$command" in
;;
file)
@@ -11,18 +11,20 @@
# Canonicalise the file, for sharing check comparison, and the mode
# for ease of use here.
file=$(readlink -f "$p") || fatal "$p does not exist."
+ test -f "$file" || fatal "$file does not exist."
mode=$(canonicalise_mode "$mode")
+ [ "$mode" = "r" ] && lo_flags="$lo_flags -r"
claim_lock "block"
-@@ -370,11 +373,11 @@ mount it read-write in a guest domain."
- fatal 'Failed to find an unused loop device'
- fi
+@@ -330,12 +333,12 @@ mount it read-write in a guest domain."
+ fatal 'Failed to find an unused loop device'
+ fi
-- losetup "$loopdev" "$file" && losetup_failure="" && break
-+ losetup $lo_flags "$loopdev" "$file" && losetup_failure="" && break
+- losetup "$loopdev" "$file" && losetup_failure="" && break
++ losetup $lo_flags "$loopdev" "$file" && losetup_failure="" && break
done
+
if [ "$losetup_failure" ]
then
- fatal 'losetup $loopdev $file'
++++++ block-losetup-retry.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:11.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:11.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-unstable/tools/examples/block
+Index: xen-3.2-testing/tools/examples/block
===================================================================
---- xen-unstable.orig/tools/examples/block
-+++ xen-unstable/tools/examples/block
-@@ -274,9 +274,12 @@ case "$command" in
+--- xen-3.2-testing.orig/tools/examples/block
++++ xen-3.2-testing/tools/examples/block
+@@ -233,107 +233,111 @@ case "$command" in
mount it read-write in a guest domain."
fi
@@ -11,38 +11,184 @@
+ losetup_failure=1
+ for do_losetup in 1 2 3
do
-+ loopdev=''
-+ for dev in /dev/loop*
-+ do
- if [ ! -b "$dev" ]
- then
- continue
-@@ -360,14 +363,20 @@ mount it read-write in a guest domain."
- loopdev="$dev"
+- if [ ! -b "$dev" ]
+- then
+- continue
+- fi
+-
+- f=$(losetup "$dev" 2>/dev/null) || f=''
+-
+- if [ "$f" ]
+- then
+- # $dev is in use. Check sharing.
+- if [ "x$mode" = 'x!' ]
++ loopdev=''
++ for dev in /dev/loop*
++ do
++ if [ ! -b "$dev" ]
+ then
+ continue
fi
+
+- f=$(echo "$f" | sed -e 's/.*(\(.*\)).*/\1/g')
++ f=$(losetup "$dev" 2>/dev/null) || f=''
+
+- # $f is the filename, as read from losetup, but the loopback
+- # driver truncates filenames at 64 characters, so we need to go
+- # trawling through the store if it's longer than that. Truncation
+- # is indicated by an asterisk at the end of the filename.
+- if expr index "$f" '*' >/dev/null
++ if [ "$f" ]
+ then
+- found=""
+- for dom in $(xenstore-list "$XENBUS_BASE_PATH")
+- do
+- for domdev in $(xenstore-list "$XENBUS_BASE_PATH/$dom")
++ # $dev is in use. Check sharing.
++ if [ "x$mode" = 'x!' ]
++ then
++ continue
++ fi
++
++ f=$(echo "$f" | sed -e 's/.*(\(.*\)).*/\1/g')
++
++ # $f is the filename, as read from losetup, but the loopback
++ # driver truncates filenames at 64 characters, so we need to go
++ # trawling through the store if it's longer than that. Truncation
++ # is indicated by an asterisk at the end of the filename.
++ if expr index "$f" '*' >/dev/null
++ then
++ found=""
++ for dom in $(xenstore-list "$XENBUS_BASE_PATH")
+ do
+- d=$(xenstore_read_default \
+- "$XENBUS_BASE_PATH/$dom/$domdev/node" "")
+- if [ "$d" = "$dev" ]
+- then
+- f=$(xenstore_read "$XENBUS_BASE_PATH/$dom/$domdev/params")
+- found=1
+- break 2
+- fi
++ for domdev in $(xenstore-list "$XENBUS_BASE_PATH/$dom")
++ do
++ d=$(xenstore_read_default \
++ "$XENBUS_BASE_PATH/$dom/$domdev/node" "")
++ if [ "$d" = "$dev" ]
++ then
++ f=$(xenstore_read "$XENBUS_BASE_PATH/$dom/$domdev/params")
++ found=1
++ break 2
++ fi
++ done
+ done
+- done
+
+- if [ ! "$found" ]
+- then
+- # This loopback device is in use by someone else, so skip it.
+- log debug "Loopback sharing check skips device $dev."
+- continue
++ if [ ! "$found" ]
++ then
++ # This loopback device is in use by someone else, so skip it.
++ log debug "Loopback sharing check skips device $dev."
++ continue
++ fi
+ fi
+- fi
+
+- # Canonicalise the filename for the comparison.
++ # Canonicalise the filename for the comparison.
+
+- # I have seen this readlink fails because the filename given by
+- # losetup is only the basename. This cannot happen when the loop
+- # device is set up through this script, because file is
+- # canonicalised above, but it may happen when loop devices are set
+- # up some other way. This readlink may also conceivably fail if
+- # the file backing this loop device has been removed.
++ # I have seen this readlink fails because the filename given by
++ # losetup is only the basename. This cannot happen when the loop
++ # device is set up through this script, because file is
++ # canonicalised above, but it may happen when loop devices are set
++ # up some other way. This readlink may also conceivably fail if
++ # the file backing this loop device has been removed.
+
+- # For maximum safety, in the case that $f does not resolve, we
+- # assume that $file and $f are in the same directory.
++ # For maximum safety, in the case that $f does not resolve, we
++ # assume that $file and $f are in the same directory.
+
+- # If you create a loopback filesystem, remove it and continue to
+- # run on it, and then create another file with the same name, then
+- # this check will block that -- don't do that.
++ # If you create a loopback filesystem, remove it and continue to
++ # run on it, and then create another file with the same name, then
++ # this check will block that -- don't do that.
+
+- # If you create loop devices through some other mechanism, use
+- # relative filenames, and then use the same filename through this
+- # script, then this check will block that -- don't do that either.
++ # If you create loop devices through some other mechanism, use
++ # relative filenames, and then use the same filename through this
++ # script, then this check will block that -- don't do that either.
+
+- f=$(readlink -f "$f" || echo $(dirname "$file")/$(basename "$f"))
++ f=$(readlink -f "$f" || echo $(dirname "$file")/$(basename "$f"))
+
+
+- if [ "$f" = "$file" ]
+- then
+- check_file_sharing "$file" "$dev" "$mode"
+- fi
+- else
+- # $dev is not in use, so we'll remember it for use later; we want
+- # to finish the sharing check first.
++ if [ "$f" = "$file" ]
++ then
++ check_file_sharing "$file" "$dev" "$mode"
++ fi
++ else
++ # $dev is not in use, so we'll remember it for use later; we want
++ # to finish the sharing check first.
+
+- if [ "$loopdev" = '' ]
+- then
+- loopdev="$dev"
++ if [ "$loopdev" = '' ]
++ then
++ loopdev="$dev"
++ fi
+ fi
++ done
++
++ if [ "$loopdev" = '' ]
++ then
++ release_lock "block"
++ fatal 'Failed to find an unused loop device'
fi
-- done
-+ done
+
-+ if [ "$loopdev" = '' ]
-+ then
-+ fatal 'Failed to find an unused loop device'
-+ fi
++ losetup "$loopdev" "$file" && losetup_failure="" && break
+ done
- if [ "$loopdev" = '' ]
-+ losetup "$loopdev" "$file" && losetup_failure="" && break
-+ done
+ if [ "$losetup_failure" ]
then
+- release_lock "block"
- fatal 'Failed to find an unused loop device'
+ fatal 'losetup $loopdev $file'
fi
-- do_or_die losetup "$loopdev" "$file"
+- if LANG=C losetup -h 2>&1 | grep read-only >/dev/null
+- then
+- roflag="-$mode"; roflag="${roflag#-w}"
+- else
+- roflag=''
+- fi
+- do_or_die losetup $roflag "$loopdev" "$file"
xenstore_write "$XENBUS_PATH/node" "$loopdev"
write_dev "$loopdev"
release_lock "block"
-@@ -390,8 +399,18 @@ mount it read-write in a guest domain."
+@@ -356,8 +360,18 @@ mount it read-write in a guest domain."
file)
node=$(xenstore_read "$XENBUS_PATH/node")
++++++ cross-build-fix.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:12.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:12.000000000 +0100
@@ -13,10 +13,10 @@
tools/Makefile | 2 +-
2 files changed, 5 insertions(+), 3 deletions(-)
-Index: xen-3.1-testing/config/x86_32.mk
+Index: xen-3.2-testing/config/x86_32.mk
===================================================================
---- xen-3.1-testing.orig/config/x86_32.mk
-+++ xen-3.1-testing/config/x86_32.mk
+--- xen-3.2-testing.orig/config/x86_32.mk
++++ xen-3.2-testing/config/x86_32.mk
@@ -7,8 +7,10 @@ CONFIG_MIGRATE := y
CONFIG_XCUTILS := y
CONFIG_IOEMU := y
@@ -29,12 +29,12 @@
+LIBDIR := lib
# Use only if calling $(LD) directly.
- ifeq ($(XEN_OS),OpenBSD)
-Index: xen-3.1-testing/tools/Makefile
+ LDFLAGS_DIRECT_OpenBSD = _obsd
+Index: xen-3.2-testing/tools/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/Makefile
-+++ xen-3.1-testing/tools/Makefile
-@@ -62,7 +62,7 @@ check_clean:
+--- xen-3.2-testing.orig/tools/Makefile
++++ xen-3.2-testing/tools/Makefile
+@@ -63,7 +63,7 @@ check_clean:
$(MAKE) -C check clean
.PHONY: ioemu ioemuinstall ioemuclean
++++++ keymap_nl-be.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:12.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:12.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.0.4-testing/tools/ioemu/keymaps/nl-be
+Index: xen-3.2-testing/tools/ioemu/keymaps/nl-be
===================================================================
---- xen-3.0.4-testing.orig/tools/ioemu/keymaps/nl-be 2006-12-14 14:49:55.000000000 -0700
-+++ xen-3.0.4-testing/tools/ioemu/keymaps/nl-be 2007-08-30 07:46:28.000000000 -0600
-@@ -1,3 +1,69 @@
+--- xen-3.2-testing.orig/tools/ioemu/keymaps/nl-be
++++ xen-3.2-testing/tools/ioemu/keymaps/nl-be
+@@ -1,6 +1,72 @@
# Dutch (Belgium)
-map 0x813
include common
@@ -73,3 +73,6 @@
+greater 0x56 shift
+backslash 0x56 altgr
+
+ ampersand 0x02
+ 1 0x02 shift
+ bar 0x02 altgr
++++++ netfront_mac.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:12.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:12.000000000 +0100
@@ -2,11 +2,11 @@
Signed-off-by: ksrinivasan@novell.com
-Index: xen-3.1-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
+Index: xen-3.2-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
===================================================================
---- xen-3.1-testing.orig/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
-+++ xen-3.1-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
-@@ -375,7 +375,7 @@ static int xen_net_read_mac(struct xenbu
+--- xen-3.2-testing.orig/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
++++ xen-3.2-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
+@@ -349,7 +349,7 @@ static int xen_net_read_mac(struct xenbu
char *s, *e, *macstr;
int i;
++++++ network-multinet ++++++
++++ 833 lines (skipped)
++++ between network-multinet
++++ and /mounts/work_src_done/STABLE/xen/network-multinet
++++++ pv-driver-build.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:12.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:12.000000000 +0100
@@ -1,60 +1,46 @@
-Index: xen-3.1-testing/unmodified_drivers/linux-2.6/mkbuildtree
+Index: xen-3.2-testing/unmodified_drivers/linux-2.6/mkbuildtree
===================================================================
---- xen-3.1-testing.orig/unmodified_drivers/linux-2.6/mkbuildtree
-+++ xen-3.1-testing/unmodified_drivers/linux-2.6/mkbuildtree
-@@ -11,7 +11,12 @@ fi
- C=$PWD
+--- xen-3.2-testing.orig/unmodified_drivers/linux-2.6/mkbuildtree
++++ xen-3.2-testing/unmodified_drivers/linux-2.6/mkbuildtree
+@@ -13,16 +13,30 @@ C=$PWD
+ if [ -n "$XEN" -a -d "$XEN" ]; then
+ XEN=$(cd $XEN && pwd)
+ else
+- XEN=$C/../../xen
++ XEN=/usr/src/linux/include/xen
+ fi
- XEN=$C/../../xen
--XL=$C/../../linux-2.6-xen-sparse
-+if [ -n "$XL" -a -d "$XL" ]; then
-+ XL=$(cd $XL && pwd)
-+else
-+ XL=/usr/src/linux
+ if [ -n "$XL" -a -d "$XL" ]; then
+ XL=$(cd $XL && pwd)
+ else
+- XL=$C/../../linux-2.6.18-xen.hg
++ XL=/usr/src/linux
+fi
+cd "$(dirname "$0")"
++
++if [ -n "$ALT_KMP_OS" -a "$ALT_KMP_OS" == sles10sp1 ]; then
++ XL=$C/linux-2.6-xen-sparse
++ XEN=$C/linux-2.6-xen-sparse/include/xen
+ fi
for d in $(find ${XL}/drivers/xen/ -maxdepth 1 -type d | sed -e 1d); do
++ # TEMPORARY - Don't link entire directory until the accel.c fix is in the kernel cvs
++ if echo $d | egrep -q netfront; then
++ ln -sf ${XL}/drivers/xen/netfront/netfront.c netfront
++ ln -sf ${XL}/drivers/xen/netfront/netfront.h netfront
++ cp -p ../../linux-2.6-xen-sparse/drivers/xen/netfront/accel.c netfront
++ continue
++ fi
++ # END TEMPORARY
if ! echo $d | egrep -q back; then
-Index: xen-3.1-testing/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
-===================================================================
---- xen-3.1-testing.orig/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
-+++ xen-3.1-testing/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
-@@ -107,4 +107,12 @@ extern char *kasprintf(gfp_t gfp, const
- #define __supported_pte_mask ((maddr_t)0)
- #endif
-
-+/*
-+ * This variable at present is referenced by netfront, but only in code that
-+ * is dead when running in hvm guests. To detect potential active uses of it
-+ * in the future, don't try to supply a 'valid' value here, so that any
-+ * mappings created with it will fault when accessed.
-+ */
-+#define __supported_pte_mask ((maddr_t)0)
-+
- #endif
-Index: xen-3.1-testing/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
-===================================================================
---- xen-3.1-testing.orig/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
-+++ xen-3.1-testing/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
-@@ -119,7 +119,9 @@ void *kzalloc(size_t size, int flags)
- EXPORT_SYMBOL(kzalloc);
- #endif
+ lndir $d $(basename $d) > /dev/null 2>&1
+ fi
+@@ -39,7 +53,7 @@ ln -sf ${XL}/drivers/xen/core/reboot.c p
+ mkdir -p include/asm include/xen
--#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)
-+#if defined(CONFIG_SUSE_KERNEL) \
-+ ? LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) \
-+ : LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)
- /* Simplified asprintf. */
- char *kasprintf(gfp_t gfp, const char *fmt, ...)
- {
-Index: xen-3.1-testing/unmodified_drivers/linux-2.6/overrides.mk
-===================================================================
---- xen-3.1-testing.orig/unmodified_drivers/linux-2.6/overrides.mk
-+++ xen-3.1-testing/unmodified_drivers/linux-2.6/overrides.mk
-@@ -11,4 +11,4 @@ ifeq ($(ARCH),ia64)
- EXTRA_CFLAGS += -DCONFIG_VMX_GUEST
- endif
+ lndir -silent ${XL}/include/xen include/xen
+-ln -nsf ${XEN}/include/public include/xen/interface
++ln -nsf ${XEN}/interface include/xen/interface
--EXTRA_CFLAGS += -include $(srctree)/include/linux/autoconf.h
-+#EXTRA_CFLAGS += -include $(srctree)/include/linux/autoconf.h
+ # Need to be quite careful here: we don't want the files we link in to
+ # risk overriding the native Linux ones (in particular, system.h must
++++++ qemu-security-etch1.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:12.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:12.000000000 +0100
@@ -1,23 +1,21 @@
-Index: xen-3.1-testing/tools/ioemu/block.c
+Index: xen-3.2-testing/tools/ioemu/block.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/block.c
-+++ xen-3.1-testing/tools/ioemu/block.c
-@@ -465,6 +465,11 @@ int bdrv_write(BlockDriverState *bs, int
- if (sector_num == 0 && bs->boot_sector_enabled && nb_sectors > 0) {
- memcpy(bs->boot_sector_data, buf, 512);
- }
-+ {
+--- xen-3.2-testing.orig/tools/ioemu/block.c
++++ xen-3.2-testing/tools/ioemu/block.c
+@@ -558,6 +558,9 @@ int bdrv_write(BlockDriverState *bs, int
+ else
+ return 0;
+ } else {
+ unsigned int ns = sector_num * 512;
+ if (ns < 0)
+ return -1;
-+ }
- return bs->drv->bdrv_write(bs, sector_num, buf, nb_sectors);
+ return drv->bdrv_write(bs, sector_num, buf, nb_sectors);
+ }
}
-
-Index: xen-3.1-testing/tools/ioemu/hw/cirrus_vga.c
+Index: xen-3.2-testing/tools/ioemu/hw/cirrus_vga.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/cirrus_vga.c
-+++ xen-3.1-testing/tools/ioemu/hw/cirrus_vga.c
+--- xen-3.2-testing.orig/tools/ioemu/hw/cirrus_vga.c
++++ xen-3.2-testing/tools/ioemu/hw/cirrus_vga.c
@@ -220,6 +220,20 @@
#define CIRRUS_HOOK_NOT_HANDLED 0
#define CIRRUS_HOOK_HANDLED 1
@@ -39,7 +37,7 @@
struct CirrusVGAState;
typedef void (*cirrus_bitblt_rop_t) (struct CirrusVGAState *s,
uint8_t * dst, const uint8_t * src,
-@@ -598,7 +612,7 @@ static void cirrus_invalidate_region(Cir
+@@ -599,7 +613,7 @@ static void cirrus_invalidate_region(Cir
for (y = 0; y < lines; y++) {
off_cur = off_begin;
@@ -48,7 +46,7 @@
off_cur &= TARGET_PAGE_MASK;
while (off_cur < off_cur_end) {
cpu_physical_memory_set_dirty(s->vram_offset +
-@@ -614,7 +628,11 @@ static int cirrus_bitblt_common_patternc
+@@ -615,7 +629,11 @@ static int cirrus_bitblt_common_patternc
{
uint8_t *dst;
@@ -61,7 +59,7 @@
(*s->cirrus_rop) (s, dst, src,
s->cirrus_blt_dstpitch, 0,
s->cirrus_blt_width, s->cirrus_blt_height);
-@@ -630,8 +648,11 @@ static int cirrus_bitblt_solidfill(Cirru
+@@ -631,8 +649,11 @@ static int cirrus_bitblt_solidfill(Cirru
{
cirrus_fill_t rop_func;
@@ -74,7 +72,7 @@
s->cirrus_blt_dstpitch,
s->cirrus_blt_width, s->cirrus_blt_height);
cirrus_invalidate_region(s, s->cirrus_blt_dstaddr,
-@@ -650,8 +671,8 @@ static int cirrus_bitblt_solidfill(Cirru
+@@ -651,8 +672,8 @@ static int cirrus_bitblt_solidfill(Cirru
static int cirrus_bitblt_videotovideo_patterncopy(CirrusVGAState * s)
{
return cirrus_bitblt_common_patterncopy(s,
@@ -85,7 +83,7 @@
}
static void cirrus_do_copy(CirrusVGAState *s, int dst, int src, int w, int h)
-@@ -701,8 +722,10 @@ static void cirrus_do_copy(CirrusVGAStat
+@@ -702,8 +723,10 @@ static void cirrus_do_copy(CirrusVGAStat
if (notify)
vga_hw_update();
@@ -98,7 +96,7 @@
s->cirrus_blt_dstpitch, s->cirrus_blt_srcpitch,
s->cirrus_blt_width, s->cirrus_blt_height);
-@@ -728,8 +751,14 @@ static int cirrus_bitblt_videotovideo_co
+@@ -729,8 +752,14 @@ static int cirrus_bitblt_videotovideo_co
s->cirrus_blt_srcaddr - s->start_addr,
s->cirrus_blt_width, s->cirrus_blt_height);
} else {
@@ -115,7 +113,7 @@
s->cirrus_blt_dstpitch, s->cirrus_blt_srcpitch,
s->cirrus_blt_width, s->cirrus_blt_height);
-@@ -761,8 +790,9 @@ static void cirrus_bitblt_cputovideo_nex
+@@ -762,8 +791,9 @@ static void cirrus_bitblt_cputovideo_nex
} else {
/* at least one scan line */
do {
@@ -127,7 +125,7 @@
cirrus_invalidate_region(s, s->cirrus_blt_dstaddr, 0,
s->cirrus_blt_width, 1);
s->cirrus_blt_dstaddr += s->cirrus_blt_dstpitch;
-@@ -1862,7 +1892,7 @@ static void cirrus_mem_writeb_mode4and5_
+@@ -1879,7 +1909,7 @@ static void cirrus_mem_writeb_mode4and5_
unsigned val = mem_value;
uint8_t *dst;
@@ -136,7 +134,7 @@
for (x = 0; x < 8; x++) {
if (val & 0x80) {
*dst = s->cirrus_shadow_gr1;
-@@ -1885,7 +1915,7 @@ static void cirrus_mem_writeb_mode4and5_
+@@ -1902,7 +1932,7 @@ static void cirrus_mem_writeb_mode4and5_
unsigned val = mem_value;
uint8_t *dst;
@@ -145,10 +143,10 @@
for (x = 0; x < 8; x++) {
if (val & 0x80) {
*dst = s->cirrus_shadow_gr1;
-Index: xen-3.1-testing/tools/ioemu/hw/cirrus_vga_rop.h
+Index: xen-3.2-testing/tools/ioemu/hw/cirrus_vga_rop.h
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/cirrus_vga_rop.h
-+++ xen-3.1-testing/tools/ioemu/hw/cirrus_vga_rop.h
+--- xen-3.2-testing.orig/tools/ioemu/hw/cirrus_vga_rop.h
++++ xen-3.2-testing/tools/ioemu/hw/cirrus_vga_rop.h
@@ -49,6 +49,12 @@ glue(cirrus_bitblt_rop_fwd_, ROP_NAME)(C
src = src_ - src_base;
dstpitch -= bltwidth;
@@ -162,31 +160,11 @@
for (y = 0; y < bltheight; y++) {
for (x = 0; x < bltwidth; x++) {
ROP_OP(*(dst_base + m(dst)), *(src_base + m(src)));
-Index: xen-3.1-testing/tools/ioemu/hw/fdc.c
-===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/fdc.c
-+++ xen-3.1-testing/tools/ioemu/hw/fdc.c
-@@ -1110,8 +1110,13 @@ static uint32_t fdctrl_read_data (fdctrl
- len = fdctrl->data_len - fdctrl->data_pos;
- if (len > FD_SECTOR_LEN)
- len = FD_SECTOR_LEN;
-- bdrv_read(cur_drv->bs, fd_sector(cur_drv),
-- fdctrl->fifo, len);
-+ if (cur_drv->bs) {
-+ bdrv_read(cur_drv->bs, fd_sector(cur_drv),
-+ fdctrl->fifo, len);
-+ } else {
-+ FLOPPY_ERROR("can't read data from drive\n");
-+ return 0;
-+ }
- }
- }
- retval = fdctrl->fifo[pos];
-Index: xen-3.1-testing/tools/ioemu/hw/i8259.c
+Index: xen-3.2-testing/tools/ioemu/hw/i8259.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/i8259.c
-+++ xen-3.1-testing/tools/ioemu/hw/i8259.c
-@@ -292,9 +292,11 @@ static void pic_ioport_write(void *opaqu
+--- xen-3.2-testing.orig/tools/ioemu/hw/i8259.c
++++ xen-3.2-testing/tools/ioemu/hw/i8259.c
+@@ -299,9 +299,11 @@ static void pic_ioport_write(void *opaqu
s->init_state = 1;
s->init4 = val & 1;
if (val & 0x02)
@@ -200,10 +178,10 @@
} else if (val & 0x08) {
if (val & 0x04)
s->poll = 1;
-Index: xen-3.1-testing/tools/ioemu/hw/ne2000.c
+Index: xen-3.2-testing/tools/ioemu/hw/ne2000.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/ne2000.c
-+++ xen-3.1-testing/tools/ioemu/hw/ne2000.c
+--- xen-3.2-testing.orig/tools/ioemu/hw/ne2000.c
++++ xen-3.2-testing/tools/ioemu/hw/ne2000.c
@@ -221,7 +221,7 @@ static int ne2000_can_receive(void *opaq
NE2000State *s = opaque;
@@ -213,33 +191,11 @@
return !ne2000_buffer_full(s);
}
-@@ -252,7 +252,7 @@ static void ne2000_receive(void *opaque,
- {
- NE2000State *s = opaque;
- uint8_t *p;
-- int total_len, next, avail, len, index, mcast_idx;
-+ unsigned int total_len, next, avail, len, index, mcast_idx;
- uint8_t buf1[60];
- static const uint8_t broadcast_macaddr[6] =
- { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
-@@ -327,7 +327,11 @@ static void ne2000_receive(void *opaque,
-
- /* write packet data */
- while (size > 0) {
-- avail = s->stop - index;
-+ /* taviso: this can wrap, so check its okay. */
-+ if (index <= s->stop)
-+ avail = s->stop - index;
-+ else
-+ avail = 0;
- len = size;
- if (len > avail)
- len = avail;
-Index: xen-3.1-testing/tools/ioemu/hw/pc.c
+Index: xen-3.2-testing/tools/ioemu/hw/pc.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/pc.c
-+++ xen-3.1-testing/tools/ioemu/hw/pc.c
-@@ -329,7 +329,8 @@ void bochs_bios_write(void *opaque, uint
+--- xen-3.2-testing.orig/tools/ioemu/hw/pc.c
++++ xen-3.2-testing/tools/ioemu/hw/pc.c
+@@ -315,7 +315,8 @@ void bochs_bios_write(void *opaque, uint
case 0x400:
case 0x401:
fprintf(stderr, "BIOS panic at rombios.c, line %d\n", val);
@@ -249,7 +205,7 @@
case 0x402:
case 0x403:
#ifdef DEBUG_BIOS
-@@ -352,8 +353,9 @@ void bochs_bios_write(void *opaque, uint
+@@ -338,8 +339,9 @@ void bochs_bios_write(void *opaque, uint
/* LGPL'ed VGA BIOS messages */
case 0x501:
case 0x502:
@@ -260,28 +216,11 @@
case 0x500:
case 0x503:
#ifdef DEBUG_BIOS
-Index: xen-3.1-testing/tools/ioemu/hw/sb16.c
-===================================================================
---- xen-3.1-testing.orig/tools/ioemu/hw/sb16.c
-+++ xen-3.1-testing/tools/ioemu/hw/sb16.c
-@@ -1235,8 +1235,10 @@ static int SB_read_DMA (void *opaque, in
- s->block_size);
- #endif
-
-- while (s->left_till_irq <= 0) {
-- s->left_till_irq = s->block_size + s->left_till_irq;
-+ if (s->block_size) {
-+ while (s->left_till_irq <= 0) {
-+ s->left_till_irq = s->block_size + s->left_till_irq;
-+ }
- }
-
- return dma_pos;
-Index: xen-3.1-testing/tools/ioemu/target-i386/translate.c
+Index: xen-3.2-testing/tools/ioemu/target-i386/translate.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/target-i386/translate.c
-+++ xen-3.1-testing/tools/ioemu/target-i386/translate.c
-@@ -5244,7 +5244,12 @@ static target_ulong disas_insn(DisasCont
+--- xen-3.2-testing.orig/tools/ioemu/target-i386/translate.c
++++ xen-3.2-testing/tools/ioemu/target-i386/translate.c
+@@ -5326,7 +5326,12 @@ static target_ulong disas_insn(DisasCont
if (CODE64(s))
goto illegal_op;
val = ldub_code(s->pc++);
@@ -295,7 +234,7 @@
s->cc_op = CC_OP_LOGICB;
break;
case 0xd5: /* aad */
-@@ -5292,6 +5297,7 @@ static target_ulong disas_insn(DisasCont
+@@ -5374,6 +5379,7 @@ static target_ulong disas_insn(DisasCont
gen_jmp_im(pc_start - s->cs_base);
gen_op_into(s->pc - pc_start);
break;
@@ -303,7 +242,7 @@
case 0xf1: /* icebp (undocumented, exits to external debugger) */
#if 1
gen_debug(s, pc_start - s->cs_base);
-@@ -5301,6 +5307,7 @@ static target_ulong disas_insn(DisasCont
+@@ -5383,6 +5389,7 @@ static target_ulong disas_insn(DisasCont
cpu_set_log(CPU_LOG_INT | CPU_LOG_TB_IN_ASM);
#endif
break;
@@ -311,11 +250,11 @@
case 0xfa: /* cli */
if (!s->vm86) {
if (s->cpl <= s->iopl) {
-Index: xen-3.1-testing/tools/ioemu/vl.c
+Index: xen-3.2-testing/tools/ioemu/vl.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/vl.c
-+++ xen-3.1-testing/tools/ioemu/vl.c
-@@ -3302,8 +3302,8 @@ typedef struct NetSocketState {
+--- xen-3.2-testing.orig/tools/ioemu/vl.c
++++ xen-3.2-testing/tools/ioemu/vl.c
+@@ -3584,8 +3584,8 @@ typedef struct NetSocketState {
VLANClientState *vc;
int fd;
int state; /* 0 = getting length, 1 = getting data */
@@ -326,7 +265,7 @@
uint8_t buf[4096];
struct sockaddr_in dgram_dst; /* contains inet host and port destination iff connectionless (SOCK_DGRAM) */
} NetSocketState;
-@@ -3334,7 +3334,8 @@ static void net_socket_receive_dgram(voi
+@@ -3616,7 +3616,8 @@ static void net_socket_receive_dgram(voi
static void net_socket_send(void *opaque)
{
NetSocketState *s = opaque;
@@ -336,7 +275,7 @@
uint8_t buf1[4096];
const uint8_t *buf;
-@@ -3373,7 +3374,15 @@ static void net_socket_send(void *opaque
+@@ -3655,7 +3656,15 @@ static void net_socket_send(void *opaque
l = s->packet_len - s->index;
if (l > size)
l = size;
++++++ rpmlint.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:12.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:12.000000000 +0100
@@ -1,24 +1,7 @@
-Index: xen-3.1-testing/tools/blktap/lib/Makefile
+Index: xen-3.2-testing/tools/examples/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/blktap/lib/Makefile
-+++ xen-3.1-testing/tools/blktap/lib/Makefile
-@@ -42,10 +42,10 @@ libblktap: libblktap.a
- install: all
- $(INSTALL_DIR) $(DESTDIR)/usr/$(LIBDIR)
- $(INSTALL_DIR) $(DESTDIR)/usr/include
-- $(INSTALL_PROG) $(LIB) $(DESTDIR)/usr/$(LIBDIR)
-+ $(INSTALL_DATA) $(LIB) $(DESTDIR)/usr/$(LIBDIR)
- ln -sf libblktap.so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/$(LIBDIR)/libblktap.so.$(MAJOR)
- ln -sf libblktap.so.$(MAJOR) $(DESTDIR)/usr/$(LIBDIR)/libblktap.so
-- $(INSTALL_PROG) blktaplib.h $(DESTDIR)/usr/include
-+ $(INSTALL_DATA) blktaplib.h $(DESTDIR)/usr/include
-
- clean:
- rm -rf *.a *.so* *.o *.rpm $(LIB) *~ $(DEPS) xen TAGS
-Index: xen-3.1-testing/tools/examples/Makefile
-===================================================================
---- xen-3.1-testing.orig/tools/examples/Makefile
-+++ xen-3.1-testing/tools/examples/Makefile
+--- xen-3.2-testing.orig/tools/examples/Makefile
++++ xen-3.2-testing/tools/examples/Makefile
@@ -56,7 +56,7 @@ install-initd:
[ -d $(DESTDIR)/var/adm/fillup-templates ] || $(INSTALL_DIR) $(DESTDIR)/var/adm/fillup-templates/
$(INSTALL_PROG) $(XEND_INITD) $(DESTDIR)/etc/init.d
++++++ svm-lmsl.patch ++++++
Index: xen-3.2-testing/xen/arch/x86/hvm/hvm.c
===================================================================
--- xen-3.2-testing.orig/xen/arch/x86/hvm/hvm.c
+++ xen-3.2-testing/xen/arch/x86/hvm/hvm.c
@@ -606,10 +606,11 @@ int hvm_set_efer(uint64_t value)
value &= ~EFER_LMA;
- if ( (value & ~(EFER_FFXSE | EFER_LME | EFER_NX | EFER_SCE)) ||
+ if ( (value & ~(EFER_FFXSE | EFER_LMSLE | EFER_LME | EFER_NX | EFER_SCE)) ||
((sizeof(long) != 8) && (value & EFER_LME)) ||
(!cpu_has_nx && (value & EFER_NX)) ||
(!cpu_has_syscall && (value & EFER_SCE)) ||
+ (!cpu_has_lmsl && (value & EFER_LMSLE)) ||
(!cpu_has_ffxsr && (value & EFER_FFXSE)) )
{
gdprintk(XENLOG_WARNING, "Trying to set reserved bit in "
Index: xen-3.2-testing/xen/arch/x86/hvm/svm/svm.c
===================================================================
--- xen-3.2-testing.orig/xen/arch/x86/hvm/svm/svm.c
+++ xen-3.2-testing/xen/arch/x86/hvm/svm/svm.c
@@ -53,6 +53,11 @@
u32 svm_feature_flags;
+#ifdef __x86_64__
+/* indicate whether guest may use EFER.LMSLE */
+unsigned char cpu_has_lmsl = 0;
+#endif
+
#define set_segment_register(name, value) \
asm volatile ( "movw %%ax ,%%" STR(name) "" : : "a" (value) )
@@ -922,6 +927,22 @@ int start_svm(struct cpuinfo_x86 *c)
/* Initialize core's ASID handling. */
svm_asid_init(c);
+#ifdef __x86_64__
+ /*
+ * Check whether EFER.LMSLE can be written.
+ * Unfortunately there's no feature bit defined for this.
+ */
+ eax = read_efer();
+ edx = read_efer() >> 32;
+ if ( wrmsr_safe(MSR_EFER, eax | EFER_LMSLE, edx) == 0 )
+ rdmsr(MSR_EFER, eax, edx);
+ if ( eax & EFER_LMSLE )
+ {
+ cpu_has_lmsl = 1;
+ wrmsr(MSR_EFER, eax ^ EFER_LMSLE, edx);
+ }
+#endif
+
if ( cpu != 0 )
return 1;
Index: xen-3.2-testing/xen/include/asm-x86/hvm/hvm.h
===================================================================
--- xen-3.2-testing.orig/xen/include/asm-x86/hvm/hvm.h
+++ xen-3.2-testing/xen/include/asm-x86/hvm/hvm.h
@@ -127,6 +127,12 @@ struct hvm_function_table {
extern struct hvm_function_table hvm_funcs;
extern int hvm_enabled;
+#ifdef __i386__
+# define cpu_has_lmsl 0
+#else
+extern unsigned char cpu_has_lmsl;
+#endif
+
int hvm_domain_initialise(struct domain *d);
void hvm_domain_relinquish_resources(struct domain *d);
void hvm_domain_destroy(struct domain *d);
++++++ sysconfig.xend ++++++
--- arch/i386/xen/sysconfig.xend 2007-09-13 19:18:20.000000000 +0200
+++ /mounts/work_src_done/STABLE/xen/sysconfig.xend 2007-11-21 20:10:33.000000000 +0100
@@ -1,11 +1,67 @@
## Path: System/Virtualization
## Description:
+## Type: list()
+## Default: ""
+## Config:
+#
+# Space delimited list of network types, physical/virtual network
+# devices,mac addresses and IP addresses to create bridges on using
+# the following format:
+#
+# <network type>,<number of network type>,<network device>,<mac address>,,<dhcp server status>
+#
+# Where:
+# <network type> = bridge|nat|route|hostonly|nohost|empty
+# <number of network type> = The network number (0,1,2,etc.) of that type of
+# network (i.e. xennat0, xenbr1, xenhost3, etc.)
+# <network device> = The network interface the bridge will be
+# attached to (i.e. eth0, veth2, etc.)
+# If set to 'default' the interface used for the
+# default gateway will be used
+# <mac address> = The MAC address to assign to <network device>
+# = The IP address and Subnet Mask to assign to
+# <network device> format= 1.2.3.4/24
+# <dhcp server status> = dhcp-on|dhcp-off (DHCP server on/off on that net)
+#
+# Network Definition Examples:
+# bridged "bridge,0,default,,,dhcp-off"
+# "bridge,1,eth1,,,dhcp-off"
+# nat "nat,0,veth2,00:16:3E:01:00:03,172.23.0.1/16,dhcp-off"
+# routed "route,0,veth2,00:16:3E:01:00:03,172.23.0.1/16,dhcp-off"
+# hostonly "hostonly,0,veth3,00:16:3E:01:00:03,172.23.0.1/16,dhcp-off"
+# nohost "nohost,0,eth1,,,dhcp-off"
+# empty "empty,0,,,dhcp-off"
+#
+# Example: "bridge,0,eth0,,,dhcp-off nat,0,veth2,00:16:3E:01:00:03,172.23.0.1/16,dhcp-off hostonly,0,veth3,00:16:3E:01:00:03,172.23.0.1/16,dhcp-off empty,0,,,dhcp-off"
+#
+# The above example would create 4 networks the first being a bridged network
+# (xenbr0), the second being a NATed network (xennat0), the third being a host
+# only network (xenhost0) and the fourth being an empty network (xenempty0)
+#
+# Used by network-multinet v2.x only
+#
+NETWORK_LIST="bridge,0,default,,,dhcp-off nat,0,veth2,00:16:3E:01:00:02,172.22.0.1/16,dhcp-off hostonly,0,veth3,00:16:3E:01:00:03,172.23.0.1/16,dhcp-off empty,0,,,dhcp-off"
+
+## Type: string(eth0,eth1,eth2,eth3)
+## Default: "eth0"
+## Config:
+#
+# Network interface to use as the external interface for NATed
+# and Routed networks
+#
+# If set to 'default" it will use the same interface used for the
+# default route
+#
+NAT_EXTERNAL_INTERFACE="default"
+
## Type: string(xenbr)
## Default: "xenbr"
## Config:
#
# Name of bridge to create (xenbr0, xenbr1, etc.)
#
+# Used by network-multinet v1.x only
+#
BRIDGE_NAME="xenbr"
## Type: list()
@@ -15,6 +71,8 @@
# Space delimited list of physical network
# devices to create traditional bridges on
#
+# Used by network-multinet v1.x only
+#
# Example: "eth0 eth1 eth2"
#
# The above example would create 3 traditional bridges
@@ -29,15 +87,39 @@
# Space delimited list of virtual network devices,mac addresses
# and IP addresses to create local bridges on using the following format:
#
-# <virtual network device>,<mac address>,,
+# <virtual network device>,<mac address>,,,
#
-# Example: "veth2,00:16:3E:01:00:02,172.22.0.1/16,nat veth3,00:16:3E:01:00:03,172.23.0.1/16,hostonly"
+# Example: "veth2,00:16:3E:01:00:02,172.22.0.1/16,nat,dhcp-on veth3,00:16:3E:01:00:03,172.23.0.1/16,hostonly,dhcp-off"
#
# The above example would create 2 local bridged the first being a NATed network
# and the second being a host only network
#
-LOCAL_BRIDGE_LIST="veth2,00:16:3E:01:00:02,172.22.0.1/16,nat veth3,00:16:3E:01:00:03,172.23.0.1/16,hostonly"
+# Used by network-multinet v1.x only
+#
+LOCAL_BRIDGE_LIST="veth2,00:16:3E:01:00:02,172.22.0.1/16,nat,dhcp-off veth3,00:16:3E:01:00:03,172.23.0.1/16,hostonly,dhcp-off"
+
+## Type: list()
+## Default: ""
+## Config:
+#
+# Space delimited list of bridge numbers/NICs to
+# create "no-host" bridges on.
+#
+# No-Host bridges are bridges that are connected to a
+# physical interface but not to an interface in Domain0.
+# VMs connected to them are bridged to the outside world
+# but cannot communicate with Domain0
+#
+# Example: "eth1,4"
+#
+# The above example would create a single NO-Host bridge named xenbr4
+# that would have the eth1 interface connected to it as a bridge port
+#
+# Used by network-multinet v1.x only
+#
+NOHOST_BRIDGE_LIST=""
+## Type: string(eth
## Type: list()
## Default: ""
## Config:
@@ -49,14 +131,73 @@
#
# The above example would create two empty bridges named xenbr4 and xenbr5
#
+# Used by network-multinet v1.x only
+#
EMPTY_BRIDGE_LIST="4"
-## Type: string(eth0,eth1,eth2,eth3)
-## Default: "eth0"
+## Type: string(128-249)
+## Default: "128-249"
## Config:
#
-# Network interface to use as the external interface for NATed
-# and Routed networks
+# IP address range for the dhcp server. These should be the
+# beginning and ending addresses from the last octet of the
+# IP address
+#
+XEN_DHCP_RANGE="128-249"
+
+## Type: string(137.65.1.1,137.65.1.2)
+## Default: "gateway"
+## Config:
+#
+# IP address(es) of DNS servers for the dhcp server to give out.
+# If set to "gateway" then the IP address of the gateway will be
+# set as the DNS server.
+#
+# Examples: "137.65.1.1,137.65.1.2"
+# "gateway"
+#
+XEN_DHCP_DNS_SERVERS="gateway"
+
+## Type: boolean
+## Default: "false"
+## Config:
+#
+# If set to true the xend-relocation script will enable/disable
+# the vm migration feature of xend..
+#
+ENABLE_RELOCATION="false"
+
+## Type: list()
+## Default: "any"
+## Config:
+#
+# Space delimited list of IP addresses/host names of machines
+# that xen will accept vm migrations from. If set to 'any'
+# xen will accept vm migrations from any host
+#
+# Example: "10.0.0.1 10.0.0.2" would allow relocation to/from thos IPs
+# Example: "any" would allow reloaction to/from any host
+#
+RELOCATION_NODELIST="any"
+
+## Type: boolean
+## Default: "false"
+## Config:
+#
+# If set to true the xend-relocation script will attempt to
+# enable/disable vm migration on all relocation nodes listed
+# in the RELOCATION_LIST variable.
+#
+# Note: Communication with the nodes is done via ssh so
+# pre-distributed ssh keys is recommended.
+#
+MANAGE_ALL_RELOCATION_NODES="false"
+
+## Type: integer
+## Default: "8002"
+## Config:
+#
+# The TCP port used by Xen for VM relocation
#
-NAT_EXTERNAL_INTERFACE="eth0"
+XEN_RELOCATION_PORT="8002"
++++++ tools-xc_kexec.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -23,24 +23,16 @@
tools/xcutils/xc_kexec.c | 503 +++++++++++++++
19 files changed, 4988 insertions(+), 2 deletions(-)
-Index: xen-unstable/tools/xcutils/Makefile
+Index: xen-3.2-testing/tools/xcutils/Makefile
===================================================================
---- xen-unstable.orig/tools/xcutils/Makefile
-+++ xen-unstable/tools/xcutils/Makefile
-@@ -15,14 +15,14 @@ PROGRAMS_INSTALL_DIR = /usr/$(LIBDIR)/xe
-
- INCLUDES += -I $(XEN_LIBXC) -I $(XEN_XENSTORE)
-
--CFLAGS += -Werror -fno-strict-aliasing
-+CFLAGS += -g -O0 -Werror -fno-strict-aliasing
- CFLAGS += $(INCLUDES)
-
- # Make gcc generate dependencies.
+--- xen-3.2-testing.orig/tools/xcutils/Makefile
++++ xen-3.2-testing/tools/xcutils/Makefile
+@@ -22,7 +22,7 @@ CFLAGS += $(INCLUDES)
CFLAGS += -Wp,-MD,.$(@F).d
PROG_DEP = .*.d
-PROGRAMS = xc_restore xc_save readnotes
-+PROGRAMS = xc_restore xc_save readnotes xc_kexec
++PROGRAMS = xc_restore xc_save readnotes xc_kexec
LDLIBS = -L$(XEN_LIBXC) -L$(XEN_XENSTORE) -lxenguest -lxenctrl -lxenstore
@@ -63,10 +55,10 @@
+ make -C helper clean
-include $(PROG_DEP)
-Index: xen-unstable/tools/xcutils/helper/Makefile
+Index: xen-3.2-testing/tools/xcutils/helper/Makefile
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/Makefile
++++ xen-3.2-testing/tools/xcutils/helper/Makefile
@@ -0,0 +1,39 @@
+
+XEN_ROOT = ../../..
@@ -107,10 +99,10 @@
+# dependencies
+
+$(XEN_TARGET_ARCH)/entry.o: $(XEN_TARGET_ARCH)/entry.S $(XEN_TARGET_ARCH)/offsets.h
-Index: xen-unstable/tools/xcutils/helper/console.c
+Index: xen-3.2-testing/tools/xcutils/helper/console.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/console.c
++++ xen-3.2-testing/tools/xcutils/helper/console.c
@@ -0,0 +1,69 @@
+#include
+
@@ -181,10 +173,10 @@
+
+ return printed_len;
+}
-Index: xen-unstable/tools/xcutils/helper/ctype.c
+Index: xen-3.2-testing/tools/xcutils/helper/ctype.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/ctype.c
++++ xen-3.2-testing/tools/xcutils/helper/ctype.c
@@ -0,0 +1,35 @@
+/*
+ * linux/lib/ctype.c
@@ -221,10 +213,10 @@
+_L,_L,_L,_L,_L,_L,_L,_P,_L,_L,_L,_L,_L,_L,_L,_L}; /* 240-255 */
+
+EXPORT_SYMBOL(_ctype);
-Index: xen-unstable/tools/xcutils/helper/ctype.h
+Index: xen-3.2-testing/tools/xcutils/helper/ctype.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/ctype.h
++++ xen-3.2-testing/tools/xcutils/helper/ctype.h
@@ -0,0 +1,54 @@
+#ifndef _LINUX_CTYPE_H
+#define _LINUX_CTYPE_H
@@ -280,10 +272,10 @@
+#define toupper(c) __toupper(c)
+
+#endif
-Index: xen-unstable/tools/xcutils/helper/helper.h
+Index: xen-3.2-testing/tools/xcutils/helper/helper.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/helper.h
++++ xen-3.2-testing/tools/xcutils/helper/helper.h
@@ -0,0 +1,107 @@
+#include
+#include
@@ -392,10 +384,10 @@
+int sprintf(char * buf, const char *fmt, ...);
+int vsscanf(const char * buf, const char * fmt, va_list args);
+int sscanf(const char * buf, const char * fmt, ...);
-Index: xen-unstable/tools/xcutils/helper/main.c
+Index: xen-3.2-testing/tools/xcutils/helper/main.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/main.c
++++ xen-3.2-testing/tools/xcutils/helper/main.c
@@ -0,0 +1,651 @@
+#include
+#include "hypercall.h"
@@ -1048,10 +1040,10 @@
+ printk("\r\n");
+ start_kernel();
+}
-Index: xen-unstable/tools/xcutils/helper/make-offsets.c
+Index: xen-3.2-testing/tools/xcutils/helper/make-offsets.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/make-offsets.c
++++ xen-3.2-testing/tools/xcutils/helper/make-offsets.c
@@ -0,0 +1,28 @@
+#include
+#include
@@ -1081,10 +1073,10 @@
+ vcpu_off("cr3", ctrlreg[3]);
+ return 0;
+}
-Index: xen-unstable/tools/xcutils/helper/printk.c
+Index: xen-3.2-testing/tools/xcutils/helper/printk.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/printk.c
++++ xen-3.2-testing/tools/xcutils/helper/printk.c
@@ -0,0 +1,1051 @@
+/*
+ * linux/kernel/printk.c
@@ -2137,10 +2129,10 @@
+ printk_ratelimit_burst);
+}
+EXPORT_SYMBOL(printk_ratelimit);
-Index: xen-unstable/tools/xcutils/helper/string.c
+Index: xen-3.2-testing/tools/xcutils/helper/string.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/string.c
++++ xen-3.2-testing/tools/xcutils/helper/string.c
@@ -0,0 +1,601 @@
+/*
+ * linux/lib/string.c
@@ -2743,10 +2735,10 @@
+}
+EXPORT_SYMBOL(memchr);
+#endif
-Index: xen-unstable/tools/xcutils/helper/vsprintf.c
+Index: xen-3.2-testing/tools/xcutils/helper/vsprintf.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/vsprintf.c
++++ xen-3.2-testing/tools/xcutils/helper/vsprintf.c
@@ -0,0 +1,842 @@
+/*
+ * linux/lib/vsprintf.c
@@ -3590,10 +3582,10 @@
+}
+
+EXPORT_SYMBOL(sscanf);
-Index: xen-unstable/tools/xcutils/helper/x86_32/div64.h
+Index: xen-3.2-testing/tools/xcutils/helper/x86_32/div64.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/x86_32/div64.h
++++ xen-3.2-testing/tools/xcutils/helper/x86_32/div64.h
@@ -0,0 +1,48 @@
+#ifndef __I386_DIV64
+#define __I386_DIV64
@@ -3643,10 +3635,10 @@
+
+}
+#endif
-Index: xen-unstable/tools/xcutils/helper/x86_32/entry.S
+Index: xen-3.2-testing/tools/xcutils/helper/x86_32/entry.S
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/x86_32/entry.S
++++ xen-3.2-testing/tools/xcutils/helper/x86_32/entry.S
@@ -0,0 +1,49 @@
+#include "offsets.h"
+
@@ -3697,10 +3689,10 @@
+ nop
+ .align 4096
+hypercall_end:
-Index: xen-unstable/tools/xcutils/helper/x86_32/hypercall.h
+Index: xen-3.2-testing/tools/xcutils/helper/x86_32/hypercall.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/x86_32/hypercall.h
++++ xen-3.2-testing/tools/xcutils/helper/x86_32/hypercall.h
@@ -0,0 +1,359 @@
+/******************************************************************************
+ * hypercall.h
@@ -4061,10 +4053,10 @@
+
+
+#endif /* __HYPERCALL_H__ */
-Index: xen-unstable/tools/xcutils/helper/x86_64/div64.h
+Index: xen-3.2-testing/tools/xcutils/helper/x86_64/div64.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/x86_64/div64.h
++++ xen-3.2-testing/tools/xcutils/helper/x86_64/div64.h
@@ -0,0 +1,57 @@
+#ifndef _ASM_GENERIC_DIV64_H
+#define _ASM_GENERIC_DIV64_H
@@ -4123,10 +4115,10 @@
+#endif /* BITS_PER_LONG */
+
+#endif /* _ASM_GENERIC_DIV64_H */
-Index: xen-unstable/tools/xcutils/helper/x86_64/entry.S
+Index: xen-3.2-testing/tools/xcutils/helper/x86_64/entry.S
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/x86_64/entry.S
++++ xen-3.2-testing/tools/xcutils/helper/x86_64/entry.S
@@ -0,0 +1,50 @@
+#include "offsets.h"
+
@@ -4178,10 +4170,10 @@
+ nop
+ .align 4096
+hypercall_end:
-Index: xen-unstable/tools/xcutils/helper/x86_64/hypercall.h
+Index: xen-3.2-testing/tools/xcutils/helper/x86_64/hypercall.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/helper/x86_64/hypercall.h
++++ xen-3.2-testing/tools/xcutils/helper/x86_64/hypercall.h
@@ -0,0 +1,354 @@
+/******************************************************************************
+ * hypercall.h
@@ -4537,10 +4529,10 @@
+}
+
+#endif /* __HYPERCALL_H__ */
-Index: xen-unstable/tools/xcutils/kexec-syscall.h
+Index: xen-3.2-testing/tools/xcutils/kexec-syscall.h
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/kexec-syscall.h
++++ xen-3.2-testing/tools/xcutils/kexec-syscall.h
@@ -0,0 +1,80 @@
+#ifndef KEXEC_SYSCALL_H
+#define KEXEC_SYSCALL_H
@@ -4622,10 +4614,10 @@
+#define KEXEC_MAX_SEGMENTS 16
+
+#endif /* KEXEC_SYSCALL_H */
-Index: xen-unstable/tools/xcutils/xc_kexec.c
+Index: xen-3.2-testing/tools/xcutils/xc_kexec.c
===================================================================
--- /dev/null
-+++ xen-unstable/tools/xcutils/xc_kexec.c
++++ xen-3.2-testing/tools/xcutils/xc_kexec.c
@@ -0,0 +1,503 @@
+#include
+#include
++++++ vnc-i18n-keys.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,7 +1,7 @@
-Index: xen-3.1-testing/tools/ioemu/sdl_keysym.h
+Index: xen-3.2-testing/tools/ioemu/sdl_keysym.h
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/sdl_keysym.h
-+++ xen-3.1-testing/tools/ioemu/sdl_keysym.h
+--- xen-3.2-testing.orig/tools/ioemu/sdl_keysym.h
++++ xen-3.2-testing/tools/ioemu/sdl_keysym.h
@@ -274,5 +274,27 @@ static name2keysym_t name2keysym[]={
{"Pause", SDLK_PAUSE},
{"Escape", SDLK_ESCAPE},
@@ -30,53 +30,13 @@
{0,0},
};
+
-Index: xen-3.1-testing/tools/ioemu/vnc_keysym.h
+Index: xen-3.2-testing/tools/python/xen/xend/XendOptions.py
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/vnc_keysym.h
-+++ xen-3.1-testing/tools/ioemu/vnc_keysym.h
-@@ -291,10 +291,34 @@ static name2keysym_t name2keysym[]={
- {"BackApostrophe", 0xff21},
- {"Muhenkan", 0xff22},
- {"Katakana", 0xff25},
--{"Zenkaku_Hankaku", 0xff29},
-+{"Hankaku", 0xff29},
-+{"Zenkaku_Hankaku", 0xff2a},
- {"Henkan_Mode_Real", 0xff23},
- {"Henkan_Mode_Ultra", 0xff3e},
- {"backslash_ja", 0xffa5},
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendOptions.py
++++ xen-3.2-testing/tools/python/xen/xend/XendOptions.py
+@@ -315,6 +315,9 @@ class XendOptions:
+ return self.get_config_string('vnc-x509-verify', self.xend_vnc_x509_verify)
-+ /* dead keys */
-+{"dead_grave", 0xfe50},
-+{"dead_acute", 0xfe51},
-+{"dead_circumflex", 0xfe52},
-+{"dead_tilde", 0xfe53},
-+{"dead_macron", 0xfe54},
-+{"dead_brev", 0xfe55},
-+{"dead_abovedot", 0xfe56},
-+{"dead_diaeresis", 0xfe57},
-+{"dead_abovering", 0xfe58},
-+{"dead_doubleacute", 0xfe59},
-+{"dead_caron", 0xfe5a},
-+{"dead_cedilla", 0xfe5b},
-+{"dead_ogonek", 0xfe5c},
-+{"dead_iota", 0xfe5d},
-+{"dead_voiced_sound", 0xfe5e},
-+{"dead_semivoiced_sound", 0xfe5f},
-+{"dead_belowdot", 0xfe60},
-+{"dead_hook", 0xfe61},
-+{"dead_horn", 0xfe62},
-+
-+
- {0,0},
- };
-+
-Index: xen-3.1-testing/tools/python/xen/xend/XendOptions.py
-===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xend/XendOptions.py
-+++ xen-3.1-testing/tools/python/xen/xend/XendOptions.py
-@@ -278,6 +278,9 @@ class XendOptions:
- return self.get_config_string('vncpasswd',
- self.vncpasswd_default)
+ def get_keymap(self):
+ return self.get_config_value('keymap', None)
@@ -84,44 +44,11 @@
class XendOptionsFile(XendOptions):
"""Default path to the config file."""
-Index: xen-3.1-testing/tools/python/xen/xend/XendConfig.py
-===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xend/XendConfig.py
-+++ xen-3.1-testing/tools/python/xen/xend/XendConfig.py
-@@ -27,6 +27,7 @@ from xen.xend.XendError import VmError
- from xen.xend.XendDevices import XendDevices
- from xen.xend.PrettyPrint import prettyprintstring
- from xen.xend.XendConstants import DOM_STATE_HALTED
-+from xen.xend import XendOptions
-
- log = logging.getLogger("xend.XendConfig")
- log.setLevel(logging.WARN)
-@@ -389,6 +390,8 @@ class XendConfig(dict):
- self['name_label'] = 'Domain-' + self['uuid']
-
- def _platform_sanity_check(self):
-+ if 'keymap' not in self['platform'] and XendOptions.instance().get_keymap():
-+ self['platform']['keymap'] = XendOptions.instance().get_keymap()
- if self.is_hvm():
- if 'device_model' not in self['platform']:
- self['platform']['device_model'] = DEFAULT_DM
-Index: xen-3.1-testing/tools/examples/xend-config.sxp
-===================================================================
---- xen-3.1-testing.orig/tools/examples/xend-config.sxp
-+++ xen-3.1-testing/tools/examples/xend-config.sxp
-@@ -197,3 +197,7 @@
- # The default password for VNC console on HVM domain.
- # Empty string is no authentication.
- (vncpasswd '')
-+
-+# The default keymap to use for the VM's virtual keyboard.
-+#(keymap 'en-us')
-+
-Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
+Index: xen-3.2-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
-@@ -1333,6 +1333,9 @@ class XendDomainInfo:
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendDomainInfo.py
++++ xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
+@@ -1524,6 +1524,9 @@ class XendDomainInfo:
if devclass in XendDevices.valid_devices():
log.info("createDevice: %s : %s" % (devclass, scrub_password(config)))
dev_uuid = config.get('uuid')
++++++ x86_64-syscall-clear-df.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,12 +1,12 @@
-Index: 2007-05-14/xen/arch/x86/x86_64/entry.S
+Index: xen-3.2-testing/xen/arch/x86/x86_64/entry.S
===================================================================
---- 2007-05-14.orig/xen/arch/x86/x86_64/entry.S 2007-07-02 11:58:14.000000000 +0200
-+++ 2007-05-14/xen/arch/x86/x86_64/entry.S 2007-07-02 12:03:27.000000000 +0200
-@@ -34,6 +34,7 @@ switch_to_kernel:
+--- xen-3.2-testing.orig/xen/arch/x86/x86_64/entry.S
++++ xen-3.2-testing/xen/arch/x86/x86_64/entry.S
+@@ -93,6 +93,7 @@ failsafe_callback:
jnc 1f
- movb $TBF_INTERRUPT,TRAPBOUNCE_flags(%rdx)
+ orb $TBF_INTERRUPT,TRAPBOUNCE_flags(%rdx)
1: call create_bounce_frame
+ andl $~X86_EFLAGS_DF,UREGS_eflags(%rsp)
jmp test_all_events
-
- /* %rbx: struct vcpu, interrupts disabled */
+ .previous
+ .section __pre_ex_table,"a"
++++++ x86_emulate-eflags.patch ++++++
++++ 623 lines (skipped)
++++++ x86_emulate.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.1-testing/xen/arch/x86/mm.c
+Index: xen-3.2-testing/xen/arch/x86/mm.c
===================================================================
---- xen-3.1-testing.orig/xen/arch/x86/mm.c
-+++ xen-3.1-testing/xen/arch/x86/mm.c
-@@ -3500,6 +3500,7 @@ static int ptwr_emulated_cmpxchg(
+--- xen-3.2-testing.orig/xen/arch/x86/mm.c
++++ xen-3.2-testing/xen/arch/x86/mm.c
+@@ -3556,6 +3556,7 @@ static int ptwr_emulated_cmpxchg(
container_of(ctxt, struct ptwr_emulate_ctxt, ctxt));
}
@@ -10,7 +10,7 @@
static int ptwr_emulated_cmpxchg8b(
enum x86_segment seg,
unsigned long offset,
-@@ -3515,13 +3516,16 @@ static int ptwr_emulated_cmpxchg8b(
+@@ -3571,13 +3572,16 @@ static int ptwr_emulated_cmpxchg8b(
offset, ((u64)old_hi << 32) | old, ((u64)new_hi << 32) | new, 8, 1,
container_of(ctxt, struct ptwr_emulate_ctxt, ctxt));
}
@@ -28,11 +28,11 @@
};
/* Write page fault handler: check if guest is trying to modify a PTE. */
-Index: xen-3.1-testing/xen/arch/x86/mm/shadow/common.c
+Index: xen-3.2-testing/xen/arch/x86/mm/shadow/common.c
===================================================================
---- xen-3.1-testing.orig/xen/arch/x86/mm/shadow/common.c
-+++ xen-3.1-testing/xen/arch/x86/mm/shadow/common.c
-@@ -310,6 +310,7 @@ hvm_emulate_cmpxchg(enum x86_segment seg
+--- xen-3.2-testing.orig/xen/arch/x86/mm/shadow/common.c
++++ xen-3.2-testing/xen/arch/x86/mm/shadow/common.c
+@@ -252,6 +252,7 @@ hvm_emulate_cmpxchg(enum x86_segment seg
v, addr, old, new, bytes, sh_ctxt);
}
@@ -40,7 +40,7 @@
static int
hvm_emulate_cmpxchg8b(enum x86_segment seg,
unsigned long offset,
-@@ -333,13 +334,16 @@ hvm_emulate_cmpxchg8b(enum x86_segment s
+@@ -275,13 +276,16 @@ hvm_emulate_cmpxchg8b(enum x86_segment s
return v->arch.paging.mode->shadow.x86_emulate_cmpxchg8b(
v, addr, old_lo, old_hi, new_lo, new_hi, sh_ctxt);
}
@@ -58,7 +58,7 @@
};
static int
-@@ -390,6 +394,7 @@ pv_emulate_cmpxchg(enum x86_segment seg,
+@@ -332,6 +336,7 @@ pv_emulate_cmpxchg(enum x86_segment seg,
v, offset, old, new, bytes, sh_ctxt);
}
@@ -66,7 +66,7 @@
static int
pv_emulate_cmpxchg8b(enum x86_segment seg,
unsigned long offset,
-@@ -405,13 +410,16 @@ pv_emulate_cmpxchg8b(enum x86_segment se
+@@ -347,13 +352,16 @@ pv_emulate_cmpxchg8b(enum x86_segment se
return v->arch.paging.mode->shadow.x86_emulate_cmpxchg8b(
v, offset, old_lo, old_hi, new_lo, new_hi, sh_ctxt);
}
@@ -84,7 +84,7 @@
};
struct x86_emulate_ops *shadow_init_emulation(
-@@ -425,7 +433,12 @@ struct x86_emulate_ops *shadow_init_emul
+@@ -367,7 +375,12 @@ struct x86_emulate_ops *shadow_init_emul
if ( !is_hvm_vcpu(v) )
{
@@ -97,11 +97,11 @@
return &pv_shadow_emulator_ops;
}
-Index: xen-3.1-testing/xen/arch/x86/mm/shadow/multi.c
+Index: xen-3.2-testing/xen/arch/x86/mm/shadow/multi.c
===================================================================
---- xen-3.1-testing.orig/xen/arch/x86/mm/shadow/multi.c
-+++ xen-3.1-testing/xen/arch/x86/mm/shadow/multi.c
-@@ -4025,7 +4025,8 @@ sh_x86_emulate_cmpxchg(struct vcpu *v, u
+--- xen-3.2-testing.orig/xen/arch/x86/mm/shadow/multi.c
++++ xen-3.2-testing/xen/arch/x86/mm/shadow/multi.c
+@@ -4230,7 +4230,8 @@ sh_x86_emulate_cmpxchg(struct vcpu *v, u
return rv;
}
@@ -111,15 +111,15 @@
sh_x86_emulate_cmpxchg8b(struct vcpu *v, unsigned long vaddr,
unsigned long old_lo, unsigned long old_hi,
unsigned long new_lo, unsigned long new_hi,
-@@ -4068,6 +4069,7 @@ sh_x86_emulate_cmpxchg8b(struct vcpu *v,
- shadow_audit_tables(v);
+@@ -4265,6 +4266,7 @@ sh_x86_emulate_cmpxchg8b(struct vcpu *v,
+ shadow_unlock(v->domain);
return rv;
}
+#endif
/**************************************************************************/
-@@ -4352,7 +4354,9 @@ struct paging_mode sh_paging_mode = {
+@@ -4551,7 +4553,9 @@ struct paging_mode sh_paging_mode = {
.shadow.detach_old_tables = sh_detach_old_tables,
.shadow.x86_emulate_write = sh_x86_emulate_write,
.shadow.x86_emulate_cmpxchg = sh_x86_emulate_cmpxchg,
@@ -129,21 +129,21 @@
.shadow.make_monitor_table = sh_make_monitor_table,
.shadow.destroy_monitor_table = sh_destroy_monitor_table,
#if SHADOW_OPTIMIZATIONS & SHOPT_WRITABLE_HEURISTIC
-Index: xen-3.1-testing/xen/arch/x86/x86_emulate.c
+Index: xen-3.2-testing/xen/arch/x86/x86_emulate.c
===================================================================
---- xen-3.1-testing.orig/xen/arch/x86/x86_emulate.c
-+++ xen-3.1-testing/xen/arch/x86/x86_emulate.c
+--- xen-3.2-testing.orig/xen/arch/x86/x86_emulate.c
++++ xen-3.2-testing/xen/arch/x86/x86_emulate.c
@@ -30,6 +30,7 @@
#include
#include
#include
+#include
#undef cmpxchg
+ #undef cpuid
#endif
- #include
-@@ -2336,58 +2337,63 @@ x86_emulate(
- break;
- }
+@@ -2954,58 +2955,63 @@ x86_emulate(
+ src.val = x86_seg_gs;
+ goto pop_seg;
- case 0xc7: /* Grp9 (cmpxchg8b) */
-#if defined(__i386__)
@@ -158,7 +158,7 @@
- {
- _regs.eax = old_lo;
- _regs.edx = old_hi;
-- _regs.eflags &= ~EFLG_ZF;
+- _regs.eflags &= ~EF_ZF;
- }
- else if ( ops->cmpxchg8b == NULL )
- {
@@ -175,7 +175,7 @@
+
+ if ( (rc = ops->read(ea.mem.seg, ea.mem.off, &old, 8, ctxt)) != 0 )
goto done;
-- _regs.eflags |= EFLG_ZF;
+- _regs.eflags |= EF_ZF;
- }
- break;
- }
@@ -190,13 +190,13 @@
- {
- _regs.eax = (uint32_t)(old>>0);
- _regs.edx = (uint32_t)(old>>32);
-- _regs.eflags &= ~EFLG_ZF;
+- _regs.eflags &= ~EF_ZF;
+ if ( ((uint32_t)(old>>0) != (uint32_t)_regs.eax) ||
+ ((uint32_t)(old>>32) != (uint32_t)_regs.edx) )
+ {
+ _regs.eax = (uint32_t)(old>>0);
+ _regs.edx = (uint32_t)(old>>32);
-+ _regs.eflags &= ~EFLG_ZF;
++ _regs.eflags &= ~EF_ZF;
+ }
+ else
+ {
@@ -204,7 +204,7 @@
+ if ( (rc = ops->cmpxchg(ea.mem.seg, ea.mem.off, old,
+ new, 8, ctxt)) != 0 )
+ goto done;
-+ _regs.eflags |= EFLG_ZF;
++ _regs.eflags |= EF_ZF;
+ }
}
+ else if ( !cpu_has_cmpxchg16b )
@@ -222,12 +222,12 @@
+ (rc = ops->read(ea.mem.seg, ea.mem.off+sizeof(old_lo),
+ &old_hi, sizeof(old_lo), ctxt)) )
goto done;
-- _regs.eflags |= EFLG_ZF;
+- _regs.eflags |= EF_ZF;
+ if ( (old_lo != _regs.eax) || (old_hi != _regs.edx) )
+ {
+ _regs.eax = old_lo;
+ _regs.edx = old_hi;
-+ _regs.eflags &= ~EFLG_ZF;
++ _regs.eflags &= ~EF_ZF;
+ }
+ else if ( ops->cmpxchg2 == NULL )
+ {
@@ -239,7 +239,7 @@
+ if ( (rc = ops->cmpxchg2(ea.mem.seg, ea.mem.off, old_lo, old_hi,
+ _regs.ebx, _regs.ecx, ctxt)) != 0 )
+ goto done;
-+ _regs.eflags |= EFLG_ZF;
++ _regs.eflags |= EF_ZF;
+ }
}
break;
@@ -248,7 +248,7 @@
case 0xc8 ... 0xcf: /* bswap */
dst.type = OP_REG;
-@@ -2397,7 +2403,7 @@ x86_emulate(
+@@ -3015,7 +3021,7 @@ x86_emulate(
{
default: /* case 2: */
/* Undefined behaviour. Writes zero on all tested CPUs. */
@@ -257,31 +257,31 @@
break;
case 4:
#ifdef __x86_64__
-Index: xen-3.1-testing/xen/include/asm-x86/cpufeature.h
+Index: xen-3.2-testing/xen/include/asm-x86/cpufeature.h
===================================================================
---- xen-3.1-testing.orig/xen/include/asm-x86/cpufeature.h
-+++ xen-3.1-testing/xen/include/asm-x86/cpufeature.h
-@@ -121,6 +121,7 @@
+--- xen-3.2-testing.orig/xen/include/asm-x86/cpufeature.h
++++ xen-3.2-testing/xen/include/asm-x86/cpufeature.h
+@@ -145,6 +145,7 @@
#define cpu_has_cyrix_arr boot_cpu_has(X86_FEATURE_CYRIX_ARR)
#define cpu_has_centaur_mcr boot_cpu_has(X86_FEATURE_CENTAUR_MCR)
#define cpu_has_clflush boot_cpu_has(X86_FEATURE_CLFLSH)
+#define cpu_has_cmpxchg16b 0
+ #define cpu_has_page1gb 0
+ #define cpu_has_efer (boot_cpu_data.x86_capability[1] & 0x20100800)
#else /* __x86_64__ */
- #define cpu_has_vme 0
- #define cpu_has_de 1
-@@ -144,6 +145,7 @@
+@@ -171,6 +172,7 @@
#define cpu_has_cyrix_arr 0
#define cpu_has_centaur_mcr 0
#define cpu_has_clflush boot_cpu_has(X86_FEATURE_CLFLSH)
+#define cpu_has_cmpxchg16b boot_cpu_has(X86_FEATURE_CX16)
+ #define cpu_has_page1gb boot_cpu_has(X86_FEATURE_PAGE1GB)
+ #define cpu_has_efer 1
#endif
-
- #endif /* __ASM_I386_CPUFEATURE_H */
-Index: xen-3.1-testing/xen/include/asm-x86/x86_emulate.h
+Index: xen-3.2-testing/xen/include/asm-x86/x86_emulate.h
===================================================================
---- xen-3.1-testing.orig/xen/include/asm-x86/x86_emulate.h
-+++ xen-3.1-testing/xen/include/asm-x86/x86_emulate.h
-@@ -68,8 +68,9 @@ enum x86_segment {
+--- xen-3.2-testing.orig/xen/include/asm-x86/x86_emulate.h
++++ xen-3.2-testing/xen/include/asm-x86/x86_emulate.h
+@@ -95,8 +95,9 @@ struct segment_register {
* some out-of-band mechanism, unknown to the emulator. The memop signals
* failure by returning X86EMUL_EXCEPTION to the emulator, which will
* then immediately bail.
@@ -293,7 +293,7 @@
* 3. The emulator cannot handle 64-bit mode emulation on an x86/32 system.
*/
struct x86_emulate_ops
-@@ -129,16 +130,17 @@ struct x86_emulate_ops
+@@ -156,16 +157,17 @@ struct x86_emulate_ops
struct x86_emulate_ctxt *ctxt);
/*
@@ -316,11 +316,11 @@
enum x86_segment seg,
unsigned long offset,
unsigned long old_lo,
-Index: xen-3.1-testing/xen/include/asm-x86/paging.h
+Index: xen-3.2-testing/xen/include/asm-x86/paging.h
===================================================================
---- xen-3.1-testing.orig/xen/include/asm-x86/paging.h
-+++ xen-3.1-testing/xen/include/asm-x86/paging.h
-@@ -93,12 +93,14 @@ struct shadow_paging_mode {
+--- xen-3.2-testing.orig/xen/include/asm-x86/paging.h
++++ xen-3.2-testing/xen/include/asm-x86/paging.h
+@@ -83,12 +83,14 @@ struct shadow_paging_mode {
unsigned long new,
unsigned int bytes,
struct sh_emulate_ctxt *sh_ctxt);
++++++ x86-extra-trap-info.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,8 +1,8 @@
-Index: 2007-05-14/xen/arch/x86/x86_32/entry.S
+Index: 2007-11-13/xen/arch/x86/x86_32/entry.S
===================================================================
---- 2007-05-14.orig/xen/arch/x86/x86_32/entry.S 2007-05-14 14:40:35.000000000 +0200
-+++ 2007-05-14/xen/arch/x86/x86_32/entry.S 2007-04-27 09:57:47.000000000 +0200
-@@ -387,21 +387,33 @@ ring1: /* obtain ss/esp from oldss/olde
+--- 2007-11-13.orig/xen/arch/x86/x86_32/entry.S 2007-11-02 17:25:57.000000000 +0100
++++ 2007-11-13/xen/arch/x86/x86_32/entry.S 2007-11-13 15:28:49.000000000 +0100
+@@ -380,21 +380,33 @@ ring1: /* obtain ss/esp from oldss/olde
movl %eax,UREGS_eip+4(%esp)
ret
.section __ex_table,"a"
@@ -46,11 +46,11 @@
domain_crash_synchronous:
pushl $domain_crash_synchronous_string
call printk
-Index: 2007-05-14/xen/arch/x86/x86_64/entry.S
+Index: 2007-11-13/xen/arch/x86/x86_64/entry.S
===================================================================
---- 2007-05-14.orig/xen/arch/x86/x86_64/entry.S 2007-07-02 10:48:18.000000000 +0200
-+++ 2007-05-14/xen/arch/x86/x86_64/entry.S 2007-07-02 11:57:21.000000000 +0200
-@@ -338,17 +338,30 @@ create_bounce_frame:
+--- 2007-11-13.orig/xen/arch/x86/x86_64/entry.S 2007-11-02 17:25:58.000000000 +0100
++++ 2007-11-13/xen/arch/x86/x86_64/entry.S 2007-11-13 15:28:49.000000000 +0100
+@@ -399,17 +399,30 @@ create_bounce_frame:
movq %rax,UREGS_rip+8(%rsp)
ret
.section __ex_table,"a"
++++++ xen-3.1-testing-src.tar.bz2 -> xen-3.2-testing-src.tar.bz2 ++++++
arch/i386/xen/xen-3.1-testing-src.tar.bz2 /mounts/work_src_done/STABLE/xen/xen-3.2-testing-src.tar.bz2 differ: byte 11, line 1
++++++ xenapi-console-protocol.patch ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
+Index: xen-3.2-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
-@@ -2427,6 +2427,14 @@ class XendDomainInfo:
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendDomainInfo.py
++++ xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
+@@ -2684,6 +2684,14 @@ class XendDomainInfo:
if not config.has_key('backend'):
config['backend'] = "00000000-0000-0000-0000-000000000000"
++++++ xen-changeset.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,13 +1,13 @@
-Index: xen-unstable/xen/Makefile
+Index: xen-3.2-testing/xen/Makefile
===================================================================
---- xen-unstable.orig/xen/Makefile
-+++ xen-unstable/xen/Makefile
+--- xen-3.2-testing.orig/xen/Makefile
++++ xen-3.2-testing/xen/Makefile
@@ -1,3 +1,4 @@
+export XEN_CHANGESET = unavailable
# This is the correct place to edit the build version.
# All other places this is stored (eg. compile.h) should be autogenerated.
export XEN_VERSION = 3
-@@ -112,7 +113,7 @@ include/xen/compile.h: include/xen/compi
+@@ -99,7 +100,7 @@ include/xen/compile.h: include/xen/compi
-e 's/@@version@@/$(XEN_VERSION)/g' \
-e 's/@@subversion@@/$(XEN_SUBVERSION)/g' \
-e 's/@@extraversion@@/$(XEN_EXTRAVERSION)/g' \
++++++ xen-config.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,15 +1,13 @@
-Index: xen-3.0.5-testing/Config.mk
+Index: xen-3.2-testing/Config.mk
===================================================================
---- xen-3.0.5-testing.orig/Config.mk
-+++ xen-3.0.5-testing/Config.mk
-@@ -89,8 +89,8 @@ ACM_DEFAULT_SECURITY_POLICY ?= ACM_NULL_
+--- xen-3.2-testing.orig/Config.mk
++++ xen-3.2-testing/Config.mk
+@@ -88,7 +88,7 @@ ACM_SECURITY ?= n
# Optional components
XENSTAT_XENTOP ?= y
VTPM_TOOLS ?= n
-LIBXENAPI_BINDINGS ?= n
--XENFB_TOOLS ?= n
+LIBXENAPI_BINDINGS ?= y
-+XENFB_TOOLS ?= y
PYTHON_TOOLS ?= y
-include $(XEN_ROOT)/.config
++++++ xen-destdir.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,7 +1,7 @@
-Index: xen-3.1-testing/docs/Makefile
+Index: xen-3.2-testing/docs/Makefile
===================================================================
---- xen-3.1-testing.orig/docs/Makefile
-+++ xen-3.1-testing/docs/Makefile
+--- xen-3.2-testing.orig/docs/Makefile
++++ xen-3.2-testing/docs/Makefile
@@ -90,7 +90,8 @@ install: all
$(INSTALL_DIR) $(DESTDIR)$(mandir)
cp -dR man1 $(DESTDIR)$(mandir)
@@ -22,10 +22,10 @@
+ ln -sf $*.html html.done/$*/index.html
+ rm -rf html/
+
-Index: xen-3.1-testing/tools/xentrace/Makefile
+Index: xen-3.2-testing/tools/xentrace/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/xentrace/Makefile
-+++ xen-3.1-testing/tools/xentrace/Makefile
+--- xen-3.2-testing.orig/tools/xentrace/Makefile
++++ xen-3.2-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 @@
.PHONY: clean
clean:
-Index: xen-3.1-testing/tools/examples/Makefile
+Index: xen-3.2-testing/tools/examples/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/examples/Makefile
-+++ xen-3.1-testing/tools/examples/Makefile
+--- xen-3.2-testing.orig/tools/examples/Makefile
++++ xen-3.2-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,26 +100,26 @@
done
.PHONY: clean
-Index: xen-3.1-testing/tools/security/Makefile
+Index: xen-3.2-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)
+--- xen-3.2-testing.orig/tools/security/Makefile
++++ xen-3.2-testing/tools/security/Makefile
+@@ -64,9 +64,9 @@ install: all $(ACM_CONFIG_FILE)
$(INSTALL_DIR) $(DESTDIR)$(ACM_SECGEN_CGIDIR)
$(INSTALL_PROG) $(ACM_INST_CGI) $(DESTDIR)$(ACM_SECGEN_CGIDIR)
ifndef XEN_PYTHON_NATIVE_INSTALL
-- python python/setup.py install --home="$(DESTDIR)/usr" --install-lib="$(DESTDIR)$(LIBPATH)/python"
-+ python python/setup.py install --home="$(DESTDIR)/usr" --install-lib="$(DESTDIR)$(LIBPATH)/python" --prefix=""
+- python python/setup.py install --install-lib="$(DESTDIR)$(LIBPATH)/python"
++ python python/setup.py install --install-lib="$(DESTDIR)$(LIBPATH)/python" --prefix=""
else
- python python/setup.py install --root="$(DESTDIR)"
-+ python python/setup.py install --root="$(DESTDIR)" --prefix="/usr"
++ python python/setup.py install --root="$(DESTDIR)" --prefix="/usr"
endif
else
.PHONY: all
-Index: xen-3.1-testing/tools/pygrub/Makefile
+Index: xen-3.2-testing/tools/pygrub/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/pygrub/Makefile
-+++ xen-3.1-testing/tools/pygrub/Makefile
+--- xen-3.2-testing.orig/tools/pygrub/Makefile
++++ xen-3.2-testing/tools/pygrub/Makefile
@@ -16,7 +16,7 @@ install: all
$(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
else
@@ -129,11 +129,11 @@
$(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
endif
-Index: xen-3.1-testing/tools/python/Makefile
+Index: xen-3.2-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
+--- xen-3.2-testing.orig/tools/python/Makefile
++++ xen-3.2-testing/tools/python/Makefile
+@@ -80,7 +80,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
install: install-messages install-dtd
@@ -142,10 +142,10 @@
endif
install-dtd: all
-Index: xen-3.1-testing/tools/Makefile
+Index: xen-3.2-testing/tools/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/Makefile
-+++ xen-3.1-testing/tools/Makefile
+--- xen-3.2-testing.orig/tools/Makefile
++++ xen-3.2-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 @@
endif
.PHONY: all
-Index: xen-3.1-testing/docs/Docs.mk
+Index: xen-3.2-testing/docs/Docs.mk
===================================================================
---- xen-3.1-testing.orig/docs/Docs.mk
-+++ xen-3.1-testing/docs/Docs.mk
+--- xen-3.2-testing.orig/docs/Docs.mk
++++ xen-3.2-testing/docs/Docs.mk
@@ -8,6 +8,6 @@ POD2MAN := pod2man
DOT := dot
NEATO := neato
@@ -167,25 +167,11 @@
+pkgdocdir := $(DOCDIR)
+mandir := $(MANDIR)
-Index: xen-3.1-testing/tools/misc/xen-python-path
+Index: xen-3.2-testing/tools/xenstore/Makefile
===================================================================
---- 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']:
- for l in ['/usr/lib64', '/usr/lib']:
-- d = os.path.join(l, p)
-+ for s in ['site-packages', '']:
-+ d = os.path.join(l, p, s)
- if os.path.exists(os.path.join(d, AUXBIN)):
- sys.path.append(d)
- import xen.util.auxbin
-Index: xen-3.1-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)
+--- xen-3.2-testing.orig/tools/xenstore/Makefile
++++ xen-3.2-testing/tools/xenstore/Makefile
+@@ -20,6 +20,7 @@ LDFLAGS += $(PROFILE) -L$(XEN_LIBXC)
CLIENTS := xenstore-exists xenstore-list xenstore-read xenstore-rm xenstore-chmod
CLIENTS += xenstore-write
CLIENTS_OBJS := $(patsubst xenstore-%,xenstore_%.o,$(CLIENTS))
@@ -193,16 +179,16 @@
XENSTORED_OBJS = xenstored_core.o xenstored_watch.o xenstored_domain.o xenstored_transaction.o xs_lib.o talloc.o utils.o tdb.o hashtable.o
-@@ -33,7 +34,7 @@ XENSTORED_OBJS_$(CONFIG_SunOS) = xenstor
+@@ -30,7 +31,7 @@ XENSTORED_OBJS_$(CONFIG_NetBSD) = xensto
XENSTORED_OBJS += $(XENSTORED_OBJS_y)
.PHONY: all
-all: libxenstore.so libxenstore.a xenstored $(CLIENTS) xs_tdb_dump xenstore-control xenstore-ls
+all: libxenstore.so libxenstore.a xenstored $(CLIENTS) $(CLIENTS_DOMU) xs_tdb_dump xenstore-control xenstore-ls
- test_interleaved_transactions: test_interleaved_transactions.o
- $(CC) $(CFLAGS) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -L. -lxenstore -o $@
-@@ -47,6 +48,9 @@ xenstored: $(XENSTORED_OBJS)
+ xenstored: $(XENSTORED_OBJS)
+ $(CC) $(CFLAGS) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -lxenctrl $(SOCKET_LIBS) -o $@
+@@ -38,6 +39,9 @@ xenstored: $(XENSTORED_OBJS)
$(CLIENTS): xenstore-%: xenstore_%.o libxenstore.so
$(CC) $(CFLAGS) $(LDFLAGS) $< $(LOADLIBES) $(LDLIBS) -L. -lxenstore $(SOCKET_LIBS) -o $@
@@ -212,16 +198,16 @@
$(CLIENTS_OBJS): xenstore_%.o: xenstore_client.c
$(COMPILE.c) -DCLIENT_$(*F) -o $@ $<
-@@ -101,7 +105,7 @@ clean: testsuite-clean
+@@ -66,7 +70,7 @@ clean:
rm -f *.a *.o *.opic *.so*
rm -f xenstored xs_random xs_stress xs_crashme
- rm -f xs_test xenstored_test xs_tdb_dump xenstore-control xenstore-ls
+ rm -f xs_tdb_dump xenstore-control xenstore-ls
- rm -f $(CLIENTS)
+ rm -f $(CLIENTS) $(CLIENTS_DOMU)
$(RM) $(PROG_DEP)
- .PHONY: print-dir
-@@ -170,11 +174,15 @@ tarball: clean
+ .PHONY: TAGS
+@@ -81,11 +85,15 @@ tarball: clean
install: all
$(INSTALL_DIR) $(DESTDIR)/var/run/xenstored
$(INSTALL_DIR) $(DESTDIR)/var/lib/xenstored
@@ -237,16 +223,16 @@
$(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
+Index: xen-3.2-testing/tools/misc/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/misc/Makefile
-+++ xen-3.1-testing/tools/misc/Makefile
+--- xen-3.2-testing.orig/tools/misc/Makefile
++++ xen-3.2-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
+-INSTALL_SBIN = netfix xm xen-bugtool xen-python-path xend xenperf xsview
++INSTALL_SBIN = netfix xm xen-bugtool xen-python-path xend xsview
.PHONY: all
all: build
++++++ xen-disable-qemu-monitor.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -5,27 +5,27 @@
commands that can read/write dom0's state.
-Index: xen-3.1-testing/tools/ioemu/monitor.c
+Index: xen-3.2-testing/tools/ioemu/monitor.c
===================================================================
---- xen-3.1-testing.orig/tools/ioemu/monitor.c
-+++ xen-3.1-testing/tools/ioemu/monitor.c
-@@ -1158,6 +1158,7 @@ static term_cmd_t term_cmds[] = {
- "", "commit changes to the disk images (if -snapshot is used)" },
+--- xen-3.2-testing.orig/tools/ioemu/monitor.c
++++ xen-3.2-testing/tools/ioemu/monitor.c
+@@ -1231,6 +1231,7 @@ static term_cmd_t term_cmds[] = {
+ "device|all", "commit changes to the disk images (if -snapshot is used) or backing files" },
{ "info", "s?", do_info,
"subcommand", "show various information about the system state" },
+#ifdef CONFIG_TRUSTED_CLIENT
{ "q|quit", "", do_quit,
"", "quit the emulator" },
{ "eject", "-fB", do_eject,
-@@ -1168,6 +1169,7 @@ static term_cmd_t term_cmds[] = {
+@@ -1241,6 +1242,7 @@ static term_cmd_t term_cmds[] = {
"filename", "save screen into PPM image 'filename'" },
{ "log", "s", do_log,
"item1[,...]", "activate logging of the specified items to '/tmp/qemu.log'" },
+#endif
#ifndef CONFIG_DM
- { "savevm", "F", do_savevm,
- "filename", "save the whole virtual machine state to 'filename'" },
-@@ -1199,12 +1201,14 @@ static term_cmd_t term_cmds[] = {
+ { "savevm", "s?", do_savevm,
+ "tag|id", "save a VM snapshot. If no tag or id are provided, a new snapshot is created" },
+@@ -1274,12 +1276,14 @@ static term_cmd_t term_cmds[] = {
{ "system_powerdown", "", do_system_powerdown,
"", "send system power down event" },
#endif /* !CONFIG_DM */
@@ -40,23 +40,23 @@
#ifndef CONFIG_DM
{ "cpu", "i", do_cpu_set,
"index", "set the default CPU" },
-@@ -1213,6 +1217,7 @@ static term_cmd_t term_cmds[] = {
- "dx dy [dz]", "send mouse move events" },
- { "mouse_button", "i", do_mouse_button,
+@@ -1290,6 +1294,7 @@ static term_cmd_t term_cmds[] = {
"state", "change mouse button state (1=L, 2=M, 4=R)" },
+ { "mouse_set", "i", do_mouse_set,
+ "index", "set which mouse device receives events" },
+#ifdef CONFIG_TRUSTED_CLIENT
#ifdef HAS_AUDIO
{ "wavcapture", "si?i?i?", do_wav_capture,
"path [frequency bits channels]",
-@@ -1220,6 +1225,7 @@ static term_cmd_t term_cmds[] = {
+@@ -1297,6 +1302,7 @@ static term_cmd_t term_cmds[] = {
#endif
{ "stopcapture", "i", do_stop_capture,
"capture index", "stop capture" },
+#endif
- { NULL, NULL, },
- };
-
-@@ -1258,6 +1264,7 @@ static term_cmd_t info_cmds[] = {
+ #ifndef CONFIG_DM
+ { "memsave", "lis", do_memory_save,
+ "addr size file", "save to disk virtual memory dump starting at 'addr' of size 'size'", },
+@@ -1339,6 +1345,7 @@ static term_cmd_t info_cmds[] = {
#endif /* !CONFIG_DM */
{ "usb", "", usb_info,
"", "show guest USB devices", },
@@ -64,9 +64,9 @@
{ "usbhost", "", usb_host_info,
"", "show host USB devices", },
{ "profile", "", do_info_profile,
-@@ -1268,6 +1275,7 @@ static term_cmd_t info_cmds[] = {
+@@ -1355,6 +1362,7 @@ static term_cmd_t info_cmds[] = {
{ "hvmiopage", "", sp_info,
- "", "show HVM device model shared page info", },
+ "", "show HVM device model shared page info" },
#endif /* CONFIG_DM */
+#endif
{ NULL, NULL, },
++++++ xen-domUloader.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,7 +1,7 @@
-Index: xen-3.1-testing/tools/python/xen/xend/XendBootloader.py
+Index: xen-3.2-testing/tools/python/xen/xend/XendBootloader.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xend/XendBootloader.py
-+++ xen-3.1-testing/tools/python/xen/xend/XendBootloader.py
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendBootloader.py
++++ xen-3.2-testing/tools/python/xen/xend/XendBootloader.py
@@ -14,6 +14,7 @@
import os, select, errno, stat, signal
@@ -25,10 +25,10 @@
+ if m:
+ return vdisk == m.group(1) or vdisk == m.group(2)
+ return True
-Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
+Index: xen-3.2-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
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendDomainInfo.py
++++ xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -42,7 +42,7 @@ from xen.xend import balloon, sxp, uuid,
from xen.xend import XendOptions, XendNode, XendConfig
@@ -38,7 +38,7 @@
from xen.xend.XendError import XendError, VmError
from xen.xend.XendDevices import XendDevices
from xen.xend.XendTask import XendTask
-@@ -1859,8 +1859,11 @@ class XendDomainInfo:
+@@ -2009,8 +2009,11 @@ class XendDomainInfo:
blexec = osdep.pygrub_path
blcfg = None
++++++ xen-hvm-default-bridge.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:13.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:13.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-unstable/tools/examples/xend-config.sxp
+Index: xen-3.2-testing/tools/examples/xend-config.sxp
===================================================================
---- xen-unstable.orig/tools/examples/xend-config.sxp
-+++ xen-unstable/tools/examples/xend-config.sxp
-@@ -134,7 +134,8 @@
+--- xen-3.2-testing.orig/tools/examples/xend-config.sxp
++++ xen-3.2-testing/tools/examples/xend-config.sxp
+@@ -132,7 +132,8 @@
#
# (network-script 'network-bridge netdev=eth1')
#
@@ -12,19 +12,20 @@
#
# (network-script 'network-bridge bridge=<name>')
#
-Index: xen-unstable/tools/ioemu/vl.c
+Index: xen-3.2-testing/tools/ioemu/vl.c
===================================================================
---- xen-unstable.orig/tools/ioemu/vl.c
-+++ xen-unstable/tools/ioemu/vl.c
-@@ -90,7 +90,6 @@
-
- #include
+--- xen-3.2-testing.orig/tools/ioemu/vl.c
++++ xen-3.2-testing/tools/ioemu/vl.c
+@@ -102,8 +102,6 @@
#define DEFAULT_NETWORK_SCRIPT "/etc/xen/qemu-ifup"
+ #ifdef _BSD
+ #define DEFAULT_BRIDGE "bridge0"
+-#else
-#define DEFAULT_BRIDGE "xenbr0"
-
- //#define DEBUG_UNUSED_IOPORT
- //#define DEBUG_IOPORT
-@@ -3843,10 +3842,10 @@ int net_client_init(const char *str)
+ #endif
+ #ifdef __sun__
+ #define SMBD_COMMAND "/usr/sfw/sbin/smbd"
+@@ -4131,10 +4129,10 @@ static int net_client_init(const char *s
if (get_param_value(setup_script, sizeof(setup_script), "script", p) == 0) {
pstrcpy(setup_script, sizeof(setup_script), DEFAULT_NETWORK_SCRIPT);
}
@@ -39,14 +40,14 @@
}
} else
#endif
-Index: xen-unstable/tools/python/xen/xend/image.py
+Index: xen-3.2-testing/tools/python/xen/xend/image.py
===================================================================
---- xen-unstable.orig/tools/python/xen/xend/image.py
-+++ xen-unstable/tools/python/xen/xend/image.py
-@@ -352,13 +352,16 @@ class HVMImageHandler(ImageHandler):
+--- xen-3.2-testing.orig/tools/python/xen/xend/image.py
++++ xen-3.2-testing/tools/python/xen/xend/image.py
+@@ -485,13 +485,16 @@ class HVMImageHandler(ImageHandler):
mac = devinfo.get('mac')
if mac is None:
- mac = randomMAC()
+ raise VmError("MAC address not specified or generated.")
- bridge = devinfo.get('bridge', 'xenbr0')
+ bridge = devinfo.get('bridge', None)
model = devinfo.get('model', 'rtl8139')
@@ -60,26 +61,26 @@
+ net += ",bridge=%s" % (bridge,)
+ ret.append(net)
+ return ret
- #
-Index: xen-unstable/tools/ioemu/target-i386-dm/qemu-ifup
+Index: xen-3.2-testing/tools/ioemu/target-i386-dm/qemu-ifup
===================================================================
---- xen-unstable.orig/tools/ioemu/target-i386-dm/qemu-ifup
-+++ xen-unstable/tools/ioemu/target-i386-dm/qemu-ifup
-@@ -1,9 +1,11 @@
+--- xen-3.2-testing.orig/tools/ioemu/target-i386-dm/qemu-ifup
++++ xen-3.2-testing/tools/ioemu/target-i386-dm/qemu-ifup
+@@ -1,11 +1,11 @@
#!/bin/sh
-#. /etc/rc.d/init.d/functions
-#ulimit -c unlimited
-
-echo 'config qemu network with xen bridge for ' $*
-+bridge=$2
+-
+ bridge=$2
+if [ -z "$bridge" ]; then
+ brnum=$(ip route list | awk '/^default / { print $NF }' | sed 's/^[^0-9]*//')
+ brnum=${brnum:-0}
+ bridge=xenbr${brnum}
+fi
- ifconfig $1 0.0.0.0 up
--brctl addif $2 $1
-+brctl addif $bridge $1
+ #
+ # Old style bridge setup with netloop, used to have a bridge name
++++++ xen-hvm-default-pae.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,15 +1,15 @@
PAE must be on for 64-on-64 to work at all.
-Index: xen-unstable/tools/python/xen/xend/image.py
+Index: xen-3.2-testing/tools/python/xen/xend/image.py
===================================================================
---- xen-unstable.orig/tools/python/xen/xend/image.py
-+++ xen-unstable/tools/python/xen/xend/image.py
-@@ -265,7 +265,7 @@ class HVMImageHandler(ImageHandler):
+--- xen-3.2-testing.orig/tools/python/xen/xend/image.py
++++ xen-3.2-testing/tools/python/xen/xend/image.py
+@@ -580,7 +580,7 @@ class X86_HVM_ImageHandler(HVMImageHandl
- self.pid = None
+ def configure(self, vmConfig):
+ HVMImageHandler.configure(self, vmConfig)
+- self.pae = int(vmConfig['platform'].get('pae', 0))
++ self.pae = int(vmConfig['platform'].get('pae', 1))
-- self.pae = int(vmConfig['platform'].get('pae', 0))
-+ self.pae = int(vmConfig['platform'].get('pae', 1))
- self.apic = int(vmConfig['platform'].get('apic', 0))
- self.acpi = int(vmConfig['platform'].get('acpi', 0))
-
+ def buildDomain(self):
+ xc.hvm_set_param(self.vm.getDomid(), HVM_PARAM_PAE_ENABLED, self.pae)
++++++ xen-hvm-netfront.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.0.5-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
+Index: xen-3.2-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
===================================================================
---- xen-3.0.5-testing.orig/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
-+++ xen-3.0.5-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
-@@ -294,6 +294,13 @@ static int __devinit netfront_probe(stru
+--- xen-3.2-testing.orig/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
++++ xen-3.2-testing/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c
+@@ -249,6 +249,13 @@ static int __devinit netfront_probe(stru
int err;
struct net_device *netdev;
struct netfront_info *info;
++++++ xen-ioapic-ack-default.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,11 +1,11 @@
Change default IO-APIC ack mode for single IO-APIC systems to old-style. Jan
-Index: xen-unstable/xen/arch/x86/io_apic.c
+Index: xen-3.2-testing/xen/arch/x86/io_apic.c
===================================================================
---- xen-unstable.orig/xen/arch/x86/io_apic.c
-+++ xen-unstable/xen/arch/x86/io_apic.c
-@@ -1339,7 +1339,7 @@ static unsigned int startup_level_ioapic
+--- xen-3.2-testing.orig/xen/arch/x86/io_apic.c
++++ xen-3.2-testing/xen/arch/x86/io_apic.c
+@@ -1336,7 +1336,7 @@ static unsigned int startup_level_ioapic
return 0; /* don't check for pending */
}
@@ -14,7 +14,7 @@
static void setup_ioapic_ack(char *s)
{
if ( !strcmp(s, "old") )
-@@ -1776,6 +1776,8 @@ void __init setup_IO_APIC(void)
+@@ -1774,6 +1774,8 @@ void __init setup_IO_APIC(void)
else
io_apic_irqs = ~PIC_IRQS;
++++++ xen-ioemu-hvm-pv-support.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,18 +1,18 @@
-Index: xen-unstable/tools/ioemu/hw/ide.c
+Index: xen-3.2-testing/tools/ioemu/hw/ide.c
===================================================================
---- xen-unstable.orig/tools/ioemu/hw/ide.c
-+++ xen-unstable/tools/ioemu/hw/ide.c
-@@ -392,6 +392,9 @@ typedef struct PCIIDEState {
+--- xen-3.2-testing.orig/tools/ioemu/hw/ide.c
++++ xen-3.2-testing/tools/ioemu/hw/ide.c
+@@ -394,6 +394,9 @@ typedef struct PCIIDEState {
int type; /* see IDE_TYPE_xxx */
} PCIIDEState;
+static PCIIDEState *principal_ide_controller;
+extern FILE *logfile;
+
- #define DMA_MULTI_THREAD
+ #if defined(__ia64__)
+ #include
- #ifdef DMA_MULTI_THREAD
-@@ -2165,6 +2168,27 @@ static void ide_reset(IDEState *s)
+@@ -2237,6 +2240,27 @@ static void ide_reset(IDEState *s)
ide_dummy_transfer_stop(s);
}
@@ -40,7 +40,7 @@
struct partition {
uint8_t boot_ind; /* 0x80 - active */
uint8_t head; /* starting head */
-@@ -2600,6 +2624,9 @@ void pci_cmd646_ide_init(PCIBus *bus, Bl
+@@ -2638,6 +2662,9 @@ void pci_cmd646_ide_init(PCIBus *bus, Bl
sizeof(PCIIDEState),
-1,
NULL, NULL);
@@ -50,7 +50,7 @@
d->type = IDE_TYPE_CMD646;
pci_conf = d->dev.config;
pci_conf[0x00] = 0x95; // CMD646
-@@ -2771,6 +2798,9 @@ void pci_piix3_ide_init(PCIBus *bus, Blo
+@@ -2812,6 +2839,9 @@ void pci_piix_ide_init(PCIBus *bus, Bloc
NULL, NULL);
d->type = IDE_TYPE_PIIX3;
@@ -60,11 +60,11 @@
pci_conf = d->dev.config;
pci_conf[0x00] = 0x86; // Intel
pci_conf[0x01] = 0x80;
-Index: xen-unstable/tools/ioemu/hw/pci.c
+Index: xen-3.2-testing/tools/ioemu/hw/pci.c
===================================================================
---- xen-unstable.orig/tools/ioemu/hw/pci.c
-+++ xen-unstable/tools/ioemu/hw/pci.c
-@@ -517,3 +517,24 @@ void pci_nic_init(PCIBus *bus, NICInfo *
+--- xen-3.2-testing.orig/tools/ioemu/hw/pci.c
++++ xen-3.2-testing/tools/ioemu/hw/pci.c
+@@ -571,6 +571,28 @@ void pci_nic_init(PCIBus *bus, NICInfo *
}
}
@@ -89,23 +89,36 @@
+ }
+ }
+}
-Index: xen-unstable/tools/ioemu/hw/xen_platform.c
++
+ typedef struct {
+ PCIDevice dev;
+ PCIBus *bus;
+Index: xen-3.2-testing/tools/ioemu/hw/xen_platform.c
===================================================================
---- xen-unstable.orig/tools/ioemu/hw/xen_platform.c
-+++ xen-unstable/tools/ioemu/hw/xen_platform.c
-@@ -29,15 +29,46 @@
+--- xen-3.2-testing.orig/tools/ioemu/hw/xen_platform.c
++++ xen-3.2-testing/tools/ioemu/hw/xen_platform.c
+@@ -28,10 +28,47 @@
extern FILE *logfile;
+static uint32_t ioport_base;
+
- static void platform_ioport_write(void *opaque, uint32_t addr, uint32_t val)
+ static void platform_ioport_map(PCIDevice *pci_dev, int region_num,
+ uint32_t addr, uint32_t size, int type)
{
+- /* nothing yet */
++ ioport_base = addr;
++
++ register_ioport_write(addr, 1, 1, platform_ioport_write, NULL);
++}
++
++static void platform_ioport_write(void *opaque, uint32_t addr, uint32_t val)
++{
+ DECLARE_DOMCTL;
+ int rc;
+
- if (val == 0)
- qemu_invalidate_map_cache();
++ if (val == 0)
++ qemu_invalidate_map_cache();
+
+ switch (addr - ioport_base) {
+ case 0:
@@ -132,20 +145,13 @@
+ }
}
- static void platform_ioport_map(PCIDevice *pci_dev, int region_num,
- uint32_t addr, uint32_t size, int type)
- {
-+ ioport_base = addr;
-+
- register_ioport_write(addr, 1, 1, platform_ioport_write, NULL);
- }
-
-Index: xen-unstable/tools/ioemu/vl.c
+ static uint32_t platform_mmio_read(void *opaque, target_phys_addr_t addr)
+Index: xen-3.2-testing/tools/ioemu/vl.c
===================================================================
---- xen-unstable.orig/tools/ioemu/vl.c
-+++ xen-unstable/tools/ioemu/vl.c
-@@ -170,6 +170,19 @@ time_t timeoffset = 0;
- char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
+--- xen-3.2-testing.orig/tools/ioemu/vl.c
++++ xen-3.2-testing/tools/ioemu/vl.c
+@@ -194,6 +194,19 @@ int xc_handle;
+ char domain_name[64] = "Xen-no-name";
extern int domid;
+typedef struct IOHandlerRecord {
@@ -161,10 +167,10 @@
+
+static IOHandlerRecord *first_io_handler;
+
- char vncpasswd[64];
- unsigned char challenge[AUTHCHALLENGESIZE];
+ /***********************************************************/
+ /* x86 ISA bus support */
-@@ -3139,6 +3152,7 @@ void net_slirp_smb(const char *exported_
+@@ -3333,6 +3346,7 @@ void net_slirp_smb(const char *exported_
typedef struct TAPState {
VLANClientState *vc;
int fd;
@@ -172,7 +178,7 @@
} TAPState;
static void tap_receive(void *opaque, const uint8_t *buf, int size)
-@@ -3166,6 +3180,36 @@ static void tap_send(void *opaque)
+@@ -3360,6 +3374,36 @@ static void tap_send(void *opaque)
}
}
@@ -209,7 +215,7 @@
/* fd support */
static TAPState *net_tap_fd_init(VLANState *vlan, int fd)
-@@ -3177,6 +3221,8 @@ static TAPState *net_tap_fd_init(VLANSta
+@@ -3371,6 +3415,8 @@ static TAPState *net_tap_fd_init(VLANSta
return NULL;
s->fd = fd;
s->vc = qemu_new_vlan_client(vlan, tap_receive, NULL, s);
@@ -218,7 +224,7 @@
qemu_set_fd_handler(s->fd, tap_send, NULL, s);
snprintf(s->vc->info_str, sizeof(s->vc->info_str), "tap: fd=%d", fd);
return s;
-@@ -4117,19 +4163,6 @@ void dumb_display_init(DisplayState *ds)
+@@ -4332,20 +4378,6 @@ void dumb_display_init(DisplayState *ds)
#define MAX_IO_HANDLERS 64
@@ -227,6 +233,7 @@
- IOCanRWHandler *fd_read_poll;
- IOHandler *fd_read;
- IOHandler *fd_write;
+- int deleted;
- void *opaque;
- /* temporary data */
- struct pollfd *ufd;
@@ -238,24 +245,16 @@
/* XXX: fd_read_poll should be suppressed, but an API change is
necessary in the character devices to suppress fd_can_read(). */
int qemu_set_fd_handler2(int fd,
-Index: xen-unstable/tools/ioemu/vl.h
+Index: xen-3.2-testing/tools/ioemu/vl.h
===================================================================
---- xen-unstable.orig/tools/ioemu/vl.h
-+++ xen-unstable/tools/ioemu/vl.h
-@@ -844,6 +844,7 @@ void pci_piix3_ide_init(PCIBus *bus, Blo
- int pmac_ide_init (BlockDriverState **hd_table,
- SetIRQFunc *set_irq, void *irq_opaque, int irq);
- void ide_stop_dma_thread(void);
-+void ide_unplug_harddisks(void);
-
- /* cdrom.c */
- int cdrom_read_toc(int nb_sectors, uint8_t *buf, int msf, int start_track);
-@@ -1286,6 +1287,8 @@ void kqemu_record_dump(void);
+--- xen-3.2-testing.orig/tools/ioemu/vl.h
++++ xen-3.2-testing/tools/ioemu/vl.h
+@@ -1492,6 +1492,8 @@ void kqemu_record_dump(void);
extern char domain_name[];
void destroy_hvm_domain(void);
+void net_tap_shutdown_all(void);
+void pci_unplug_netifs(void);
- /* VNC Authentication */
- #define AUTHCHALLENGESIZE 16
+ #ifdef __ia64__
+ static inline void xc_domain_shutdown_hook(int xc_handle, uint32_t domid)
++++++ xen-lowmem-emergency-pool.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-unstable/xen/arch/x86/x86_32/mm.c
+Index: xen-3.2-testing/xen/arch/x86/x86_32/mm.c
===================================================================
---- xen-unstable.orig/xen/arch/x86/x86_32/mm.c
-+++ xen-unstable/xen/arch/x86/x86_32/mm.c
-@@ -63,6 +63,8 @@ l2_pgentry_t *virt_to_xen_l2e(unsigned l
+--- xen-3.2-testing.orig/xen/arch/x86/x86_32/mm.c
++++ xen-3.2-testing/xen/arch/x86/x86_32/mm.c
+@@ -66,6 +66,8 @@ l2_pgentry_t *virt_to_xen_l2e(unsigned l
return &idle_pg_table_l2[l2_linear_offset(v)];
}
@@ -10,8 +10,8 @@
+
void __init paging_init(void)
{
- void *ioremap_pt;
-@@ -131,6 +133,20 @@ void __init setup_idle_pagetable(void)
+ unsigned long v;
+@@ -137,6 +139,20 @@ void __init setup_idle_pagetable(void)
l2e_from_page(virt_to_page(idle_vcpu[0]->domain->
arch.mm_perdomain_pt) + i,
__PAGE_HYPERVISOR));
@@ -31,13 +31,13 @@
+ lowmem_emergency_pool_pages = 4000;
}
- void __init zap_low_mappings(l2_pgentry_t *base)
-Index: xen-unstable/xen/common/page_alloc.c
+ void __init zap_low_mappings(l2_pgentry_t *dom0_l2)
+Index: xen-3.2-testing/xen/common/page_alloc.c
===================================================================
---- xen-unstable.orig/xen/common/page_alloc.c
-+++ xen-unstable/xen/common/page_alloc.c
-@@ -46,6 +46,20 @@ static char opt_badpage[100] = "";
- string_param("badpage", opt_badpage);
+--- xen-3.2-testing.orig/xen/common/page_alloc.c
++++ xen-3.2-testing/xen/common/page_alloc.c
+@@ -52,6 +52,20 @@ static int opt_bootscrub __initdata = 1;
+ boolean_param("bootscrub", opt_bootscrub);
/*
+ * Amount of memory to reserve in a low-memory (<4GB) pool for specific
@@ -56,4 +56,4 @@
+/*
* Bit width of the DMA heap.
*/
- static unsigned int dma_bitsize = CONFIG_DMA_BITSIZE;
+ static unsigned int dma_bitsize = CONFIG_DMA_BITSIZE;
++++++ xen-max-free-mem.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,14 +1,15 @@
-Index: xen-3.1-testing/tools/python/xen/xend/XendNode.py
+Index: xen-3.2-testing/tools/python/xen/xend/XendNode.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xend/XendNode.py
-+++ xen-3.1-testing/tools/python/xen/xend/XendNode.py
-@@ -541,9 +541,33 @@ class XendNode:
- info['threads_per_core'])
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendNode.py
++++ xen-3.2-testing/tools/python/xen/xend/XendNode.py
+@@ -585,10 +585,34 @@ class XendNode:
+
info['cpu_mhz'] = info['cpu_khz'] / 1000
- # physinfo is in KiB, need it in MiB
- info['total_memory'] = info['total_memory'] / 1024
- info['free_memory'] = info['free_memory'] / 1024
+- info['node_to_cpu'] = self.format_node_to_cpu(info)
+ configured_floor = xendoptions().get_dom0_min_mem() * 1024
+ from xen.xend import balloon
+ try:
@@ -27,6 +28,7 @@
+ info['total_memory'] = info['total_memory'] / 1024
+ info['free_memory'] = info['free_memory'] / 1024
+ info['max_free_memory'] = info['max_free_memory'] / 1024
++ info['node_to_cpu'] = self.format_node_to_cpu(info)
+
+ # FIXME: These are hard-coded to be the inverse of the getXenMemory
+ # functions in image.py. Find a cleaner way.
@@ -39,20 +41,20 @@
ITEM_ORDER = ['nr_cpus',
'nr_nodes',
-@@ -554,6 +578,9 @@ class XendNode:
+@@ -598,6 +622,9 @@ class XendNode:
'hw_caps',
'total_memory',
'free_memory',
+ 'max_free_memory',
+ 'max_para_memory',
+ 'max_hvm_memory',
+ 'node_to_cpu'
]
- return [[k, info[k]] for k in ITEM_ORDER]
-Index: xen-3.1-testing/tools/python/xen/xend/balloon.py
+Index: xen-3.2-testing/tools/python/xen/xend/balloon.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xend/balloon.py
-+++ xen-3.1-testing/tools/python/xen/xend/balloon.py
+--- xen-3.2-testing.orig/tools/python/xen/xend/balloon.py
++++ xen-3.2-testing/tools/python/xen/xend/balloon.py
@@ -41,6 +41,8 @@ SLEEP_TIME_GROWTH = 0.1
# label actually shown in the PROC_XEN_BALLOON file.
labels = { 'current' : 'Current allocation',
@@ -86,11 +88,11 @@
def free(need_mem):
"""Balloon out memory from the privileged domain so that there is the
specified required amount (in KiB) free.
-Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
+Index: xen-3.2-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
-@@ -644,6 +644,27 @@ class XendDomainInfo:
+--- xen-3.2-testing.orig/tools/python/xen/xend/XendDomainInfo.py
++++ xen-3.2-testing/tools/python/xen/xend/XendDomainInfo.py
+@@ -680,6 +680,27 @@ class XendDomainInfo:
return dev_info
@@ -118,11 +120,11 @@
def setMemoryTarget(self, target):
"""Set the memory target of this domain.
@param target: In MiB.
-Index: xen-3.1-testing/tools/python/xen/xend/server/SrvDomain.py
+Index: xen-3.2-testing/tools/python/xen/xend/server/SrvDomain.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xend/server/SrvDomain.py
-+++ xen-3.1-testing/tools/python/xen/xend/server/SrvDomain.py
-@@ -169,7 +169,7 @@ class SrvDomain(SrvDir):
+--- xen-3.2-testing.orig/tools/python/xen/xend/server/SrvDomain.py
++++ xen-3.2-testing/tools/python/xen/xend/server/SrvDomain.py
+@@ -170,7 +170,7 @@ class SrvDomain(SrvDir):
def op_mem_target_set(self, _, req):
++++++ xen-no-dummy-nfs-ip.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:14.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.1-testing/tools/python/xen/xm/create.py
+Index: xen-3.2-testing/tools/python/xen/xm/create.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xm/create.py
-+++ xen-3.1-testing/tools/python/xen/xm/create.py
-@@ -887,9 +887,8 @@ def preprocess_access_control(vals):
+--- xen-3.2-testing.orig/tools/python/xen/xm/create.py
++++ xen-3.2-testing/tools/python/xen/xm/create.py
+@@ -886,9 +886,8 @@ def preprocess_access_control(vals):
def preprocess_ip(vals):
if vals.ip or vals.dhcp != 'off':
++++++ xen-rpmoptflags.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:14.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:15.000000000 +0100
@@ -1,20 +1,32 @@
-Index: xen-3.1-testing/Config.mk
+Index: xen-3.2-testing/tools/blktap/drivers/Makefile
===================================================================
---- xen-3.1-testing.orig/Config.mk
-+++ xen-3.1-testing/Config.mk
-@@ -18,7 +18,7 @@ SHELL ?= /bin/sh
+--- xen-3.2-testing.orig/tools/blktap/drivers/Makefile
++++ xen-3.2-testing/tools/blktap/drivers/Makefile
+@@ -8,7 +8,6 @@ QCOW_UTIL = img2qcow qcow2raw qcow-cr
+ INST_DIR = /usr/sbin
+ LIBAIO_DIR = ../../libaio/src
- # Tools to run on system hosting the build
- HOSTCC = gcc
--HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer
-+HOSTCFLAGS:= -Wall -Werror -Wstrict-prototypes $(RPM_OPT_FLAGS)
+-CFLAGS += -Werror
+ CFLAGS += -Wno-unused
+ CFLAGS += -I $(XEN_LIBXC) -I $(LIBAIO_DIR)
+ CFLAGS += $(INCLUDES) -I. -I../../xenstore
+Index: xen-3.2-testing/Config.mk
+===================================================================
+--- xen-3.2-testing.orig/Config.mk
++++ xen-3.2-testing/Config.mk
+@@ -19,7 +19,7 @@ SHELL ?= /bin/sh
- DISTDIR ?= $(XEN_ROOT)/dist
- DESTDIR ?= /
-Index: xen-3.1-testing/tools/libxen/Makefile
+ # Tools to run on system hosting the build
+ HOSTCC = gcc
+-HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer
++HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes $(RPM_OPT_FLAGS)
+ HOSTCFLAGS += -fno-strict-aliasing
+ HOSTCFLAGS_x86_32 = -m32
+ HOSTCFLAGS_x86_64 = -m64
+Index: xen-3.2-testing/tools/libxen/Makefile
===================================================================
---- xen-3.1-testing.orig/tools/libxen/Makefile
-+++ xen-3.1-testing/tools/libxen/Makefile
+--- xen-3.2-testing.orig/tools/libxen/Makefile
++++ xen-3.2-testing/tools/libxen/Makefile
@@ -21,10 +21,10 @@ include $(XEN_ROOT)/tools/Rules.mk
MAJOR = 1.0
MINOR = 0
++++++ xen-tightvnc-args.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:15.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:15.000000000 +0100
@@ -1,8 +1,8 @@
-Index: xen-3.1-testing/tools/python/xen/xm/create.py
+Index: xen-3.2-testing/tools/python/xen/xm/create.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xm/create.py
-+++ xen-3.1-testing/tools/python/xen/xm/create.py
-@@ -981,8 +981,7 @@ def spawn_vnc(display):
+--- xen-3.2-testing.orig/tools/python/xen/xm/create.py
++++ xen-3.2-testing/tools/python/xen/xm/create.py
+@@ -980,8 +980,7 @@ def spawn_vnc(display):
returns the port that the vncviewer is listening on and sets the global
vncpid. On failure, returns 0. Note that vncviewer is daemonized.
"""
++++++ xen-warnings.diff ++++++
++++ 616 lines (skipped)
++++ between arch/i386/xen/xen-warnings.diff
++++ and /mounts/work_src_done/STABLE/xen/xen-warnings.diff
++++++ xen-xmexample.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:15.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:15.000000000 +0100
@@ -1,9 +1,9 @@
Change various example paths in the config files to match SUSE.
-Index: xen-3.1-testing/tools/examples/xmexample1
+Index: xen-3.2-testing/tools/examples/xmexample1
===================================================================
---- xen-3.1-testing.orig/tools/examples/xmexample1
-+++ xen-3.1-testing/tools/examples/xmexample1
+--- xen-3.2-testing.orig/tools/examples/xmexample1
++++ xen-3.2-testing/tools/examples/xmexample1
@@ -7,11 +7,13 @@
#============================================================================
@@ -43,10 +43,10 @@
#----------------------------------------------------------------------------
# Configure the behaviour when a domain exits. There are three 'reasons'
-Index: xen-3.1-testing/tools/examples/xmexample2
+Index: xen-3.2-testing/tools/examples/xmexample2
===================================================================
---- xen-3.1-testing.orig/tools/examples/xmexample2
-+++ xen-3.1-testing/tools/examples/xmexample2
+--- xen-3.2-testing.orig/tools/examples/xmexample2
++++ xen-3.2-testing/tools/examples/xmexample2
@@ -35,11 +35,13 @@ xm_vars.var('vmid',
xm_vars.check()
@@ -86,10 +86,10 @@
#----------------------------------------------------------------------------
# Configure the behaviour when a domain exits. There are three 'reasons'
-Index: xen-3.1-testing/tools/examples/xmexample3
+Index: xen-3.2-testing/tools/examples/xmexample3
===================================================================
---- xen-3.1-testing.orig/tools/examples/xmexample3
-+++ xen-3.1-testing/tools/examples/xmexample3
+--- xen-3.2-testing.orig/tools/examples/xmexample3
++++ xen-3.2-testing/tools/examples/xmexample3
@@ -35,11 +35,13 @@ xm_vars.var('vmid',
xm_vars.check()
@@ -109,11 +109,11 @@
# The domain build function. Default is 'linux'.
#builder='linux'
-Index: xen-3.1-testing/tools/examples/xmexample.hvm
+Index: xen-3.2-testing/tools/examples/xmexample.hvm
===================================================================
---- xen-3.1-testing.orig/tools/examples/xmexample.hvm
-+++ xen-3.1-testing/tools/examples/xmexample.hvm
-@@ -71,7 +71,7 @@ vif = [ 'type=ioemu, bridge=xenbr0' ]
+--- xen-3.2-testing.orig/tools/examples/xmexample.hvm
++++ xen-3.2-testing/tools/examples/xmexample.hvm
+@@ -72,7 +72,7 @@ vif = [ 'type=ioemu, bridge=xenbr0' ]
# and MODE is r for read-only, w for read-write.
#disk = [ 'phy:hda1,hda1,r' ]
@@ -122,10 +122,10 @@
#----------------------------------------------------------------------------
# Configure the behaviour when a domain exits. There are three 'reasons'
-Index: xen-3.1-testing/docs/man/xmdomain.cfg.pod.5
+Index: xen-3.2-testing/docs/man/xmdomain.cfg.pod.5
===================================================================
---- xen-3.1-testing.orig/docs/man/xmdomain.cfg.pod.5
-+++ xen-3.1-testing/docs/man/xmdomain.cfg.pod.5
+--- xen-3.2-testing.orig/docs/man/xmdomain.cfg.pod.5
++++ xen-3.2-testing/docs/man/xmdomain.cfg.pod.5
@@ -38,13 +38,13 @@ file.
The kernel image for the domain. The format of the parameter is the
@@ -161,10 +161,10 @@
at hda1, which is the root filesystem.
=item I<NFS Root>
-Index: xen-3.1-testing/docs/man/xm.pod.1
+Index: xen-3.2-testing/docs/man/xm.pod.1
===================================================================
---- xen-3.1-testing.orig/docs/man/xm.pod.1
-+++ xen-3.1-testing/docs/man/xm.pod.1
+--- xen-3.2-testing.orig/docs/man/xm.pod.1
++++ xen-3.2-testing/docs/man/xm.pod.1
@@ -106,8 +106,8 @@ soon as it is run.
=item I<without config file>
++++++ xen-xm-top-needs-root.diff ++++++
--- /var/tmp/diff_new_pack.A14092/_old 2007-12-20 16:46:15.000000000 +0100
+++ /var/tmp/diff_new_pack.A14092/_new 2007-12-20 16:46:15.000000000 +0100
@@ -1,11 +1,11 @@
From: Charles Coffing
Upstream: no
-Index: xen-3.1-testing/tools/python/xen/xm/main.py
+Index: xen-3.2-testing/tools/python/xen/xm/main.py
===================================================================
---- xen-3.1-testing.orig/tools/python/xen/xm/main.py
-+++ xen-3.1-testing/tools/python/xen/xm/main.py
-@@ -1755,6 +1755,10 @@ def xm_debug_keys(args):
+--- xen-3.2-testing.orig/tools/python/xen/xm/main.py
++++ xen-3.2-testing/tools/python/xen/xm/main.py
+@@ -1833,6 +1833,10 @@ def xm_debug_keys(args):
def xm_top(args):
arg_check(args, "top", 0)
@@ -13,6 +13,6 @@
+ if os.geteuid() != 0:
+ raise IOError()
+
- os.execvp('xentop', ['xentop'])
+ os.system('xentop')
def xm_dmesg(args):
++++++ xmclone.sh ++++++
++++ 1118 lines (skipped)
++++ between xmclone.sh
++++ and /mounts/work_src_done/STABLE/xen/xmclone.sh
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org