aboutsummaryrefslogtreecommitdiffstats
path: root/stubdom
Commit message (Collapse)AuthorAgeFilesLines
* libxc: eliminate static variables, use xentoollog; API changeKeir Fraser2010-05-281-6/+6
| | | | | | | | | | | | | | | | | | | | This patch eliminate the global variables in libxenctrl (used for logging and error reporting). Instead the information which was in the global variables is now in a new xc_interface* opaque structure, which xc_interface open returns instead of the raw file descriptor; furthermore, logging is done via xentoollog. There are three new parameters to xc_interface_open to control the logging, but existing callers can just pass "0" for all three to get the old behaviour. All libxc callers have been adjusted accordingly. Also update QEMU_TAG for corresponding qemu change. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* stubdom/newlib: Provide correct names for time.h timezone variablesKeir Fraser2010-05-281-0/+2
| | | | | | | | | | Newlib unaccountably defines _daylight, _timezone and _tzname, rather than daylight, timezone and tzname. The latter are specified in SuSv3. So do a global search and replace as part of our newlib patching :-(. Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
* pv-grub: fix boot crash when no fb is availableKeir Fraser2010-04-061-6/+4
| | | | | | | | When no fb is available, init_fbfront will return, so the local semaphore for synchronization with the kbd thread would get dropped. Using a global static semaphore instead fixes this. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* PV-GRUB: Fix gzip support and iso support on x86_64Keir Fraser2010-03-081-0/+67
| | | | Signed-off-by: Samuel Thibault <sthibault@debian.org>
* Fix Makefile targets that generate several files at onceKeir Fraser2010-03-051-1/+3
| | | | | | | | | | | | | | | | | | | | In a few places in the tree the Makefiles have constructs like this: one_file another_file: $(COMMAND_WHICH_GENERATES_BOTH_AT_ONCE) This is wrong, because make will run _two copies_ of the same command at once. This generally causes races and hard-to-reproduce build failures. Notably, `make -j4' at the top level will build stubdom libxc twice simultaneously! In this patch we replace the occurrences of this construct with the correct idiom: one_file: another_file another_file: $(COMMAND_WHICH_GENERATES_BOTH_AT_ONCE) Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* [PV-GRUB DOC] Add details to PV-GRUB documentationKeir Fraser2010-03-051-2/+15
| | | | | | | | | Add a couple of documentation details about PV-GRUB support - the menu.lst content can be passed as a ramdisk. - virtual partitions are not supported. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* domain builder: multiboot-like module supportKeir Fraser2009-12-114-11/+79
| | | | | | | | | This defines how multiple modules can be passed to a domain by packing them together into a "multiboot module" in a way very similar to the multiboot standard. An SIF_ flag is added to announce such package. This also adds a packing implementation to PV-GRUB. Signed-Off-By: Samuel Thibault <samuel.thibault@ens-lyon.org>
* pcifront: fix multiple initialization bugKeir Fraser2009-11-231-3/+1
| | | | | | | | | Now that we have pcifront_watches to dynamically initialize pcifront we don't need a call to init_pcifront in pcilib and pcifront_scan anymore; we should just wait for the frontend to connect to the backend instead. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: Fix up pciutils.patchKeir Fraser2009-11-131-1/+1
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* pcifront: implement dynamic connections and disconnectionsKeir Fraser2009-11-131-20/+7
| | | | | | | | | | this patch implements dynamic connections and disconnections in pcifront. This feature is required to properly support pci hotplug, because when no pci devices are assigned to a guest, xend will remove the pci backend altogether. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: make stubdom-dm exit properlyKeir Fraser2009-10-291-6/+5
| | | | | | | | | | | | The built-in bash command wait should be able to take a pid argument and just wait for the specified process to die, but it currently has a bug and what actually does is waiting for the death of all the children. For this reason the stubdom-dm script doesn't exit properly after stubdom destruction. This patch solves the issue spawning only one child, removing the sleep subprocess workaround that was used to create a usable stdin for "xm console" and replacing it with a fifo. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* xend: destroy stubdoms synchronouslyKeir Fraser2009-10-151-6/+2
| | | | | | | | | This patch makes the destruction of stubdoms a synchronous event, therefore it is no longer possible to run out of memory when rebooting a guest because the stubdom of the old guest is always destroyed before the creation of the new guest. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom pcilib: define endianness for miniosKeir Fraser2009-10-141-0/+14
| | | | | | Include endian.h for MiniOS. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: Backport fix for SIZE_MAX from newlib 1.17.0Keir Fraser2009-08-252-0/+17
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* stubdoms: parse bridge informationsKeir Fraser2009-08-161-1/+8
| | | | | | | | | | Currently the stubdom-dm script doesn't read the bridge of a vif on xenstore, therefore all the vifs assigned to the stubdom always belong to default bridge. This patch changes the behavior reading the bridge from xenstore and adding the bridge to the stubdom config file. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* libxc: Include private Xen headers in stubdom libxc buildKeir Fraser2009-08-111-0/+1
| | | | | | | | | The headers libelf.h and elfstructs.h were removed from xen/include/public in 19011:7df072566b8c. But this broke the stubdom build because parts of libxc depend on them. This patch adds $(XEN_ROOT)/xen/include/xen to the stubdom -I path. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* stubdom: update README as no reason to specify absolute pathsKeir Fraser2009-07-231-4/+4
| | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdom: make -> $(MAKE)Keir Fraser2009-07-151-1/+1
| | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdom: don't leak include dir on distcleanKeir Fraser2009-07-151-0/+1
| | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* minios: switch to C99 integer typesKeir Fraser2009-07-151-10/+10
| | | | | | This is a necessary step to make minios build on NetBSD. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdom: fix stubdom-dm error pathKeir Fraser2009-07-141-2/+2
| | | | | | Exit the shell and not a subshell. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdom: Install and use stubdompath.shKeir Fraser2009-07-132-8/+8
| | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdom: Fix stubdom-dm after c/s 19818Keir Fraser2009-07-101-1/+2
| | | | | | | | | | | 19818 added the following line to stubdom-dm: . ./stubdompath.sh and replaced many paths with variables. However the path to stubdompath.sh is obviously wrong and stubdompath.sh is nowhere to be found anyway. For the moment I am dropping . ./stubdompath.sh and hardcoding the values of the variables. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: fix a race that affects live migration with stubdomsKeir Fraser2009-07-081-1/+1
| | | | | | | | | | | This patch fixes a race during live migration with stubdoms: right after the stubdom dies the configuration file of the VM is removed by stubdom-dm but, in case of a live migration, the configuration file could be the one of the new VM in the process of being created. Removing the config file before destroying the stubdom is enough to solve the race. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: use XENFIRMWAREDIRKeir Fraser2009-06-251-4/+4
| | | | | | | Attached patch installs ioemu-stubdom into XENFIRMWAREDIR analogous to what we do with hvmloader. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* Get rid of hardcoded pathes for stubdom and hotplug scriptsKeir Fraser2009-06-232-17/+24
| | | | | | | | | | | | | | | | | | - Have the buid system generate a file which exports the install paths for the hotplug scripts and stubdom / stubdom-dm - Move file generation code from tools/python/Makefile into a gmake macro in Config.mk to avoid maintenance of three duplicates each with its own tweaks and bugs - Export gmake variables into ioemu as shell variables for upcoming ioemu patches - Do above as a gmake macro to avoid maintenance of several duplicates - Adjust hotplug scripts to find the right xen binaries from the install directory - Adjust stubdom-dm to use the install directories Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdoms: qemu monitor supportKeir Fraser2009-06-181-0/+5
| | | | | | | | | | Add support for the qemu monitor in a stubdom, the same way the emulated serial support was added few days ago. The stubdom exports the monitor as a pty and minios opens a console frontend; qemu in dom0 provides the correspondent backend for this additional pv console that happens to be the qemu monitor. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* minios: support secondary guest consoles.Keir Fraser2009-06-171-2/+2
| | | | Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* xend: support multiple consoles per domainKeir Fraser2009-06-161-0/+5
| | | | Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: 'file' based disk sharingKeir Fraser2009-05-261-4/+0
| | | | | | | | | | Allow 'file' based disks, that are blkback based disks, to be shared between the guest domain and the stubdom. It does so exploiting the same exception introduced in the previous patch "stubdoms phy disks sharing". Now we can remove the hack in stubdom-dm that forces "file" disks to be opened using blktap instead of blkback. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: Rebuild the ocaml runtime libraries with the options neededKeir Fraser2009-05-193-7/+61
| | | | | | | | | if they are to be linked with object files created by ocamlc and the minios kernel. This is needed to build stubdoms written in ocaml. Signed-off-by: Alex Zeffertt <alex.zeffertt@eu.citrix.com>
* ioemu: Export PREFIX variable to ioemu build environment.Keir Fraser2009-05-191-0/+2
| | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* stubdom docs: Update to reflect the new way of configuring stubdom domains.Keir Fraser2009-05-111-58/+2
| | | | Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdoms: handle cdrom devices in the config fileKeir Fraser2009-04-231-1/+3
| | | | Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: drop lwip supportKeir Fraser2009-04-231-15/+2
| | | | | | | | | | | | | | | | | | | | Network support is still provided the same way: using the tap interface, created in qemu using netfront. The lwip stack is still available to avoid additional compilation issues. However the stubdom is not going to have its own vif anymore, this means that the only vnc server supported is the one in dom0. You can still enable the vnc server in a stubdom at compile time, if you want so. Probably the most important change caused by this patch to xen users is that you don't have to specify two vif in the stubdom config file anymore, but just one: -vif = [ '', 'ip=10.0.1.1,mac=aa:00:00:12:23:34'] +vif = ['ip=10.0.1.1,mac=aa:00:00:12:23:34'] Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdoms: generate stubdom config fileKeir Fraser2009-04-231-9/+71
| | | | | | | | | | | | | | | | | | This patch removes the need for a second configuration file for stubdoms: it is going to be automatically generated by the script stubdom-dm using command line options and xenstore to find any needed information. The configuration script will be placed under /etc/xen/stubdoms and automatically removed when the domain is destroyed. The only change needed in xend is not to write on xenstore sdl, opengl and serial command line options for qemu, because stubdoms do not support them. It is safe to remove those two options from xenstore because qemu does not use xenstore to read commans line options. Finally this patch fixes blkfront disconnections from backends and display and xauthority variables for pv guests. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: Fix newlib-chk.patch so it appliesKeir Fraser2009-04-011-12/+8
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* stubdom: Add newlib-chk.patchKeir Fraser2009-03-311-0/+159
| | | | | From: "George S. Coker, II" <gscoker@alpha.ncsc.mil> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* minios: _chk_fail and _chk canaries for minios and newlibKeir Fraser2009-03-311-0/+1
| | | | | | | | Add __stack_chk_fail to mini-os and __sprintf_chk __fprintf_chk to newlib, to cope with ocaml runtimes compiled with -fstack-protector. From: "George S. Coker, II" <gscoker@alpha.ncsc.mil> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* build system cleanup - get rid of some hardcoded pathsKeir Fraser2009-03-191-6/+6
| | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* ioemu-stubdom: Use xen-setup-stubdom rather than configureKeir Fraser2009-03-181-4/+6
| | | | | | | | | | | | | | xen-setup runs the upstream configure script, and ends up autodetecting various properties of the host and then trying to use them in stubdom, which works badly. In commit c609854fe18aab3216f28e1e5291b75970d398d5 in qemu-xen-unstable we provide a new `xen-setup-stubdom' script, which hardcodes the relevant answers. With these two changes, stubdom should compile again. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* Make stubdom compile on systems with libvde installedKeir Fraser2009-03-171-1/+1
| | | | | | | We need to disable libvde in the stubdom qemu-xen configuration. Thanks to Jun Koi for the report and testing. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* stubdom: add videoram to stubdom initial memory reservationKeir Fraser2009-01-291-1/+6
| | | | | | | | | | | This patch adds a videoram parameter (4MB is the default) to pv guests too: if the pv guest is actually a stubdomain then the videoram size is added to the initial required available memory. This way there is no risk that a stubdom fails to populate the videoram because the RAM freed for the videoram by dom0 has already been used to create the stubdom. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* documentation: how to disable opengl for stubdomainsKeir Fraser2009-01-141-0/+5
| | | | Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: Fix compilation after libelf header changesKeir Fraser2009-01-091-0/+1
| | | | | | | | | | | Changeset 19011:7df072566b8c moved some of the libelf headers. However, no changes were made to stubdom/Makefile. stubdom/Makefile unfortunately contains embedded in it knowledge about the header directory structures, and must therefore typically be updated if new header directories are created. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* Download external tarballs from xenbits.xensource.comKeir Fraser2009-01-051-5/+15
| | | | | | | | | | | | | | I have copied the tarballs that the xen-unstable build downloads to xenbits.xensource.com (which also hosts our hg and git). This patch changes the download URLs to use that location. That way the build will depend on only one external machine, under one administration, rather than many. Also it means that the build won't break if these sites become permanently unavailable or are rearranged and we don't run a risk of having to panic and beg if a file should go missing. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* pvgrub: value returned by getrtsecs should be BCDKeir Fraser2008-12-011-1/+1
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* Add documentation on how to build one's own stub domain kernelKeir Fraser2008-10-141-0/+18
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* pvgrub: Allow to work with a partitionless virtual disc.Keir Fraser2008-09-181-0/+72
| | | | | | From: Bastian Blank <bastian@waldi.eu.org> Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* Remove internal tools/ioemu tree.Keir Fraser2008-09-181-16/+0
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>