aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* libxc/NetBSD: return ioctl return value on errorRoger Pau Monne2012-01-191-1/+1
| | | | | | | | | | | NetBSD libxc hypercall implementation was returning -errno on error, instead of the actual error value from ioctl. Returning error is easier to understand, and the caller can always check errno. Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu> Acked-by: Ian Campbell <ian.campbell.com> Committed-by: Ian Jackson <ian.jackson.citrix.com> Reported-by: Olaf Hering <olaf@aepfle.de>
* libxc: add comment to why NetBSD return hypercall->retvalRoger Pau Monne2012-01-191-0/+6
| | | | | | | | | | Added a comment that explains why NetBSD return hypercall->retval on success. Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu> Acked-by: Ian Campbell <ian.campbell.com> Committed-by: Ian Jackson <ian.jackson.citrix.com> Reported-by: Olaf Hering <olaf@aepfle.de>
* libxl: Fix yajl-related build error due to missing error valueAllen Kay2012-02-201-1/+1
| | | | | | | | | Some versions of yajl lack yajl_gen_no_buf. Signed-off-by: Allen Kay <allen.m.kay@intel.com> Tested-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* QEMU_TAG updateIan Jackson2012-02-201-3/+3
|
* xenpaging: mmap guest pages read-onlyOlaf Hering2012-02-201-1/+1
| | | | | | | | | xenpaging does not write to the gfn, so map the gfn to page-out in read-only mode. Signed-off-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* arm: fix indentation level in startup_cpu_idle_loopIan Campbell2012-02-171-7/+7
| | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* x86/mm: Make sure the event channel is released accuratelyKaixing Hong2012-02-171-0/+3
| | | | | | | | | | | | | | | | In xenpaging source code,there is an interdomain communication between dom0 and domU. In mem_event_enable(),the function alloc_unbound_xen_event_channel() allocates a free port for domU, and then it will be bound with dom0. When xenpaging tears down,it just frees dom0's event channel port by xc_evtchn_unbind(), leaves domU's port still occupied. So we add the patch to free domU's port when xenpaging exits. We need double free interdomain eventchannel. First free domainU port, and leave domain 0 port unbond, Then free domain 0 port. Signed-off-by: Kaixing Hong <hongkaixing@huawei.com>, Signed-off-by: Zhen Shi <bicky.shi@huawei.com> Acked-by: Olaf Hering <olaf@aepfle.de> Committed-by: Tim Deegan <tim@xen.org>
* x86/mm: Fix two PAE+paging bugsAndres Lagar-Cavilla2012-02-162-4/+14
| | | | | | | | | | | | In hap_paging_update_modes, we were getting the gpa of the cr3, rather than the gfn. Vmx_load_pdptrs was crashing the host if the cr3 is paged out. Now it will only crash the guest. Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org> Signed-off-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
* x86/mm: Check sharing/paging/access have been enabled before processing a memopAndres Lagar-Cavilla2012-02-164-3/+11
| | | | | | Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
* x86/mm: Fix more ballooning+paging and ballooning+sharing bugsAndres Lagar-Cavilla2012-02-162-3/+21
| | | | | | | | | | | | | | | If the guest balloons away a page that has been nominated for paging but not yet paged out, we fix: - Send EVICT_FAIL flag in the event to the pager - Do not leak the underlying page If the page was shared, we were not: - properly refreshing the mfn to balloon after the unshare. - unlocking the p2m on the error exit case Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
* x86/mm: Make asserts on types and counts of shared pages more accurateTim Deegan2012-02-162-3/+9
| | | | | | Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org> Signed-off-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
* replace bogus gdprintk() uses with {,d}printk()Jan Beulich2012-02-1613-113/+123
| | | | | | | | | | | When the subject domain is not the current one (e.g. during domctl or HVM save/restore handling), use of gdprintk() is questionable at best, as it won't give the intended information on what domain is affected. Use plain printk() or dprintk() instead, but keep things (mostly) as guest messages by using XENLOG_G_*. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
* arm: Group remaining dummy symbols somewhat according to functionalityIan Campbell2012-02-151-28/+41
| | | | | | | | | Makes it easier to see what needs to be done. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: define max_pageIan Campbell2012-02-153-1/+4
| | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: stub out PoD related p2m functionsIan Campbell2012-02-152-2/+14
| | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* xen: make need_iommu == 0 if !HAS_PASSTHROUGHIan Campbell2012-02-153-2/+7
| | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: keir@xen.org Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: Implement arch_get_xen_capsIan Campbell2012-02-153-1/+13
| | | | | | | | | | TBD: correct arch name for this string. Should be "xen-" / "hvm-" or something else given the hybrid model we are using on ARM? Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: provide dummy version of steal_page for tmem.Ian Campbell2012-02-152-1/+6
| | | | | | | | | This is how IA64 does it. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* PM: only include XEN_SYSCTL_{get_pmstat,pm_op} if HAVE_ACPIIan Campbell2012-02-153-2/+3
| | | | | | | | | These hypercalls are currently ACPI specific and implemented in xen/drivers/acpi which is not implemented on ARM. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: keir@xen.org Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: Add stub functions instead of using DUMMYIan Campbell2012-02-156-4/+68
| | | | | | | | | Adds stubs for arch domctl and sysctl plus vcpu_op and memory_op. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: remove some unnecessary symbols from dummy.SIan Campbell2012-02-151-7/+1
| | | | | | | | | Correct the comment on the DUMMY macro. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: align some register bit definitionsIan Campbell2012-02-151-40/+40
| | | | | | | | | Probably got de-hard-tabbed at some point. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: define some more cp15 registersIan Campbell2012-02-152-0/+35
| | | | | | | | | | Complete the set of cache flush and add processor feature registers. Print the latter on boot for debug. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: add a missing local-vars commentIan Campbell2012-02-151-0/+9
| | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* arm: Set XEN_COMPILE_ARCH correctly from "uname -m" on ARMIan Campbell2012-02-151-1/+1
| | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
* x86: don't allow Dom0 to map MSI-X table writablyJan Beulich2012-02-151-1/+1
| | | | | | | | | | | | | | With the traditional qemu tree fixed to not use PROT_WRITE anymore in the mmap() call for this region, and with the upstream qemu tree not being capable of handling passthrough, yet, there's no need to treat Dom specially here anymore. This continues to leave unaddressed the case where PV guests map the MSI-X table page(s) before setting up the first MSI-X interrupt (see the original c/s 22182:68cc3c514a0a description for options). Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
* arm: fixup hard tabsIan Campbell2012-02-1321-1605/+1605
| | | | | | | | | | | | | | Unfortunately the tool I was using to apply patches mangles hard tabs. This patch corrects this in the effected files (which is fortunately only a subset of .S or files imported from Linux). This commit fixes this error such that the tree represents the state it would have been in had I correctly committed what I was sent. "git diff" and "git diff -b" vs. Stefano's v6 branch now contain the same output -- i.e. only the intervening development Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
* tools: make qemu build use correct PYTHON versionChristoph Egger2012-02-131-0/+1
| | | | | | | | | | Pass --python=$(PYTHON) to qemu's configure. Fixes error: Python not found. Use --python=/path/to/python Signed-off-by: Christoph Egger <Christoph.Egger@amd.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* xl: Add defaultbridge config option for xl.confStefan Bader2012-02-134-0/+16
| | | | | | | | | | | | | | Currently guests created with the xl stack will have "xenbr0" written as their default into xenstore. It can be changed in the individual guest config files, but there is no way to have that default globally changed. Add a config option to xl.conf that allows to have a different default bridge name. Signed-off-by: Stefan Bader <stefan.bader@canonical.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* tools: only compile libfsimage/xfs on X86Ian Campbell2012-02-131-1/+2
| | | | | | | xfs is not portable, only compile it on X86 Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* blktap2/libvhd: Build shared objects using -fPIC.Ian Campbell2012-02-131-4/+9
| | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* QEMU_TAG updateIan Jackson2012-02-131-3/+3
|
* xl: Add -F to usage for xl shutdown/rebootIan Campbell2012-02-131-2/+9
| | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* xl: remove duplicate lineZhigang Wang2012-02-131-2/+0
| | | | | | Signed-off-by: Zhigang Wang <zhigang.x.wang@oracle.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
* arm: setup MM using information from the device treeDavid Vrabel2012-02-137-39/+107
| | | | | | | | | | | Setup memory management, heaps etc. using the location and size of the first memory bank given in the device tree. The DTB is also copied so it can be used afterwards. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <ian.campbell@citrix.com>
* arm, device tree: parse the DTB for RAM location and sizeDavid Vrabel2012-02-136-4/+228
| | | | | | | | | | | | Prior to setting up the page tables, parse the DTB for the location and size of RAM. Use this information to get the physical address to relocate Xen to in setup_pagetables(). Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <ian.campbell@citrix.com>
* arm: add early_printk()David Vrabel2012-02-133-0/+100
| | | | | | | | | Add early_printk() which can be used before setup_pagetables(). This will be used when doing the early parsing of the DTB. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <ian.campbell@citrix.com>
* arm: map device tree blob in initial page tablesDavid Vrabel2012-02-133-2/+18
| | | | | | | | | | | | | Add a mapping for the device tree blob in the initial page tables. This will allow the DTB to be parsed for memory information prior to setting up the real page tables. It is mapped into the first L2 slot after the fixmap. When this slot is reused in setup_pagetables(), flush the TLB. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <ian.campbell@citrix.com>
* arm: link a device tree blob into the xen imageDavid Vrabel2012-02-135-1/+26
| | | | | | | | | | | | | Link a device tree blob (DTB) into the xen image. This is loaded immediately after Xen and xen_start() is called with the correct address in atag_paddr. The DTB file must be supplied by setting the CONFIG_DTB_FILE variable in .config or on the make command line. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Ian Campbell <ian.campbell@citrix.com>
* arm: few missing #defineStefano Stabellini2012-02-132-0/+5
| | | | | | | | | | Few missing #define are the cause of a compile failure with XEN_TARGET_ARM=arm and XEN_COMPILE_ARM=arm (for example in the case of a native compilation). This patch fill the gaps. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Committed-by: Ian Campbell <ian.campbell@citrix.com>
* libfdt: add to buildDavid Vrabel2012-02-133-0/+8
| | | | | | Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Keir Fraser <keir@xen.org>
* libfdt: fixup libfdt_env.h for xenDavid Vrabel2012-02-132-17/+12
| | | | | | Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Keir Fraser <keir@xen.org>
* libfdt: add version 1.3.0David Vrabel2012-02-1313-0/+3211
| | | | | | | | | | | Add libfdt 1.3.0 from http://git.jdl.com/gitweb/?p=dtc.git This will be used by Xen to parse the DTBs provided by bootloaders on ARM platforms. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Keir Fraser <keir@xen.org>
* MAINTAINERS: Add entry for ARM w/ virt extensions portIan Campbell2012-02-131-0/+9
| | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Committed-by: Keir Fraser <keir@xen.org>
* firmware: Introduce CONFIG_ROMBIOS and CONFIG_SEABIOS optionsJulian Pidancet2012-02-133-21/+32
| | | | | | | | | | | | | | | | | | | This patch introduces configuration options allowing to built either a rombios only or a seabios only hvmloader. Building option ROMs like vgabios or etherboot is only enabled for a rombios hvmloader, since SeaBIOS takes care or extracting option ROMs itself from the PCI devices (these option ROMs are provided by the device model and do not need to be built in hvmloader). The Makefile in tools/firmware/ now only checks for bcc if rombios is enabled. These two configuration options are left on by default to remain compatible. Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com> Acked-by: Ian Campbell <ian.campbell@citrix.com>
* hvmloader: Move option ROM loading into a separate optionnal fileJulian Pidancet2012-02-137-228/+259
| | | | | | | | | | | | Make load_rom field in struct bios_config an optionnal callback rather than a boolean value. It allow BIOS specific code to implement it's own option ROM loading methods. Facilities to scan PCI devices, extract an deploy ROMs are moved into a separate file that can be compiled optionnaly. Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com> Acked-by: Ian Campbell <ian.campbell@citrix.com>
* firmware: Use mkhex from hvmloader directory for etherboot ROMsJulian Pidancet2012-02-134-15/+11
| | | | | | | | | | | | | To remain consistent with how other ROMs are built into hvmloader, call mkhex on etherboot ROMs from the hvmloader directory, instead of the etherboot directory. In other words, eb-roms.h is not used any more. Introduce ETHERBOOT_NICS config option to choose which ROMs should be built (kept rtl8139 and 8086100e per default as before). Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com> Acked-by: Ian Campbell <ian.campbell@citrix.com>
* hvmloader: Allow the mkhex command to take several file argumentsJulian Pidancet2012-02-131-1/+2
| | | | | Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com> Acked-by: Ian Campbell <ian.campbell@citrix.com>
* hvmloader: Only compile 32bitbios_support.c when rombios is enabledJulian Pidancet2012-02-131-2/+2
| | | | | | | | | 32bitbios_support.c only contains code specific to rombios, and should not be built-in when building hvmloader for SeaBIOS only (as for rombios.c). Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com> Acked-by: Ian Campbell <ian.campbell@citrix.com>
* x86/vMCE: MC{G,i}_CTL handling adjustmentsJan Beulich2012-02-133-10/+10
| | | | | | | | | | | - g_mcg_cap was read to determine whether MCG_CTL exists before it got initialized - h_mci_ctrl[] and dom_vmce()->mci_ctl[] both got initialized via memset() with an inappropriate size (hence causing a [minor?] information leak) Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>