From: Michael Tremer Date: Fri, 26 Feb 2010 22:22:29 +0000 (+0100) Subject: xen: New package. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ee4ca99a19481d9cdbf7a25921c965db0d09709;p=ipfire-3.x.git xen: New package. --- diff --git a/pkgs/core/xen/patches/xen-3.4.0-co_assignment.patch b/pkgs/core/xen/patches/xen-3.4.0-co_assignment.patch new file mode 100644 index 000000000..f0b59f050 --- /dev/null +++ b/pkgs/core/xen/patches/xen-3.4.0-co_assignment.patch @@ -0,0 +1,22 @@ +diff -r 6ab55f716ce3 tools/python/xen/util/pci.py +--- a/tools/python/xen/util/pci.py Thu Oct 09 17:18:11 2008 +0100 ++++ b/tools/python/xen/util/pci.py Fri Oct 10 13:16:00 2008 +0800 +@@ -696,6 +696,7 @@ class PciDevice: + def do_FLR(self): + """ Perform FLR (Functional Level Reset) for the device. + """ ++ return + if self.dev_type == DEV_TYPE_PCIe_ENDPOINT: + # If PCIe device supports FLR, we use it. + if self.pcie_flr: +diff -r 6ab55f716ce3 tools/python/xen/xend/server/pciif.py +--- a/tools/python/xen/xend/server/pciif.py Thu Oct 09 17:18:11 2008 +0100 ++++ b/tools/python/xen/xend/server/pciif.py Fri Oct 10 13:18:25 2008 +0800 +@@ -375,6 +375,7 @@ class PciController(DevController): + pci_dev_list = pci_dev_list + [(domain, bus, slot, func)] + + for (domain, bus, slot, func) in pci_dev_list: ++ continue + try: + dev = PciDevice(domain, bus, slot, func) + except Exception, e: diff --git a/pkgs/core/xen/patches/xen-3.4.0-cpufreq.patch b/pkgs/core/xen/patches/xen-3.4.0-cpufreq.patch new file mode 100644 index 000000000..4a8f3f3dd --- /dev/null +++ b/pkgs/core/xen/patches/xen-3.4.0-cpufreq.patch @@ -0,0 +1,19 @@ +--- a/xen/arch/x86/platform_hypercall.c 2009-07-23 07:26:18.000000000 +0000 ++++ b/xen/arch/x86/platform_hypercall.c 2009-07-23 07:28:30.000000000 +0000 +@@ -313,7 +313,6 @@ + { + uint32_t cpu; + uint64_t idletime, now = NOW(); +- struct vcpu *v; + struct xenctl_cpumap ctlmap; + cpumask_t cpumap; + XEN_GUEST_HANDLE(uint8) cpumap_bitmap; +@@ -336,7 +335,7 @@ + + for_each_cpu_mask ( cpu, cpumap ) + { +- if ( (v = idle_vcpu[cpu]) != NULL ) ++ if ( !idle_vcpu[cpu] ) + cpu_clear(cpu, cpumap); + idletime = get_cpu_idle_time(cpu); + diff --git a/pkgs/core/xen/patches/xend-config-3.4.0.patch b/pkgs/core/xen/patches/xend-config-3.4.0.patch new file mode 100644 index 000000000..fce98f917 --- /dev/null +++ b/pkgs/core/xen/patches/xend-config-3.4.0.patch @@ -0,0 +1,99 @@ +--- a/tools/examples/xend-config.sxp 2009-05-18 11:05:38.000000000 +0000 ++++ b/tools/examples/xend-config.sxp 2009-07-23 08:00:23.000000000 +0000 +@@ -14,10 +14,6 @@ + #(logfile /var/log/xen/xend.log) + #(loglevel DEBUG) + +-# Uncomment the line below. Set the value to flask, acm, or dummy to +-# select a security module. +- +-#(xsm_module_name dummy) + + # The Xen-API server configuration. + # +@@ -58,21 +54,20 @@ + + + #(xend-http-server no) +-#(xend-unix-server no) +-#(xend-tcp-xmlrpc-server no) +-#(xend-unix-xmlrpc-server yes) ++(xend-unix-server yes) ++(xend-tcp-xmlrpc-server yes) ++(xend-unix-xmlrpc-server yes) + #(xend-relocation-server no) + (xend-relocation-server yes) + #(xend-relocation-ssl-server no) +-#(xend-udev-event-server no) + + #(xend-unix-path /var/lib/xend/xend-socket) + + + # Address and port xend should use for the legacy TCP XMLRPC interface, + # if xend-tcp-xmlrpc-server is set. +-#(xend-tcp-xmlrpc-server-address 'localhost') +-#(xend-tcp-xmlrpc-server-port 8006) ++(xend-tcp-xmlrpc-server-address 'localhost') ++(xend-tcp-xmlrpc-server-port 8006) + + # SSL key and certificate to use for the legacy TCP XMLRPC interface. + # Setting these will mean that this port serves only SSL connections as +@@ -82,11 +77,11 @@ + + + # Port xend should use for the HTTP interface, if xend-http-server is set. +-#(xend-port 8000) ++(xend-port 8000) + + # Port xend should use for the relocation interface, if xend-relocation-server + # is set. +-#(xend-relocation-port 8002) ++(xend-relocation-port 8002) + + # Port xend should use for the ssl relocation interface, if + # xend-relocation-ssl-server is set. +@@ -154,7 +149,7 @@ + # 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-dummy) + + # 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 +@@ -169,7 +164,7 @@ + # If you are using only one bridge, the vif-bridge script will discover that, + # so there is no need to specify it explicitly. + # +-(vif-script vif-bridge) ++#(vif-script vif-bridge) + + + ## Use the following if network traffic is routed, as an alternative to the +@@ -194,7 +189,7 @@ + + # In SMP system, dom0 will use dom0-cpus # of CPUS + # If dom0-cpus = 0, dom0 will take all cpus available +-(dom0-cpus 0) ++#(dom0-cpus 0) + + # Whether to enable core-dumps when domains crash. + #(enable-dump no) +@@ -205,7 +200,7 @@ + # The interface for VNC servers to listen on. Defaults + # to 127.0.0.1 To restore old 'listen everywhere' behaviour + # set this to 0.0.0.0 +-#(vnc-listen '127.0.0.1') ++(vnc-listen '0.0.0.0') + + # The default password for VNC console on HVM domain. + # Empty string is no authentication. +@@ -243,7 +238,7 @@ + + # The default keymap to use for the VM's virtual keyboard + # when not specififed in VM's configuration +-#(keymap 'en-us') ++(keymap 'de') + + # Script to run when the label of a resource has changed. + #(resource-label-change-script '') diff --git a/pkgs/core/xen/xen.nm b/pkgs/core/xen/xen.nm new file mode 100644 index 000000000..3b941d9ff --- /dev/null +++ b/pkgs/core/xen/xen.nm @@ -0,0 +1,57 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007, 2008 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include $(PKGROOT)/Include + +PKG_NAME = xen +PKG_VER = 3.4.0-2 +PKG_REL = 0 + +PKG_MAINTAINER = Ben Schweikert +PKG_GROUP = Applications/Virtualization +PKG_URL = http://www.xen.org/ +PKG_LICENSE = GPLv2+ +PKG_SUMMARY = The Xen hypervisor. + +define PKG_DESCRIPTION + The Xen hypervisor, the powerful open source industry standard \ + for virtualization, offers a powerful, efficient, and secure \ + feature set for virtualization. +endef + +PKG_TARBALL = $(THISAPP).tar.gz + +define QUALITY_AGENT_WHITELIST_EXECSTACK + /boot/* +endef + +DIR_APP = $(DIR_SRC)/$(PKG_NAME)-3.4.0 + +define STAGE_BUILD + cd $(DIR_APP) && make xen $(PARALLELISMFLAGS) +endef + +define STAGE_INSTALL + cd $(DIR_APP) && make install-xen DESTDIR=$(BUILDROOT) +endef