SHA256
1
0
forked from pool/xen

- bnc#655438 - Using performance counter in domU on Nehalem cpus

22417-vpmu-nehalem.patch
- Upstream patches from Jan
  22389-amd-iommu-decls.patch
  22416-acpi-check-mwait.patch
  22431-p2m-remove-bug-check.patch

- bnc#656245 - VUL-1: hypervisor: application or kernel in any pv
  Xen domain can crash Xen
  x86_64-gdt-ldt-fault-filter.patch

- bnc#654050 - Python: a crasher bug in pyexpat - upstream patch 
  needs backporting 
  22235-lxml-validator.patch

- bnc#628729 - Add a small, fast alternative to 'xm list' for
  enumerating active domains.  xen-list is a C program that uses
  libxenstore and libxenctl directly, bypassing the python
  toolstack.
  xen-utils-0.1.tar.bz2

OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=86
This commit is contained in:
Charles Arnold
2010-11-30 23:19:04 +00:00
committed by Git OBS Bridge
parent f84f24ac38
commit 7e759c69d7
12 changed files with 593 additions and 99 deletions

211
xen.spec
View File

@@ -25,35 +25,35 @@ ExclusiveArch: %ix86 x86_64
%define changeset 21326
%define xen_build_dir xen-4.0.1-testing
%define with_kmp 1
BuildRequires: LibVNCServer-devel
BuildRequires: SDL-devel
BuildRequires: automake
BuildRequires: bin86
BuildRequires: curl-devel
BuildRequires: dev86
BuildRequires: graphviz
BuildRequires: latex2html
BuildRequires: libjpeg-devel
BuildRequires: libxml2-devel
BuildRequires: ncurses-devel
BuildRequires: openssl
BuildRequires: openssl-devel
BuildRequires: pciutils-devel
BuildRequires: python-devel
BuildRequires: texinfo
BuildRequires: transfig
BuildRequires: LibVNCServer-devel
BuildRequires: SDL-devel
BuildRequires: automake
BuildRequires: bin86
BuildRequires: curl-devel
BuildRequires: dev86
BuildRequires: graphviz
BuildRequires: latex2html
BuildRequires: libjpeg-devel
BuildRequires: libxml2-devel
BuildRequires: ncurses-devel
BuildRequires: openssl
BuildRequires: openssl-devel
BuildRequires: pciutils-devel
BuildRequires: python-devel
BuildRequires: texinfo
BuildRequires: transfig
%if %suse_version <= 1110
BuildRequires: pmtools
BuildRequires: pmtools
%else
BuildRequires: acpica
BuildRequires: acpica
%endif
%if %suse_version >= 1030
BuildRequires: texlive
BuildRequires: texlive-latex
BuildRequires: texlive
BuildRequires: texlive-latex
%else
BuildRequires: te_ams
BuildRequires: te_latex
BuildRequires: tetex
BuildRequires: te_ams
BuildRequires: te_latex
BuildRequires: tetex
%endif
%ifarch x86_64
BuildRequires: glibc-32bit glibc-devel-32bit
@@ -78,28 +78,29 @@ PreReq: %insserv_prereq %fillup_prereq
Summary: Xen Virtualization: Hypervisor (aka VMM aka Microkernel)
Source0: xen-4.0.1-testing-src.tar.bz2
Source1: stubdom.tar.bz2
Source2: README.SuSE
Source3: boot.xen
Source4: boot.local.xenU
Source5: init.xend
Source6: init.xendomains
Source7: logrotate.conf
Source8: domUloader.py
Source9: xmexample.domUloader
Source10: xmexample.disks
Source11: block-nbd
Source12: block-iscsi
Source13: block-npiv-common.sh
Source14: block-npiv
Source15: block-npiv-vport
Source16: xmclone.sh
Source17: xend-relocation.sh
Source18: init.xen_loop
Source2: xen-utils-0.1.tar.bz2
Source3: README.SuSE
Source4: boot.xen
Source5: boot.local.xenU
Source6: init.xend
Source7: init.xendomains
Source8: logrotate.conf
Source9: domUloader.py
Source10: xmexample.domUloader
Source11: xmexample.disks
Source12: block-nbd
Source13: block-iscsi
Source14: block-npiv-common.sh
Source15: block-npiv
Source16: block-npiv-vport
Source17: xmclone.sh
Source18: xend-relocation.sh
Source19: init.xen_loop
%if %{?with_kmp}0
Source19: xen_pvdrivers.conf
Source20: kmp_filelist
Source20: xen_pvdrivers.conf
Source21: kmp_filelist
%endif
Source21: block-dmmd
Source22: block-dmmd
# Xen API remote authentication sources
Source23: etc_pam.d_xen-api
Source24: xenapiusers
@@ -147,10 +148,15 @@ Patch37: 22222-x86-timer-extint.patch
Patch38: 22223-vtd-workarounds.patch
Patch39: 22231-x86-pv-ucode-msr-intel.patch
Patch40: 22232-x86-64-lahf-lm-bios-workaround.patch
Patch41: 22280-kexec.patch
Patch42: 22337-vtd-scan-single-func.patch
Patch43: 22348-vtd-check-secbus-devfn.patch
Patch44: 22369-xend-pci-passthru-fix.patch
Patch41: 22235-lxml-validator.patch
Patch42: 22280-kexec.patch
Patch43: 22337-vtd-scan-single-func.patch
Patch44: 22348-vtd-check-secbus-devfn.patch
Patch45: 22369-xend-pci-passthru-fix.patch
Patch46: 22389-amd-iommu-decls.patch
Patch47: 22416-acpi-check-mwait.patch
Patch48: 22417-vpmu-nehalem.patch
Patch49: 22431-p2m-remove-bug-check.patch
# Our patches
Patch300: xen-config.diff
Patch301: xend-config.diff
@@ -250,18 +256,19 @@ Patch440: bdrv_default_rwflag.patch
Patch450: xend-domain-lock.patch
# Hypervisor and PV driver Patches
Patch500: 32on64-extra-mem.patch
Patch501: x86-ioapic-ack-default.patch
Patch502: x86-cpufreq-report.patch
Patch503: dump-exec-state.patch
Patch504: dom-print.patch
Patch505: pvdrv-import-shared-info.patch
Patch506: x86-show-page-walk-early.patch
Patch507: x86-extra-trap-info.patch
Patch508: pvdrv_emulation_control.patch
Patch509: blktap-pv-cdrom.patch
Patch510: pv-driver-build.patch
Patch511: supported_module.diff
Patch512: magic_ioport_compat.patch
Patch501: x86_64-gdt-ldt-fault-filter.patch
Patch502: x86-ioapic-ack-default.patch
Patch503: x86-cpufreq-report.patch
Patch504: dump-exec-state.patch
Patch505: dom-print.patch
Patch506: pvdrv-import-shared-info.patch
Patch507: x86-show-page-walk-early.patch
Patch508: x86-extra-trap-info.patch
Patch509: pvdrv_emulation_control.patch
Patch510: blktap-pv-cdrom.patch
Patch511: pv-driver-build.patch
Patch512: supported_module.diff
Patch513: magic_ioport_compat.patch
Patch650: disable_emulated_device.diff
Patch651: ioemu-disable-scsi.patch
# novell_shim patches
@@ -273,32 +280,32 @@ Patch704: hv_apic.patch
# Build patch
Patch999: tmp_build.patch
# FATE 310510
Patch10001: xenpaging.tools_xenpaging_cleanup.patch
Patch10002: xenpaging.pageout_policy.patch
Patch10003: xenpaging.xs_daemon_close.patch
Patch10004: xenpaging.get_paged_frame.patch
Patch10005: xenpaging.makefile.patch
Patch10010: xenpaging.policy_linear.patch
Patch10011: xenpaging.pagefile.patch
Patch10012: xenpaging.xenpaging_init.patch
Patch10013: xenpaging.mem_paging_tool_qemu_flush_cache.patch
Patch10014: xenpaging.machine_to_phys_mapping.patch
Patch10015: xenpaging.populate_only_if_paged.patch
Patch10017: xenpaging.autostart.patch
Patch10018: xenpaging.signal_handling.patch
Patch10019: xenpaging.MRU_SIZE.patch
Patch10020: xenpaging.guest_remove_page.patch
Patch10021: xenpaging.mem_event_check_ring-free_requests.patch
Patch10022: xenpaging.blacklist.patch
Patch10023: xenpaging.autostart_delay.patch
Patch10024: xenpaging.page_already_populated.patch
Patch10025: xenpaging.notify_policy_only_once.patch
Patch10026: xenpaging.num_pages_equal_max_pages.patch
Patch10027: xenpaging.p2m_mem_paging_populate_if_p2m_ram_paged.patch
Patch10028: xenpaging.HVMCOPY_gfn_paged_out.patch
Patch10029: xenpaging.optimize_p2m_mem_paging_populate.patch
Patch10030: xenpaging.enabled.patch
Patch10040: xenpaging.doc.patch
Patch10001: xenpaging.tools_xenpaging_cleanup.patch
Patch10002: xenpaging.pageout_policy.patch
Patch10003: xenpaging.xs_daemon_close.patch
Patch10004: xenpaging.get_paged_frame.patch
Patch10005: xenpaging.makefile.patch
Patch10010: xenpaging.policy_linear.patch
Patch10011: xenpaging.pagefile.patch
Patch10012: xenpaging.xenpaging_init.patch
Patch10013: xenpaging.mem_paging_tool_qemu_flush_cache.patch
Patch10014: xenpaging.machine_to_phys_mapping.patch
Patch10015: xenpaging.populate_only_if_paged.patch
Patch10017: xenpaging.autostart.patch
Patch10018: xenpaging.signal_handling.patch
Patch10019: xenpaging.MRU_SIZE.patch
Patch10020: xenpaging.guest_remove_page.patch
Patch10021: xenpaging.mem_event_check_ring-free_requests.patch
Patch10022: xenpaging.blacklist.patch
Patch10023: xenpaging.autostart_delay.patch
Patch10024: xenpaging.page_already_populated.patch
Patch10025: xenpaging.notify_policy_only_once.patch
Patch10026: xenpaging.num_pages_equal_max_pages.patch
Patch10027: xenpaging.p2m_mem_paging_populate_if_p2m_ram_paged.patch
Patch10028: xenpaging.HVMCOPY_gfn_paged_out.patch
Patch10029: xenpaging.optimize_p2m_mem_paging_populate.patch
Patch10030: xenpaging.enabled.patch
Patch10040: xenpaging.doc.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()")
@@ -416,7 +423,7 @@ License: GPLv2+
Summary: Xen Virtualization: Control tools for domain 0
Group: System/Kernel
Requires: xen-libs = %{version}
Requires: bridge-utils multipath-tools python python-curses python-openssl python-pam python-xml pyxml
Requires: bridge-utils multipath-tools python python-curses python-openssl python-pam python-xml python-lxml
#Requires: ipcalc
# subpackage existed in 10.3
Provides: xen-tools-ioemu = 3.2
@@ -631,6 +638,7 @@ Authors:
%prep
%setup -q -n %xen_build_dir -a 1
tar xfj %{SOURCE2} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools
%patch0 -p1
%patch1 -p1
%patch2 -p1
@@ -676,6 +684,11 @@ Authors:
%patch42 -p1
%patch43 -p1
%patch44 -p1
%patch45 -p1
%patch46 -p1
%patch47 -p1
%patch48 -p1
%patch49 -p1
%patch300 -p1
%patch301 -p1
%patch302 -p1
@@ -780,6 +793,7 @@ Authors:
%patch510 -p1
%patch511 -p1
%patch512 -p1
%patch513 -p1
%patch650 -p1
%patch651 -p1
%patch700 -p1
@@ -815,6 +829,7 @@ Authors:
%patch10030 -p1
%patch10040 -p1
%build
XEN_EXTRAVERSION=%version-%release
XEN_EXTRAVERSION=${XEN_EXTRAVERSION#%{xvers}}
@@ -845,6 +860,7 @@ for flavor in %flavors_to_build; do
cd ../..
done
%endif
make -C tools/xen-utils-0.1 XEN_INTREE_BUILD=yes
%install
test ! -z "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" && rm -rf $RPM_BUILD_ROOT
@@ -899,7 +915,7 @@ for flavor in %flavors_to_build; do
M=$PWD/obj/$flavor
done
mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d
install -m644 %SOURCE19 $RPM_BUILD_ROOT/etc/modprobe.d/xen_pvdrivers.conf
install -m644 %SOURCE20 $RPM_BUILD_ROOT/etc/modprobe.d/xen_pvdrivers.conf
%endif
# stubdom
make stubdom
@@ -916,7 +932,7 @@ ln -s /usr/lib/xen/bin/stubdompath.sh $RPM_BUILD_ROOT/usr/lib64/xen/bin/stubdomp
make -C docs install \
DESTDIR=$RPM_BUILD_ROOT MANDIR=%{_mandir} \
DOCDIR=%{_defaultdocdir}/xen
for name in COPYING %SOURCE2 %SOURCE3 %SOURCE4; do
for name in COPYING %SOURCE3 %SOURCE4 %SOURCE5; do
install -m 644 $name $RPM_BUILD_ROOT/%{_defaultdocdir}/xen/
done
mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/xen/misc
@@ -925,21 +941,21 @@ for name in vtpm.txt crashdb.txt sedf_scheduler_mini-HOWTO.txt xenpaging.txt; do
done
# init scripts
mkdir -p $RPM_BUILD_ROOT/etc/init.d
install %SOURCE5 $RPM_BUILD_ROOT/etc/init.d/xend
install %SOURCE6 $RPM_BUILD_ROOT/etc/init.d/xend
ln -s /etc/init.d/xend $RPM_BUILD_ROOT/usr/sbin/rcxend
install %SOURCE6 $RPM_BUILD_ROOT/etc/init.d/xendomains
install %SOURCE7 $RPM_BUILD_ROOT/etc/init.d/xendomains
ln -s /etc/init.d/xendomains $RPM_BUILD_ROOT/usr/sbin/rcxendomains
mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d
install -m644 %SOURCE18 $RPM_BUILD_ROOT/etc/modprobe.d/xen_loop.conf
install -m644 %SOURCE19 $RPM_BUILD_ROOT/etc/modprobe.d/xen_loop.conf
# example config
mkdir -p $RPM_BUILD_ROOT/etc/xen/{vm,examples,scripts}
mv $RPM_BUILD_ROOT/etc/xen/xmexample* $RPM_BUILD_ROOT/etc/xen/examples
rm -f $RPM_BUILD_ROOT/etc/xen/examples/*nbd
install -m644 %SOURCE9 %SOURCE10 $RPM_BUILD_ROOT/etc/xen/examples/
install -m644 %SOURCE10 %SOURCE11 $RPM_BUILD_ROOT/etc/xen/examples/
install -m644 tools/xentrace/formats $RPM_BUILD_ROOT/etc/xen/examples/xentrace_formats.txt
# scripts
rm -f $RPM_BUILD_ROOT/etc/xen/scripts/block-*nbd
install -m755 %SOURCE11 %SOURCE12 %SOURCE13 %SOURCE14 %SOURCE15 %SOURCE16 %SOURCE17 %SOURCE21 $RPM_BUILD_ROOT/etc/xen/scripts/
install -m755 %SOURCE12 %SOURCE13 %SOURCE14 %SOURCE15 %SOURCE16 %SOURCE17 %SOURCE18 %SOURCE22 $RPM_BUILD_ROOT/etc/xen/scripts/
ln -s /etc/xen/scripts/vm-monitor $RPM_BUILD_ROOT/etc/xen/scripts/set-lock
# Xen API remote authentication files
install -d $RPM_BUILD_ROOT/etc/pam.d
@@ -953,7 +969,7 @@ install -m755 %SOURCE25 $RPM_BUILD_ROOT/etc/sysconfig/network/scripts
ln -s /etc/sysconfig/network/scripts/xen-updown.sh $RPM_BUILD_ROOT/etc/sysconfig/network/if-up.d/xen
ln -s /etc/sysconfig/network/scripts/xen-updown.sh $RPM_BUILD_ROOT/etc/sysconfig/network/if-down.d/xen
# logrotate
install -m644 -D %SOURCE7 $RPM_BUILD_ROOT/etc/logrotate.d/xen
install -m644 -D %SOURCE8 $RPM_BUILD_ROOT/etc/logrotate.d/xen
# directories
mkdir -p $RPM_BUILD_ROOT/var/lib/xenstored
mkdir -p $RPM_BUILD_ROOT/var/lib/xen/images
@@ -967,12 +983,14 @@ mkdir -p $RPM_BUILD_ROOT/var/lib/xen/xenpaging
mkdir -p $RPM_BUILD_ROOT/var/log/xen
ln -s /var/lib/xen/images $RPM_BUILD_ROOT/etc/xen/images
# Bootloader
install -m755 %SOURCE8 $RPM_BUILD_ROOT/usr/lib/xen/boot/
install -m755 %SOURCE9 $RPM_BUILD_ROOT/usr/lib/xen/boot/
# udev support
mkdir -p $RPM_BUILD_ROOT/etc/udev/rules.d
mv $RPM_BUILD_ROOT/etc/udev/rules.d/xen-backend.rules $RPM_BUILD_ROOT/etc/udev/rules.d/40-xen.rules
mv $RPM_BUILD_ROOT/etc/udev/rules.d/xend.rules $RPM_BUILD_ROOT/etc/udev/rules.d/40-xend.rules
#%find_lang xen-vm # po files are misnamed upstream
# xen utils
make -C tools/xen-utils-0.1 install DESTDIR=$RPM_BUILD_ROOT XEN_INTREE_BUILD=yes
# Clean up unpackaged files
rm -rf $RPM_BUILD_ROOT/%{_datadir}/doc/xen/qemu/
rm -f $RPM_BUILD_ROOT/%{_datadir}/doc/qemu/qemu-*
@@ -1055,6 +1073,7 @@ rm -rf $RPM_BUILD_ROOT/%{_libdir}/debug
/usr/sbin/td-util
/usr/sbin/vhd-update
/usr/sbin/vhd-util
/usr/sbin/xen-list
/usr/sbin/gdbsx
/usr/sbin/xl
%dir %{_libdir}/xen