[packages/xen/DEVEL] - started update to 4.5.1 (note: new sonames, xend is gone) - updated dumpdir,make,net-disable-iptab

qboosh qboosh at pld-linux.org
Sat Oct 3 21:36:59 CEST 2015


commit 32d7e1602231dde347380e21cd147cc36aefe22b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sat Oct 3 21:37:43 2015 +0200

    - started update to 4.5.1 (note: new sonames, xend is gone)
    - updated dumpdir,make,net-disable-iptables-on-bridge,paths,python_scripts,symbols patches
    - removed ulong,xsa99 patches
    - removed xend patches and init/configuration files (no longer applicable)

 xen-configure-xend.patch                 |  37 -----
 xen-dumpdir.patch                        |  57 ++++---
 xen-make.patch                           |  11 --
 xen-net-disable-iptables-on-bridge.patch |  11 +-
 xen-paths.patch                          |  14 +-
 xen-python_scripts.patch                 |  36 -----
 xen-symbols.patch                        |  14 --
 xen-ulong.patch                          |  20 ---
 xen.spec                                 | 235 ++++++++++------------------
 xend-pci-loop.patch                      |  19 ---
 xend.catchbt.patch                       |  30 ----
 xend.init                                |  86 -----------
 xend.service                             |  17 --
 xend.tmpfiles                            |   2 -
 xsa99.patch                              | 257 -------------------------------
 15 files changed, 128 insertions(+), 718 deletions(-)
---
diff --git a/xen.spec b/xen.spec
index 950dddc..2b7a6b7 100644
--- a/xen.spec
+++ b/xen.spec
@@ -1,5 +1,7 @@
 #
 # TODO:
+#  - verify upstream systemd .services vs SOURCES
+#    at least patch to use PLD-specific 
 #  - check if other tools/libs are not usable in domU, move them to -guest
 #    packages if so
 #  - pass bconds to qemu configure script (tricky, as the script is called from
@@ -9,18 +11,17 @@
 #  - mini-os objects are relinked on install (because of .PHONY rules used to make them)
 #
 # Conditional build:
-%bcond_without  qemu_traditional # without qemu-xen-traditional
-%bcond_without	opengl		# OpenGL support in Xen qemu
-%bcond_without	sdl		# SDL support in Xen qemu
-%bcond_without	bluetooth	# bluetooth support in Xen qemu
-%bcond_without	brlapi		# brlapi support in Xen qemu
-%bcond_without	ocaml		# Ocaml libraries for Xen tools
-%bcond_without	efi		# EFI hypervisor
-%bcond_without	hypervisor	# Xen hypervisor build
-%bcond_without	stubdom		# stubdom build
-%bcond_without	xsm		# XSM security module (by default, Flask)
-%bcond_without	blktap1		# blktap1 support
-%bcond_without	xend		# include the obsolete xend & xm
+%bcond_without	qemu_traditional	# without qemu-xen-traditional
+%bcond_without	opengl			# OpenGL support in Xen qemu
+%bcond_without	sdl			# SDL support in Xen qemu
+%bcond_without	bluetooth		# bluetooth support in Xen qemu
+%bcond_without	brlapi			# brlapi support in Xen qemu
+%bcond_without	ocaml			# Ocaml libraries for Xen tools
+%bcond_without	efi			# EFI hypervisor
+%bcond_without	hypervisor		# Xen hypervisor build
+%bcond_without	stubdom			# stubdom build
+%bcond_without	xsm			# XSM security module (by default, Flask)
+%bcond_without	blktap1			# blktap1 support
 
 %ifnarch %{x8664} arm
 %undefine	with_hypervisor
@@ -41,12 +42,12 @@
 Summary:	Xen - a virtual machine monitor
 Summary(pl.UTF-8):	Xen - monitor maszyny wirtualnej
 Name:		xen
-Version:	4.4.3
-Release:	1
+Version:	4.5.1
+Release:	0.1
 License:	GPL v2, interface parts on BSD-like
 Group:		Applications/System
 Source0:	http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5:	fae37c3afc92e7d5d3e93fbe9b81ec2c
+# Source0-md5:	d12dc9e5e8bd22a68b5c7f53119221f1
 # used by stubdoms
 Source10:	%{xen_extfiles_url}/lwip-1.3.0.tar.gz
 # Source10-md5:	36cc57650cffda9a0269493be2a169bb
@@ -66,25 +67,24 @@ Source18:	http://xenbits.xen.org/xen-extfiles/tpm_emulator-%{tpm_emulator_versio
 # Source18-md5:	e26becb8a6a2b6695f6b3e8097593db8
 Source19:	ftp://ftp.gmplib.org/pub/gmp-%{gmp_version}/gmp-%{gmp_version}.tar.bz2
 # Source19-md5:	dd60683d7057917e34630b4a787932e8
-Source30:	proc-xen.mount
-Source31:	var-lib-xenstored.mount
+#Source30:	proc-xen.mount
+#Source31:	var-lib-xenstored.mount
 Source32:	blktapctrl.service
 Source33:	blktapctrl.sysconfig
-Source34:	xenconsoled.service
+#Source34:	xenconsoled.service
+# XXX: upstream xenconsoled expects xencommons
 Source35:	xenconsoled.sysconfig
-Source36:	xenstored.service
+#Source36:	xenstored.service
+# XXX: upstream xenstored expects xencommons
 Source37:	xenstored.sysconfig
 Source38:	xenstored.tmpfiles
-Source39:	xend.service
-Source40:	xend.tmpfiles
-Source41:	xen-watchdog.service
-Source42:	xen-dom0-modules-load.conf
+#Source41:	xen-watchdog.service
+#Source42:	xen-dom0-modules-load.conf
 Source43:	xendomains.sh
-Source44:	xendomains.service
-Source45:	xen-qemu-dom0-disk-backend.service
+#Source44:	xendomains.service
+#Source45:	xen-qemu-dom0-disk-backend.service
 Source46:	xen-qemu-dom0-disk-backend.init
 # sysvinit scripts
-Source50:	xend.init
 Source51:	xenconsoled.init
 Source52:	xenstored.init
 Source53:	xen-watchdog.init
@@ -100,48 +100,34 @@ Patch0:		%{name}-python_scripts.patch
 Patch1:		%{name}-symbols.patch
 Patch2:		%{name}-curses.patch
 Patch3:		pygrubfix.patch
-Patch4:		xend.catchbt.patch
-Patch5:		xend-pci-loop.patch
 Patch6:		%{name}-dumpdir.patch
 # Warning: this disables ingress filtering implemented in xen scripts!
 Patch7:		%{name}-net-disable-iptables-on-bridge.patch
-Patch8:		%{name}-configure-xend.patch
 Patch9:		%{name}-gawk.patch
 Patch10:	%{name}-qemu.patch
-Patch11:	%{name}-ulong.patch
 Patch12:	%{name}-doc.patch
 Patch13:	%{name}-paths.patch
 Patch14:	%{name}-no_fetcher.patch
 Patch15:	odd-glib2-fix.patch
 Patch16:	%{name}-gmp-abi.patch
-# based on: http://xenbits.xen.org/xsa/xsa99.patch
-Patch17:	xsa99.patch
 Patch18:	%{name}-make.patch
 Patch19:	%{name}-no_Werror.patch
 # http://git.alpinelinux.org/cgit/aports/plain/main/xen/gnutls-3.4.0.patch
 Patch20:	%{name}-gnutls-3.4.patch
 URL:		http://www.xen.org/products/xenhyp.html
-%if %{with qemu_traditional}
-%{?with_opengl:BuildRequires:	OpenGL-devel}
-%{?with_sdl:BuildRequires:	SDL-devel >= 1.2.1}
-%endif
+BuildRequires:	autoconf >= 2.67
 %ifarch %{ix86} %{x8664}
 BuildRequires:	acpica
-BuildRequires:	autoconf
 BuildRequires:	bcc
 BuildRequires:	bin86
 %endif
-%if %{with qemu_traditional}
-%{?with_bluetooth:BuildRequires:	bluez-libs-devel}
-%{?with_brlapi:BuildRequires:	brlapi-devel}
-%endif
 %{?with_efi:BuildRequires:	binutils >= 3:2.23.51.0.3-2}
 BuildRequires:	bzip2-devel
-BuildRequires:	curl-devel
-BuildRequires:	cyrus-sasl-devel >= 2
 %if %{with xsm}
 BuildRequires:	checkpolicy
 %endif
+BuildRequires:	curl-devel
+BuildRequires:	cyrus-sasl-devel >= 2
 BuildRequires:	e2fsprogs-devel
 BuildRequires:	gcc >= 6:4.1
 %ifarch %{x8664}
@@ -150,17 +136,21 @@ BuildRequires:	gcc-multilib-32 >= 6:4.1
 BuildRequires:	gettext-tools
 BuildRequires:	glib2-devel >= 1:2.12
 BuildRequires:	gnutls-devel
-BuildRequires:  keyutils-devel
+BuildRequires:	keyutils-devel
 BuildRequires:	latex2html >= 2008
 BuildRequires:	libaio-devel
 BuildRequires:	libcap-devel
+%ifarch arm aarch64
+BuildRequires:	libfdt-devel
+%endif
 BuildRequires:	libjpeg-devel
+BuildRequires:	libnl-devel >= 3.2.8
 BuildRequires:	libpng-devel
 BuildRequires:	libuuid-devel
 BuildRequires:	lzo-devel >= 2
 BuildRequires:	ncurses-devel
 %if %{with ocaml}
-BuildRequires:	ocaml >= 3.04-7
+BuildRequires:	ocaml >= 3.11.0
 BuildRequires:	ocaml-findlib
 %endif
 BuildRequires:	nss-devel >= 3.12.8
@@ -178,17 +168,21 @@ BuildRequires:	texlive-dvips
 BuildRequires:	texlive-latex-psnfss
 BuildRequires:	texlive-xetex
 BuildRequires:	transfig
-%{?with_qemu_traditional:BuildRequires:	vde2-devel}
 BuildRequires:	which
 # for xfsctl (<xfs/xfs.h>)
 BuildRequires:	xfsprogs-devel
+BuildRequires:	xz-devel
+BuildRequires:	yajl-devel
+BuildRequires:	zlib-devel
 %if %{with qemu_traditional}
+%{?with_opengl:BuildRequires:	OpenGL-devel}
+%{?with_sdl:BuildRequires:	SDL-devel >= 1.2.1}
+%{?with_bluetooth:BuildRequires:	bluez-libs-devel}
+%{?with_brlapi:BuildRequires:	brlapi-devel}
+BuildRequires:	vde2-devel
 BuildRequires:	xorg-lib-libX11-devel
 BuildRequires:	xorg-lib-libXext-devel
 %endif
-BuildRequires:	xz-devel
-BuildRequires:	yajl-devel
-BuildRequires:	zlib-devel
 %if %{with qemu_traditional}
 # FIXME: see qemu configure comments on top of spec
 %{!?with_opengl:BuildConflicts:	OpenGL-devel}
@@ -217,6 +211,7 @@ Requires:	which
 Requires:	%{name}-guest = %{version}-%{release}
 Obsoletes:	xen-doc
 Obsoletes:	xen-udev
+Obsoletes:	xen-xend
 ExclusiveArch:	%{ix86} %{x8664} arm
 %ifarch %{ix86} %{x8664}
 # for HVM
@@ -225,7 +220,7 @@ Suggests:	qemu-system-x86
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # some PPC/SPARC boot images in ELF format
-%define         _noautostrip    .*%{_datadir}/\\(xen\\|qemu-xen\\)/qemu/\\(openbios-.*\\|palcode-clipper\\|s390-ccw.img\\)
+%define		_noautostrip	.*%{_datadir}/\\(xen\\|qemu-xen\\)/qemu/\\(openbios-.*\\|palcode-clipper\\|s390-ccw.img\\)
 
 %description
 This package contains the Xen hypervisor and Xen tools, needed to run
@@ -312,19 +307,6 @@ Static Xen libraries.
 %description static -l pl.UTF-8
 Statyczne biblioteki Xena.
 
-%package xend
-Summary:	xend daemon
-Summary(pl.UTF-8):	Demon xend
-Group:		Daemons
-Requires(post,preun,postun):	systemd-units >= 38
-Requires:	systemd-units >= 38
-
-%description xend
-xend daemon.
-
-%description xend -l pl.UTF-8
-Demon xend.
-
 %package -n ocaml-xen
 Summary:	OCaml bindings for Xen
 Summary(pl.UTF-8):	Wiązania OCamla dla Xena
@@ -384,11 +366,11 @@ Xen Python modules for both dom0 and domU virtual machines.
 Moduły Pythona dla maszyn wirtualnych dom0 i domU.
 
 %package -n bash-completion-%{name}
-Summary:    bash-completion for Xen (xl)
+Summary:	bash-completion for Xen (xl)
 Summary(pl.UTF-8):	Bashowe dopełnianie poleceń dla Xena (xl)
-Group:      Applications/Shells
-Requires:   %{name} = %{version}-%{release}
-Requires:   bash-completion
+Group:		Applications/Shells
+Requires:	%{name} = %{version}-%{release}
+Requires:	bash-completion
 
 %description -n bash-completion-%{name}
 This package provides bash-completion for Xen (xl).
@@ -416,20 +398,15 @@ Nadzorca Xen w postaci, która może być uruchomiona wprost z firmware
 %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
@@ -462,24 +439,23 @@ export PATH=$(pwd)/our-ld:$PATH
 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
 export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
 
-# NOTE:
-# - there is a quoting bug (in tools/driver/Makefile) that causes
-#   openssl is used instead of gcrypt; that's OK, openssl is obligatory
-#   anyway (see configure), gcrypt is optional
+# NOTE on ac_cv_*:
+# - use openssl (libcrypto) instead of libgcrypt as openssl is obligatory anyway
 # - prevent libiconv from being detected (not needed with glibc)
 %configure \
 	CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \
+	ac_cv_lib_gcrypt_gcry_md_hash_buffer=no \
 	ac_cv_lib_iconv_libiconv_open=no \
-	%{__enable_disable qemu_traditional qemu-traditional} \
 	%{__enable_disable blktap1 blktap1} \
-	%{__enable_disable xend xend} \
+	--disable-debug \
+	%{__enable_disable qemu_traditional qemu-traditional} \
 	--with-system-seabios=/usr/share/seabios/bios.bin \
 %ifarch %{x8664}
 	--with-system-qemu=/usr/bin/qemu-system-x86_64 \
 %else
 	--with-system-qemu=/usr/bin/qemu-system-i386 \
 %endif
-	--disable-debug
+	--with-systemd=%{systemdunitdir}
 
 %{__make} -j1 dist-xen dist-tools dist-docs \
 	%{!?with_ocaml:OCAML_TOOLS=n} \
@@ -521,32 +497,24 @@ ln -s %{_prefix}/lib/%{name}/bin/qemu-dm $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/q
 %endif
 %endif
 
-install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
-install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
+#install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
+#install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
 %if %{with blktap1}
 install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
 install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl
 %endif
-install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
+#install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
 install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled
-install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
+#install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
 install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored
-install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf
-%if %{with xend}
-install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
-install %{SOURCE40} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xend.conf
-%endif
-install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
-install %{SOURCE42} $RPM_BUILD_ROOT/etc/modules-load.d/xen-dom0.conf
+#install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
+#install %{SOURCE42} $RPM_BUILD_ROOT/etc/modules-load.d/xen-dom0.conf
 install %{SOURCE43} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xendomains.sh
-install %{SOURCE44} $RPM_BUILD_ROOT%{systemdunitdir}/xendomains.service
-install %{SOURCE45} $RPM_BUILD_ROOT%{systemdunitdir}/xen-qemu-dom0-disk-backend.service
+#install %{SOURCE44} $RPM_BUILD_ROOT%{systemdunitdir}/xendomains.service
+#install %{SOURCE45} $RPM_BUILD_ROOT%{systemdunitdir}/xen-qemu-dom0-disk-backend.service
 # sysvinit scripts
 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
 %{__rm} $RPM_BUILD_ROOT/etc/sysconfig/xencommons
-%if %{with xend}
-install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
-%endif
 install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
 install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
 install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
@@ -554,6 +522,8 @@ install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
 install %{SOURCE46} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-qemu-dom0-disk-backend
 install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
 install %{SOURCE56} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xen.conf
+install -d $RPM_BUILD_ROOT/var/run/xenstored
+install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf
 
 install %{SOURCE60} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-init-list
 install %{SOURCE61} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-toolstack
@@ -587,10 +557,6 @@ done
 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
 %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
 
-%if %{without xend}
-%{__rm} -r $RPM_BUILD_ROOT/var/run/xend
-%endif
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -625,20 +591,6 @@ fi
 %postun
 %systemd_reload
 
-%post xend
-/sbin/chkconfig --add xend
-%systemd_post xend.service
-
-%preun xend
-if [ "$1" = "0" ]; then
-	%service xend stop
-	/sbin/chkconfig --del xend
-fi
-%systemd_preun xend.service
-
-%postun xend
-%systemd_reload
-
 %post	libs -p /sbin/ldconfig
 %postun	libs -p /sbin/ldconfig
 
@@ -657,7 +609,7 @@ fi
 /boot/%{name}.gz
 %endif
 %if %{with xsm}
-/boot/xenpolicy.24
+/boot/xenpolicy-%{version}
 %endif
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored
@@ -668,14 +620,21 @@ fi
 %attr(754,root,root) /etc/rc.d/init.d/xenstored
 %attr(754,root,root) /etc/rc.d/init.d/xendomains
 %attr(754,root,root) /etc/rc.d/init.d/xen-qemu-dom0-disk-backend
-%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/xen-dom0.conf
+%{_prefix}/lib/modules-load.d/xen.conf
 %{systemdunitdir}/proc-xen.mount
 %{systemdunitdir}/var-lib-xenstored.mount
+%{systemdunitdir}/xen-init-dom0.service
 %{systemdunitdir}/xen-watchdog.service
 %{systemdunitdir}/xenconsoled.service
 %{systemdunitdir}/xenstored.service
+%{systemdunitdir}/xenstored.socket
+%{systemdunitdir}/xenstored_ro.socket
 %{systemdunitdir}/xendomains.service
 %{systemdunitdir}/xen-qemu-dom0-disk-backend.service
+%if %{with blktap1}
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl
+%{systemdunitdir}/blktapctrl.service
+%endif
 %dir %{_sysconfdir}/xen
 %dir %{_sysconfdir}/xen/auto
 %dir %{_sysconfdir}/xen/examples
@@ -691,7 +650,6 @@ fi
 %attr(755,root,root) %{_bindir}/qemu-img-xen
 %attr(755,root,root) %{_bindir}/qemu-nbd-xen
 %endif
-%attr(755,root,root) %{_bindir}/remus
 %attr(755,root,root) %{_bindir}/xencons
 %attr(755,root,root) %{_bindir}/xencov_split
 %attr(755,root,root) %{_bindir}/xentrace*
@@ -756,20 +714,15 @@ fi
 %{_mandir}/man1/xentop.1*
 %{_mandir}/man1/xentrace_format.1*
 %{_mandir}/man1/xl.1*
-%if %{with xend}
-%{_mandir}/man1/xm.1*
-%{_mandir}/man5/xend-config.sxp.5*
-%endif
 %{_mandir}/man5/xl.cfg.5*
 %{_mandir}/man5/xl.conf.5*
 %{_mandir}/man5/xlcpupool.cfg.5*
-%{_mandir}/man5/xmdomain.cfg.5*
 %{_mandir}/man8/xentrace.8*
 %{_sharedstatedir}/xen
 %{_sharedstatedir}/xenstored
 %dir /var/run/xenstored
-%{systemdtmpfilesdir}/xenstored.conf
 %{systemdtmpfilesdir}/xen.conf
+%{systemdtmpfilesdir}/xenstored.conf
 %dir %attr(0700,root,root) /var/log/xen
 %dir %attr(0700,root,root) /var/log/xen/console
 %if %{with qemu_traditional}
@@ -794,11 +747,11 @@ fi
 %attr(755,root,root) %{_libdir}/libvhd.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libvhd.so.1.0
 %attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.4
+%attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.5
 %attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.4
+%attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.5
 %attr(755,root,root) %{_libdir}/libxenlight.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.4
+%attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.5
 %attr(755,root,root) %{_libdir}/libxenstat.so.*.*
 %attr(755,root,root) %ghost %{_libdir}/libxenstat.so.0
 %attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.*
@@ -864,24 +817,6 @@ fi
 %{_libdir}/libxenstore.a
 %{_libdir}/libxlutil.a
 
-%if %{with xend}
-%files xend
-%defattr(644,root,root,755)
-%if %{with blktap1}
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl
-%{systemdunitdir}/blktapctrl.service
-%endif
-%{systemdunitdir}/xend.service
-%attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xend.rules
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
-%attr(755,root,root) %{_sbindir}/xend
-%attr(755,root,root) %{_sbindir}/xm
-%dir %attr(700,root,root) /var/run/xend
-%{systemdtmpfilesdir}/xend.conf
-%endif
-
 %if %{with ocaml}
 %files -n ocaml-xen
 %defattr(644,root,root,755)
@@ -936,19 +871,9 @@ fi
 %files -n python-xen
 %defattr(644,root,root,755)
 %attr(755,root,root) %{py_sitedir}/fsimage.so
-%{py_sitedir}/grub
-%attr(755,root,root) %{py_sitedir}/xen/lowlevel/checkpoint.so
-%attr(755,root,root) %{py_sitedir}/xen/lowlevel/flask.so
-%attr(755,root,root) %{py_sitedir}/xen/lowlevel/netlink.so
-%attr(755,root,root) %{py_sitedir}/xen/lowlevel/ptsname.so
+%dir %{py_sitedir}/xen/lowlevel
 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so
-%if %{with xend}
-%{py_sitedir}/xen/remus
-%{py_sitedir}/xen/util
-%{py_sitedir}/xen/web
-%{py_sitedir}/xen/xend
-%{py_sitedir}/xen/xm
-%endif
+%{py_sitedir}/grub
 %if "%{py_ver}" > "2.4"
 %{py_sitedir}/pygrub-0.3-py*.egg-info
 %{py_sitedir}/xen-3.0-py*.egg-info
diff --git a/xen-configure-xend.patch b/xen-configure-xend.patch
deleted file mode 100644
index 0bdc932..0000000
--- a/xen-configure-xend.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff -up xen-3.4.0/tools/examples/xend-config.sxp.config xen-3.4.0/tools/examples/xend-config.sxp
---- xen-3.4.0/tools/examples/xend-config.sxp.config	2009-05-20 17:12:50.000000000 +0200
-+++ xen-3.4.0/tools/examples/xend-config.sxp	2009-05-20 17:15:35.000000000 +0200
-@@ -58,11 +58,11 @@
- 
- 
- #(xend-http-server no)
--#(xend-unix-server no)
-+(xend-unix-server yes)
- #(xend-tcp-xmlrpc-server no)
- #(xend-unix-xmlrpc-server yes)
--#(xend-relocation-server no)
--(xend-relocation-server yes)
-+(xend-relocation-server no)
-+#(xend-relocation-server yes)
- #(xend-relocation-ssl-server no)
- #(xend-udev-event-server no)
- 
-@@ -154,7 +154,8 @@
- # two fake interfaces per guest domain.  To do things like this, write
- # yourself a wrapper script, and call network-bridge from it, as appropriate.
- #
--(network-script network-bridge)
-+#(network-script network-bridge)
-+(network-script /bin/true)
- 
- # The script used to control virtual interfaces.  This can be overridden on a
- # per-vif basis when creating a domain or a configuring a new vif.  The
-@@ -186,7 +187,7 @@
- # dom0-min-mem is the lowest permissible memory level (in MB) for dom0.
- # This is a minimum both for auto-ballooning (as enabled by
- # enable-dom0-ballooning below) and for xm mem-set when applied to dom0.
--(dom0-min-mem 196)
-+(dom0-min-mem 256)
- 
- # Whether to enable auto-ballooning of dom0 to allow domUs to be created.
- # If enable-dom0-ballooning = no, dom0 will never balloon out.
diff --git a/xen-dumpdir.patch b/xen-dumpdir.patch
index c0e7186..771dec0 100644
--- a/xen-dumpdir.patch
+++ b/xen-dumpdir.patch
@@ -10,23 +10,40 @@ diff -up xen-3.4.0/tools/Makefile.dump xen-3.4.0/tools/Makefile
  	$(INSTALL_DIR) $(DESTDIR)/var/log/xen
  	$(INSTALL_DIR) $(DESTDIR)/var/lib/xen
  	$(INSTALL_DIR) $(DESTDIR)/var/lock/subsys
---- xen-4.0.0/tools/python/xen/xend/XendDomainInfo.py.orig	2010-02-02 20:43:01.000000000 +0000
-+++ xen-4.0.0/tools/python/xen/xend/XendDomainInfo.py	2010-02-02 21:36:57.000000000 +0000
-@@ -2287,7 +2287,7 @@
-             # To prohibit directory traversal
-             based_name = os.path.basename(self.info['name_label'])
-             
--            coredir = "/var/xen/dump/%s" % (based_name)
-+            coredir = "/var/lib/xen/dump/%s" % (based_name)
-             if not os.path.exists(coredir):
-                 try:
-                     mkdir.parents(coredir, stat.S_IRWXU)
-@@ -2296,7 +2296,7 @@
- 
-             if not os.path.isdir(coredir):
-                 # Use former directory to dump core
--                coredir = '/var/xen/dump'
-+                coredir = '/var/lib/xen/dump'
- 
-             this_time = time.strftime("%Y-%m%d-%H%M.%S", time.localtime())
-             corefile = "%s/%s-%s.%s.core" % (coredir, this_time,
+--- xen-4.5.1/tools/libxl/xl_cmdimpl.c.orig	2015-06-22 15:41:35.000000000 +0200
++++ xen-4.5.1/tools/libxl/xl_cmdimpl.c	2015-10-01 17:45:14.267331067 +0200
+@@ -2092,7 +2092,7 @@
+         char *corefile;
+         int rc;
+ 
+-        if (asprintf(&corefile, "/var/xen/dump/%s", d_config->c_info.name) < 0) {
++        if (asprintf(&corefile, "/var/lib/xen/dump/%s", d_config->c_info.name) < 0) {
+             LOG("failed to construct core dump path");
+         } else {
+             LOG("dumping core to %s", corefile);
+--- xen-4.5.1/docs/man/xl.cfg.pod.5.orig	2015-06-22 15:41:35.000000000 +0200
++++ xen-4.5.1/docs/man/xl.cfg.pod.5	2015-10-01 17:46:38.750661228 +0200
+@@ -298,12 +298,12 @@
+ 
+ =item B<coredump-destroy>
+ 
+-write a "coredump" of the domain to F</var/xen/dump/NAME> and then
++write a "coredump" of the domain to F</var/lib/xen/dump/NAME> and then
+ destroy the domain.
+ 
+ =item B<coredump-restart>
+ 
+-write a "coredump" of the domain to F</var/xen/dump/NAME> and then
++write a "coredump" of the domain to F</var/lib/xen/dump/NAME> and then
+ restart the domain.
+ 
+ =back
+@@ -1605,7 +1605,7 @@
+ =head1 FILES
+ 
+ F</etc/xen/NAME.cfg>
+-F</var/xen/dump/NAME>
++F</var/lib/xen/dump/NAME>
+ 
+ =head1 BUGS
+ 
diff --git a/xen-make.patch b/xen-make.patch
index 077b0cb..cf57b89 100644
--- a/xen-make.patch
+++ b/xen-make.patch
@@ -9,14 +9,3 @@
  $(LIBS_DEPENDS):subdirs-all
  
  vhd-util: vhd-util.o $(LIBS_DEPENDS)
---- xen-4.4.1/tools/python/Makefile.orig	2014-09-02 08:20:19.000000000 +0200
-+++ xen-4.4.1/tools/python/Makefile	2014-10-25 23:17:56.515472047 +0200
-@@ -21,7 +21,7 @@
- .PHONY: install
- install: install-dtd
- 	CC="$(CC)" CFLAGS="$(CFLAGS)" $(PYTHON) setup.py install \
--		$(PYTHON_PREFIX_ARG) --root="$(DESTDIR)" --force --xend=$(CONFIG_XEND)
-+		$(PYTHON_PREFIX_ARG) --skip-build --root="$(DESTDIR)" --force --xend=$(CONFIG_XEND)
- 
- 	$(INSTALL_DIR) $(DESTDIR)$(SBINDIR)
- ifeq ($(CONFIG_XEND),y)
diff --git a/xen-net-disable-iptables-on-bridge.patch b/xen-net-disable-iptables-on-bridge.patch
index 8908041..2f33eb4 100644
--- a/xen-net-disable-iptables-on-bridge.patch
+++ b/xen-net-disable-iptables-on-bridge.patch
@@ -1,13 +1,10 @@
-diff -dur -x '*.orig' -x '*.rej' -x '*~' xen-4.2.0.orig/tools/hotplug/Linux/vif-bridge xen-4.2.0/tools/hotplug/Linux/vif-bridge
---- xen-4.2.0.orig/tools/hotplug/Linux/vif-bridge	2012-09-17 12:21:18.000000000 +0200
-+++ xen-4.2.0/tools/hotplug/Linux/vif-bridge	2012-10-22 13:05:43.000000000 +0200
-@@ -101,10 +101,6 @@
+--- xen-4.5.1/tools/hotplug/Linux/vif-bridge.orig	2015-10-01 17:51:47.613981230 +0200
++++ xen-4.5.1/tools/hotplug/Linux/vif-bridge	2015-10-01 17:51:51.330647734 +0200
+@@ -93,8 +93,6 @@
          ;;
  esac
  
--if [ "$type_if" = vif ]; then
--    handle_iptable
--fi
+-handle_iptable
 -
  call_hooks vif post
  
diff --git a/xen-paths.patch b/xen-paths.patch
index 662488b..c2a05b2 100644
--- a/xen-paths.patch
+++ b/xen-paths.patch
@@ -1,11 +1,11 @@
---- xen-4.4.0/tools/Makefile~	2014-03-12 14:39:28.000000000 +0000
-+++ xen-4.4.0/tools/Makefile	2014-03-12 14:41:53.427783318 +0000
-@@ -188,7 +188,7 @@
- 	cd qemu-xen-dir; \
+--- xen-4.5.1/tools/Makefile.orig	2015-10-03 17:22:11.716804023 +0200
++++ xen-4.5.1/tools/Makefile	2015-10-03 19:37:54.219795649 +0200
+@@ -207,7 +207,7 @@
  	$$source/configure --enable-xen --target-list=i386-softmmu \
  		$(QEMU_XEN_ENABLE_DEBUG) \
--		--prefix=$(PREFIX) \
-+		--prefix=$(PREFIX) --libexecdir=$(LIBEXEC) \
+ 		--prefix=$(LIBEXEC) \
+-		--libdir=$(LIBEXEC_LIB) \
++		--libdir=$(LIBEXEC_LIB) --libexecdir=$(LIBEXEC_LIB) \
+ 		--includedir=$(LIBEXEC_INC) \
  		--source-path=$$source \
  		--extra-cflags="-I$(XEN_ROOT)/tools/include \
- 		-I$(XEN_ROOT)/tools/libxc \
diff --git a/xen-python_scripts.patch b/xen-python_scripts.patch
index 74f7483..417a9cc 100644
--- a/xen-python_scripts.patch
+++ b/xen-python_scripts.patch
@@ -7,33 +7,6 @@ diff -dur xen-4.2.0.orig/tools/misc/xenpvnetboot xen-4.2.0/tools/misc/xenpvnetbo
  #
  # Copyright (C) 2010 Oracle. All rights reserved.
  #
-diff -dur xen-4.2.0.orig/tools/python/xen/remus/save.py xen-4.2.0/tools/python/xen/remus/save.py
---- xen-4.2.0.orig/tools/python/xen/remus/save.py	2012-09-17 12:21:18.000000000 +0200
-+++ xen-4.2.0/tools/python/xen/remus/save.py	2012-10-22 10:46:30.000000000 +0200
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python
- 
- import os, select, socket, threading, time, signal, xmlrpclib
- 
-diff -dur xen-4.2.0.orig/tools/python/xen/remus/vm.py xen-4.2.0/tools/python/xen/remus/vm.py
---- xen-4.2.0.orig/tools/python/xen/remus/vm.py	2012-09-17 12:21:18.000000000 +0200
-+++ xen-4.2.0/tools/python/xen/remus/vm.py	2012-10-22 10:46:30.000000000 +0200
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python
- 
- import xmlrpclib
- 
-diff -dur xen-4.2.0.orig/tools/python/xen/xend/XendSXPDev.py xen-4.2.0/tools/python/xen/xend/XendSXPDev.py
---- xen-4.2.0.orig/tools/python/xen/xend/XendSXPDev.py	2012-09-17 12:21:19.000000000 +0200
-+++ xen-4.2.0/tools/python/xen/xend/XendSXPDev.py	2012-10-22 10:46:30.000000000 +0200
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python
- #
- # Helper functions for dealing with the sxp representation of devices
- 
 diff -dur xen-4.2.0.orig/tools/qemu-xen/scripts/analyse-9p-simpletrace.py xen-4.2.0/tools/qemu-xen/scripts/analyse-9p-simpletrace.py
 --- xen-4.2.0.orig/tools/qemu-xen/scripts/analyse-9p-simpletrace.py	2012-09-10 20:10:52.000000000 +0200
 +++ xen-4.2.0/tools/qemu-xen/scripts/analyse-9p-simpletrace.py	2012-10-22 10:46:30.000000000 +0200
@@ -52,12 +25,3 @@ diff -dur xen-4.2.0.orig/tools/qemu-xen/scripts/simpletrace.py xen-4.2.0/tools/q
  #
  # Pretty-printer for simple trace backend binary trace files
  #
-diff -dur xen-4.2.0.orig/tools/remus/remus xen-4.2.0/tools/remus/remus
---- xen-4.2.0.orig/tools/remus/remus	2012-09-17 12:21:19.000000000 +0200
-+++ xen-4.2.0/tools/remus/remus	2012-10-22 10:46:30.000000000 +0200
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python
- #
- # This is a save process which also buffers outgoing I/O between
- # rounds, so that external viewers never see anything that hasn't
diff --git a/xen-symbols.patch b/xen-symbols.patch
index dbf1772..db30fd8 100644
--- a/xen-symbols.patch
+++ b/xen-symbols.patch
@@ -10,17 +10,3 @@ diff -dur xen-4.2.0.orig/tools/libfsimage/common/Makefile xen-4.2.0/tools/libfsi
  LDFLAGS = $(LDFLAGS-y)
  
  CFLAGS += $(PTHREAD_CFLAGS)
-diff -dur xen-4.2.0.orig/tools/libxl/Makefile xen-4.2.0/tools/libxl/Makefile
---- xen-4.2.0.orig/tools/libxl/Makefile	2012-09-17 12:21:18.000000000 +0200
-+++ xen-4.2.0/tools/libxl/Makefile	2012-10-23 09:24:52.000000000 +0200
-@@ -173,8 +173,8 @@
- libxlutil.so.$(XLUMAJOR): libxlutil.so.$(XLUMAJOR).$(XLUMINOR)
- 	ln -sf $< $@
- 
--libxlutil.so.$(XLUMAJOR).$(XLUMINOR): $(LIBXLU_OBJS)
--	$(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxlutil.so.$(XLUMAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXLU_LIBS) $(APPEND_LDFLAGS)
-+libxlutil.so.$(XLUMAJOR).$(XLUMINOR): $(LIBXLU_OBJS) libxenlight.so
-+	$(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxlutil.so.$(XLUMAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(LIBXLU_LIBS) -L. -lxenlight $(APPEND_LDFLAGS)
- 
- libxlutil.a: $(LIBXLU_OBJS)
- 	$(AR) rcs libxlutil.a $^
diff --git a/xen-ulong.patch b/xen-ulong.patch
deleted file mode 100644
index 9842e65..0000000
--- a/xen-ulong.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- xen-4.2.1/tools/debugger/gdbsx/xg/xg_main.c.orig	2012-12-17 16:00:22.000000000 +0100
-+++ xen-4.2.1/tools/debugger/gdbsx/xg/xg_main.c	2013-01-13 08:38:22.865825568 +0100
-@@ -178,7 +178,7 @@
-     hypercall.op = __HYPERVISOR_domctl;
-     hypercall.arg[0] = (unsigned long)&domctl;
- 
--    rc = ioctl(_dom0_fd, IOCTL_PRIVCMD_HYPERCALL, (ulong)&hypercall);
-+    rc = ioctl(_dom0_fd, IOCTL_PRIVCMD_HYPERCALL, (unsigned long)&hypercall);
-     if (domctlarg && sz)
-         munlock(domctlarg, sz);
-     return rc;
-@@ -218,7 +218,7 @@
-     hypercall.arg[0] = (unsigned long)XENVER_capabilities;
-     hypercall.arg[1] = (unsigned long)&xen_caps;
- 
--    rc = ioctl(_dom0_fd, IOCTL_PRIVCMD_HYPERCALL, (ulong)&hypercall);
-+    rc = ioctl(_dom0_fd, IOCTL_PRIVCMD_HYPERCALL, (unsigned long)&hypercall);
-     munlock(&xen_caps, sizeof(xen_caps));
-     XGTRC("XENCAPS:%s\n", xen_caps);
- 
diff --git a/xend-pci-loop.patch b/xend-pci-loop.patch
deleted file mode 100644
index 5c4118a..0000000
--- a/xend-pci-loop.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-# Don't crash due to weird PCI cards (Bug 767742)
-
-diff -r fb8dd4c67778 tools/python/xen/util/pci.py
---- a/tools/python/xen/util/pci.py	Tue Dec 13 14:16:20 2011 -0500
-+++ b/tools/python/xen/util/pci.py	Wed Dec 14 15:46:56 2011 -0500
-@@ -1268,7 +1268,12 @@ class PciDevice:
-             pass
- 
-     def get_info_from_sysfs(self):
--        self.find_capability(0x11)
-+        try:
-+            self.find_capability(0x11)
-+        except PciDeviceParseError, err:
-+            log.error("Caught '%s'" % err)
-+            return False
-+
-         sysfs_mnt = find_sysfs_mnt()
-         if sysfs_mnt == None:
-             return False
diff --git a/xend.catchbt.patch b/xend.catchbt.patch
deleted file mode 100644
index 95eac54..0000000
--- a/xend.catchbt.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- xen-4.1.2/tools/python/xen/xend/image.py.orig	2011-10-20 18:05:44.000000000 +0100
-+++ xen-4.1.2/tools/python/xen/xend/image.py	2011-11-20 20:41:10.730905790 +0000
-@@ -43,7 +43,11 @@
- from xen.util import utils
- from xen.xend import osdep
- 
--xc = xen.lowlevel.xc.xc()
-+try:
-+    xc = xen.lowlevel.xc.xc()
-+except Exception:
-+    print >>sys.stderr, ('xend/image.py: Error connecting to hypervisor')
-+    os._exit(1)
- 
- MAX_GUEST_CMDLINE = 1024
- 
---- xen-4.1.2/tools/python/xen/xend/XendLogging.py.orig	2011-10-20 18:05:44.000000000 +0100
-+++ xen-4.1.2/tools/python/xen/xend/XendLogging.py	2012-01-10 21:27:57.304916048 +0000
-@@ -132,7 +132,11 @@
-         fileHandler = openFileHandler(filename)
-         logfilename = filename
-     except IOError:
--        logfilename = tempfile.mkstemp("-xend.log")[1]
-+        try:
-+            logfilename = tempfile.mkstemp("-xend.log")[1]
-+        except IOError:
-+            print >>sys.stderr, ('xend/XendLogging.py: Unable to open standard or temporary log file for xend')
-+            os._exit(1)
-         fileHandler = openFileHandler(logfilename)
- 
-     fileHandler.setFormatter(logging.Formatter(LOGFILE_FORMAT, DATE_FORMAT))
diff --git a/xend.init b/xend.init
deleted file mode 100644
index 2b2b199..0000000
--- a/xend.init
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/bin/sh
-#
-# xend		Script to start and stop the Xen control daemon.
-#
-# chkconfig:	2345 95 05
-# description:	Starts and stops the Xen control daemon.
-#
-
-# Source function library.
-. /etc/rc.d/init.d/functions
-
-start() {
-	if [ -f /var/lock/subsys/xend ]; then
-		msg_already_running "Xen control daemon"
-		return
-	fi
-	if [ ! -f /var/lock/subsys/xenconsoled -o ! -f /var/lock/subsys/xenstored ]; then
-		echo "xenconsoled and xenstored must be started first"
-		return
-	fi
-	msg_starting "Starting Xen control daemon"
-	daemon /usr/sbin/xend
-	RETVAL=$?
-	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/xend
-}
-
-stop() {
-	if [ ! -f /var/lock/subsys/xend ]; then
-		msg_not_running "Xen control daemon"
-		return
-	fi
-	msg_stopping "Stopping Xen control daemon"
-	killproc xend
-	rm -f /var/lock/subsys/xend
-}
-
-reload() {
-	if [ ! -f /var/lock/subsys/xend ]; then
-		msg_not_running "Xen control daemon"
-		RETVAL=7
-	else
-		msg_reloading "Reloading Xen control daemon"
-		killproc /usr/sbin/xend -HUP
-		RETVAL=$?
-	fi
-}
-
-condrestart() {
-	if [ ! -f /var/lock/subsys/xend ]; then
-		msg_not_running "Xen control daemon"
-		RETVAL=$1
-	else
-		stop
-		start
-	fi
-}
-
-RETVAL=0
-# See how we were called.
-case "$1" in
-  start)
-	start
-	;;
-  stop)
-	stop
-	;;
-  restart)
-	stop
-	start
-	;;
-  try-restart)
-	condrestart 0
-	;;
-  reload|force-reload)
-        reload
-        ;;
-  status)
-	status xend
-	exit $?
-	;;
-  *)
-	msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
-	exit 3
-esac
-
-exit $RETVAL
diff --git a/xend.service b/xend.service
deleted file mode 100644
index 0830bc4..0000000
--- a/xend.service
+++ /dev/null
@@ -1,17 +0,0 @@
-[Unit]
-Description=Xend - interface between hypervisor and some applications
-Requires=proc-xen.mount
-After=proc-xen.mount
-Before=libvirtd.service libvirt-guests.service
-ConditionPathExists=/proc/xen
-
-[Service]
-Type=forking
-PIDFile=/var/run/xend.pid
-ExecStartPre=/bin/grep -q control_d /proc/xen/capabilities
-ExecStart=/usr/sbin/xend start
-ExecStop=/usr/sbin/xend stop
-ExecReload=/usr/sbin/xend reload
-
-[Install]
-WantedBy=multi-user.target
diff --git a/xend.tmpfiles b/xend.tmpfiles
deleted file mode 100644
index 84048e6..0000000
--- a/xend.tmpfiles
+++ /dev/null
@@ -1,2 +0,0 @@
-d /var/run/xend 0700 root root -
-d /var/run/xend/boot 0700 root root -
diff --git a/xsa99.patch b/xsa99.patch
deleted file mode 100644
index 14e58f4..0000000
--- a/xsa99.patch
+++ /dev/null
@@ -1,257 +0,0 @@
-diff -durN -x '*~' -x '*.orig' -x '*.rej' xen-4.4.0.orig/tools/libxc/xc_mem_access.c xen-4.4.0/tools/libxc/xc_mem_access.c
---- xen-4.4.0.orig/tools/libxc/xc_mem_access.c	2014-03-10 11:43:57.000000000 +0100
-+++ xen-4.4.0/tools/libxc/xc_mem_access.c	2014-06-18 10:19:54.000000000 +0200
-@@ -24,19 +24,9 @@
- #include "xc_private.h"
- 
- 
--int xc_mem_access_enable(xc_interface *xch, domid_t domain_id,
--                         uint32_t *port)
-+void *xc_mem_access_enable(xc_interface *xch, domid_t domain_id, uint32_t *port)
- {
--    if ( !port )
--    {
--        errno = EINVAL;
--        return -1;
--    }
--
--    return xc_mem_event_control(xch, domain_id,
--                                XEN_DOMCTL_MEM_EVENT_OP_ACCESS_ENABLE,
--                                XEN_DOMCTL_MEM_EVENT_OP_ACCESS,
--                                port);
-+    return xc_mem_event_enable(xch, domain_id, HVM_PARAM_ACCESS_RING_PFN, port);
- }
- 
- int xc_mem_access_disable(xc_interface *xch, domid_t domain_id)
-diff -durN -x '*~' -x '*.orig' -x '*.rej' xen-4.4.0.orig/tools/libxc/xc_mem_event.c xen-4.4.0/tools/libxc/xc_mem_event.c
---- xen-4.4.0.orig/tools/libxc/xc_mem_event.c	2014-03-10 11:43:57.000000000 +0100
-+++ xen-4.4.0/tools/libxc/xc_mem_event.c	2014-06-18 10:19:54.000000000 +0200
-@@ -56,3 +56,118 @@
-     return do_memory_op(xch, mode, &meo, sizeof(meo));
- }
- 
-+void *xc_mem_event_enable(xc_interface *xch, domid_t domain_id, int param,
-+                          uint32_t *port)
-+{
-+    void *ring_page = NULL;
-+    unsigned long ring_pfn, mmap_pfn;
-+    unsigned int op, mode;
-+    int rc1, rc2, saved_errno;
-+
-+    if ( !port )
-+    {
-+        errno = EINVAL;
-+        return NULL;
-+    }
-+
-+    /* Pause the domain for ring page setup */
-+    rc1 = xc_domain_pause(xch, domain_id);
-+    if ( rc1 != 0 )
-+    {
-+        PERROR("Unable to pause domain\n");
-+        return NULL;
-+    }
-+
-+    /* Get the pfn of the ring page */
-+    rc1 = xc_get_hvm_param(xch, domain_id, param, &ring_pfn);
-+    if ( rc1 != 0 )
-+    {
-+        PERROR("Failed to get pfn of ring page\n");
-+        goto out;
-+    }
-+
-+    mmap_pfn = ring_pfn;
-+    ring_page = xc_map_foreign_batch(xch, domain_id, PROT_READ | PROT_WRITE,
-+                                     &mmap_pfn, 1);
-+    if ( mmap_pfn & XEN_DOMCTL_PFINFO_XTAB )
-+    {
-+        /* Map failed, populate ring page */
-+        rc1 = xc_domain_populate_physmap_exact(xch, domain_id, 1, 0, 0,
-+                                              &ring_pfn);
-+        if ( rc1 != 0 )
-+        {
-+            PERROR("Failed to populate ring pfn\n");
-+            goto out;
-+        }
-+
-+        mmap_pfn = ring_pfn;
-+        ring_page = xc_map_foreign_batch(xch, domain_id, PROT_READ | PROT_WRITE,
-+                                         &mmap_pfn, 1);
-+        if ( mmap_pfn & XEN_DOMCTL_PFINFO_XTAB )
-+        {
-+            PERROR("Could not map the ring page\n");
-+            goto out;
-+        }
-+    }
-+
-+    switch ( param )
-+    {
-+    case HVM_PARAM_PAGING_RING_PFN:
-+        op = XEN_DOMCTL_MEM_EVENT_OP_PAGING_ENABLE;
-+        mode = XEN_DOMCTL_MEM_EVENT_OP_PAGING;
-+        break;
-+
-+    case HVM_PARAM_ACCESS_RING_PFN:
-+        op = XEN_DOMCTL_MEM_EVENT_OP_ACCESS_ENABLE;
-+        mode = XEN_DOMCTL_MEM_EVENT_OP_ACCESS;
-+        break;
-+
-+    case HVM_PARAM_SHARING_RING_PFN:
-+        op = XEN_DOMCTL_MEM_EVENT_OP_SHARING_ENABLE;
-+        mode = XEN_DOMCTL_MEM_EVENT_OP_SHARING;
-+        break;
-+
-+    /*
-+     * This is for the outside chance that the HVM_PARAM is valid but is invalid
-+     * as far as mem_event goes.
-+     */
-+    default:
-+        errno = EINVAL;
-+        rc1 = -1;
-+        goto out;
-+    }
-+
-+    rc1 = xc_mem_event_control(xch, domain_id, op, mode, port);
-+    if ( rc1 != 0 )
-+    {
-+        PERROR("Failed to enable mem_event\n");
-+        goto out;
-+    }
-+
-+    /* Remove the ring_pfn from the guest's physmap */
-+    rc1 = xc_domain_decrease_reservation_exact(xch, domain_id, 1, 0, &ring_pfn);
-+    if ( rc1 != 0 )
-+        PERROR("Failed to remove ring page from guest physmap");
-+
-+ out:
-+    saved_errno = errno;
-+
-+    rc2 = xc_domain_unpause(xch, domain_id);
-+    if ( rc1 != 0 || rc2 != 0 )
-+    {
-+        if ( rc2 != 0 )
-+        {
-+            if ( rc1 == 0 )
-+                saved_errno = errno;
-+            PERROR("Unable to unpause domain");
-+        }
-+
-+        if ( ring_page )
-+            munmap(ring_page, XC_PAGE_SIZE);
-+        ring_page = NULL;
-+
-+        errno = saved_errno;
-+    }
-+
-+    return ring_page;
-+}
-diff -durN -x '*~' -x '*.orig' -x '*.rej' xen-4.4.0.orig/tools/libxc/xenctrl.h xen-4.4.0/tools/libxc/xenctrl.h
---- xen-4.4.0.orig/tools/libxc/xenctrl.h	2014-03-10 11:43:57.000000000 +0100
-+++ xen-4.4.0/tools/libxc/xenctrl.h	2014-06-18 10:19:54.000000000 +0200
-@@ -2040,6 +2040,12 @@
- int xc_mem_event_memop(xc_interface *xch, domid_t domain_id, 
-                         unsigned int op, unsigned int mode,
-                         uint64_t gfn, void *buffer);
-+/*
-+ * Enables mem_event and returns the mapped ring page indicated by param.
-+ * param can be HVM_PARAM_PAGING/ACCESS/SHARING_RING_PFN
-+ */
-+void *xc_mem_event_enable(xc_interface *xch, domid_t domain_id, int param,
-+                          uint32_t *port);
- 
- /** 
-  * Mem paging operations.
-@@ -2060,7 +2066,13 @@
-  * Access tracking operations.
-  * Supported only on Intel EPT 64 bit processors.
-  */
--int xc_mem_access_enable(xc_interface *xch, domid_t domain_id, uint32_t *port);
-+
-+/*
-+ * Enables mem_access and returns the mapped ring page.
-+ * Will return NULL on error.
-+ * Caller has to unmap this page when done.
-+ */
-+void *xc_mem_access_enable(xc_interface *xch, domid_t domain_id, uint32_t *port);
- int xc_mem_access_disable(xc_interface *xch, domid_t domain_id);
- int xc_mem_access_resume(xc_interface *xch, domid_t domain_id,
-                          unsigned long gfn);
-diff -durN -x '*~' -x '*.orig' -x '*.rej' xen-4.4.0.orig/tools/tests/xen-access/xen-access.c xen-4.4.0/tools/tests/xen-access/xen-access.c
---- xen-4.4.0.orig/tools/tests/xen-access/xen-access.c	2014-03-10 11:43:57.000000000 +0100
-+++ xen-4.4.0/tools/tests/xen-access/xen-access.c	2014-06-18 10:20:55.000000000 +0200
-@@ -231,7 +231,6 @@
-     xenaccess_t *xenaccess = 0;
-     xc_interface *xch;
-     int rc;
--    unsigned long ring_pfn, mmap_pfn;
- 
-     xch = xc_interface_open(NULL, NULL, 0);
-     if ( !xch )
-@@ -253,40 +252,12 @@
-     /* Initialise lock */
-     mem_event_ring_lock_init(&xenaccess->mem_event);
- 
--    /* Map the ring page */
--    xc_get_hvm_param(xch, xenaccess->mem_event.domain_id, 
--                        HVM_PARAM_ACCESS_RING_PFN, &ring_pfn);
--    mmap_pfn = ring_pfn;
--    xenaccess->mem_event.ring_page = 
--        xc_map_foreign_batch(xch, xenaccess->mem_event.domain_id, 
--                                PROT_READ | PROT_WRITE, &mmap_pfn, 1);
--    if ( mmap_pfn & XEN_DOMCTL_PFINFO_XTAB )
--    {
--        /* Map failed, populate ring page */
--        rc = xc_domain_populate_physmap_exact(xenaccess->xc_handle, 
--                                              xenaccess->mem_event.domain_id,
--                                              1, 0, 0, &ring_pfn);
--        if ( rc != 0 )
--        {
--            PERROR("Failed to populate ring gfn\n");
--            goto err;
--        }
--
--        mmap_pfn = ring_pfn;
--        xenaccess->mem_event.ring_page = 
--            xc_map_foreign_batch(xch, xenaccess->mem_event.domain_id, 
--                                    PROT_READ | PROT_WRITE, &mmap_pfn, 1);
--        if ( mmap_pfn & XEN_DOMCTL_PFINFO_XTAB )
--        {
--            PERROR("Could not map the ring page\n");
--            goto err;
--        }
--    }
--
--    /* Initialise Xen */
--    rc = xc_mem_access_enable(xenaccess->xc_handle, xenaccess->mem_event.domain_id,
--                             &xenaccess->mem_event.evtchn_port);
--    if ( rc != 0 )
-+    /* Enable mem_access */
-+    xenaccess->mem_event.ring_page =
-+            xc_mem_access_enable(xenaccess->xc_handle,
-+                                 xenaccess->mem_event.domain_id,
-+                                 &xenaccess->mem_event.evtchn_port);
-+    if ( xenaccess->mem_event.ring_page == NULL )
-     {
-         switch ( errno ) {
-             case EBUSY:
-@@ -296,7 +267,7 @@
-                 ERROR("EPT not supported for this guest");
-                 break;
-             default:
--                perror("Error initialising shared page");
-+                perror("Error enabling mem_access");
-                 break;
-         }
-         goto err;
-@@ -330,11 +301,6 @@
-                    (mem_event_sring_t *)xenaccess->mem_event.ring_page,
-                    PAGE_SIZE);
- 
--    /* Now that the ring is set, remove it from the guest's physmap */
--    if ( xc_domain_decrease_reservation_exact(xch, 
--                    xenaccess->mem_event.domain_id, 1, 0, &ring_pfn) )
--        PERROR("Failed to remove ring from guest physmap");
--
-     /* Get platform info */
-     xenaccess->platform_info = malloc(sizeof(xc_platform_info_t));
-     if ( xenaccess->platform_info == NULL )
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/xen.git/commitdiff/32d7e1602231dde347380e21cd147cc36aefe22b




More information about the pld-cvs-commit mailing list