ia64/xen-unstable

view README @ 9488:0a6f5527ca4b

[IA64] set itv handoff as masked and enable reading irr[0-3]

Set initial vcpu itv handoff state to mask the timer vector.
This seems to match hardware and makes logical sense from a
spurious interrupt perspective. Enable vcpu_get_irr[0-3]
functions as they seem to work and have the proper backing.
This enables the check_sal_cache_flush() in arch/ia64/kernel.sal.c
to work unmodified, allowing us to remove the Xen changes from
the file (and thus the file from the sparse tree).

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
author awilliam@xenbuild.aw
date Tue Apr 04 09:39:45 2006 -0600 (2006-04-04)
parents 757218700a40
children 591555bc4acb
line source
1 ################################
2 __ __ _____ ___
3 \ \/ /___ _ __ |___ / / _ \
4 \ // _ \ '_ \ |_ \| | | |
5 / \ __/ | | | ___) | |_| |
6 /_/\_\___|_| |_| |____(_)___/
8 ################################
10 http://www.xensource.com/xen/about.html
12 What is Xen?
13 ============
15 Xen is a Virtual Machine Monitor (VMM) originally developed by the
16 Systems Research Group of the University of Cambridge Computer
17 Laboratory, as part of the UK-EPSRC funded XenoServers project. Xen
18 is freely-distributable Open Source software, released under the GNU
19 GPL. Since its initial public release, Xen has grown a large
20 development community, spearheaded by XenSource Inc, a company created
21 by the original Xen development team to build enterprise products
22 around Xen.
24 The 3.0 release offers excellent performance, hardware support and
25 enterprise-grade features such as x86_32-PAE, x86_64, SMP guests and
26 live relocation of VMs. This install tree contains source for a Linux
27 2.6 guest; ports to Linux 2.4, NetBSD, FreeBSD and Solaris will follow
28 later (and are already available for previous Xen releases).
30 This file contains some quick-start instructions to install Xen on
31 your system. For full documentation, see the Xen User Manual. If this
32 is a pre-built release then you can find the manual at:
33 dist/install/usr/share/doc/xen/pdf/user.pdf
34 If you have a source release, then 'make -C docs' will build the
35 manual at docs/pdf/user.pdf.
37 Quick-Start Guide - Pre-Built Binary Release
38 ============================================
40 [NB. Unless noted otherwise, all the following steps should be
41 performed with root privileges.]
43 1. Install the binary distribution onto your filesystem:
45 # sh ./install.sh
47 Among other things, this will install Xen and Xen-ready Linux
48 kernel files in /boot, kernel modules and Python packages in /lib,
49 and various control tools in standard 'bin' directories.
51 2. Configure your bootloader to boot Xen and an initial Linux virtual
52 machine. Note that Xen currently only works with GRUB and pxelinux
53 derived boot loaders: less common alternatives such as LILO are
54 *not* supported. You can most likely find your GRUB menu file at
55 /boot/grub/menu.lst: edit this file to include an entry like the
56 following:
58 title Xen 3.0 / XenLinux 2.6
59 kernel /boot/xen-3.0.gz console=vga
60 module /boot/vmlinuz-2.6-xen root=<root-dev> ro console=tty0
61 module /boot/initrd-2.6-xen.img
63 NB: Not all kernel configs need an initial ram disk (initrd), but
64 if you do specify one you'll need to use the 'module' grub directive
65 rather than 'initrd'.
67 The linux command line takes all the usual options, such as
68 root=<root-dev> to specify your usual root partition (e.g.,
69 /dev/hda1).
71 The Xen command line takes a number of optional arguments described
72 in the manual. The most common is 'dom0_mem=xxxM' which sets the
73 amount of memory to allocate for use by your initial virtual
74 machine (known as domain 0). Note that Xen itself reserves about
75 32MB memory for internal use, which is not available for allocation
76 to virtual machines.
78 3. Reboot your system and select the "Xen 3.0 / XenLinux 2.6" menu
79 option. After booting Xen, Linux will start and your initialisation
80 scripts should execute in the usual way.
82 Quick-Start Guide - Source Release
83 ==================================
85 First, there are a number of prerequisites for building a Xen source
86 release. Make sure you have all the following installed, either by
87 visiting the project webpage or installing a pre-built package
88 provided by your Linux distributor:
89 * GCC (preferably v3.2.x or v3.3.x; older versions are unsupported)
90 * GNU Make
91 * GNU Binutils
92 * Development install of zlib (e.g., zlib-dev)
93 * Development install of Python v2.3 or later (e.g., python-dev)
94 * bridge-utils package (/sbin/brctl)
95 * iproute package (/sbin/ip)
96 * hotplug or udev
98 [NB. Unless noted otherwise, all the following steps should be
99 performed with root privileges.]
101 1. Download and untar the source tarball file. This will be a
102 file named xen-unstable-src.tgz, or xen-$version-src.tgz.
103 You can also pull the current version from the SCMS
104 that is being used (Bitkeeper, scheduled to change shortly).
106 # tar xzf xen-unstable-src.tgz
108 Assuming you are using the unstable tree, this will
109 untar into xen-unstable. The rest of the instructions
110 use the unstable tree as an example, substitute the
111 version for unstable.
113 2. cd to xen-unstable (or whatever you sensibly rename it to).
114 The Linux, netbsd and freebsd kernel source trees are in
115 the $os-$version-xen-sparse directories.
117 On Linux:
119 3. For the very first build, or if you want to destroy existing
120 .configs and build trees, perform the following steps:
122 # make KERNELS=linux-2.6-xen world
123 # make install
125 It will create and install into the dist/ directory which is the
126 default install location. It will build the xen binary (xen.gz),
127 and a linux kernel and modules that can be used in both dom0 and an
128 unprivileged guest kernel (vmlinuz-2.6.x-xen), the tools and the
129 documentation.
131 If you don't specify KERNELS= on the make command line it will
132 default to building two kernels, vmlinuz-2.6.x-xen0 and
133 vmlinuz-2.6.x-xenU. These are smaller builds with just selected
134 modules, intended primarilly for developers that don't like to wait
135 for a -xen kernel to build. The -xenU kernel is particularly small
136 as it does not contain any physical device drivers, and hence is
137 only useful for guest domains.
139 If you want to build an x86_32 PAE capable xen and kernel to work
140 on machines with >= 4GB of memory, use XEN_TARGET_X86_PAE=y on the
141 make command line.
143 4. To rebuild an existing tree without modifying the config:
144 # make dist
146 This will build and install xen, kernels, tools, and
147 docs into the local dist/ directory.
149 5. To rebuild a kernel with a modified config:
151 # make linux-2.6-xen-config CONFIGMODE=menuconfig (or xconfig)
152 # make linux-2.6-xen-build
153 # make linux-2.6-xen-install
155 Depending on your config, you may need to use 'mkinitrd' to create
156 an initial ram disk, just like a native system e.g.
157 # depmod 2.6.12.6-xen
158 # mkinitrd -v -f --with=aacraid --with=sd_mod --with=scsi_mod initrd-2.6.12.6-xen.img 2.6.12.6-xen