[IA64] cleanup warning in xen/arch/ia64/linux-xen/time.c
Remove a wrong cleanup in xen/arch/ia64/linux-xen/time.c
itc_ratio.num and itc_ratio.den are defined u64
in xen/include/asm-ia64/linux-xen/asm/pal.h.
These are the below.
typedef struct pal_freq_ratio {
u64 den : 32, num : 32; /* numerator & denominator */
} itc_ratio, proc_ratio;
This is a port of a newer upsteam efi.c to xen/ia64. For the most
part, this patch is simply incorporating this upstream linux-ia64
patch into the tree:
To support this new code, xensetup needed to be modified to relocate
the dom0 kernel and initrd images without using efi_memmap_walk() as
this can no longer be called until after reserve_memory(). The dom0
kernel and initrd images are now only moved if necessary and the xen
MDT entry is expanded to cover the xenheap area and any relocated dom0
bits.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
[IA64] passthrough EFI_ACPI_MEMORY_NVS and EFI_RESERVED_TYPE
According to the EFI spec, firmware may describe ACPI tables loaded
at runtime in EFI_RESERVED_TYPE or EFI_ACPI_MEMORY_NVS memory ranges.
This patch adds these to the list of memory types we pass through for
dom0. This allows Xen to boot on HP Superdomes.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Here's a first pass at some sparse tree cleanups based on feedback
we've gotten on linux-ia64. I haven't taken all of the comments into
account yet, this is just a start. Specific changes:
- CONFIG_ARCH_XEN is no longer necessary
- simple is_running_on_xen() checks can be handled w/o CONFIG_XEN
- pulled forward a drivers/xen/Makefile change that broken make clean
- changed some comments from C++ style to C
- turned HYPERVISOR_ioremap into a macro for !CONFIG_XEN
- made hypervisor.h and privop.h include-able for !CONFIG_XEN
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Clean up event wait sequence in io emulation path, as a critical
fix to a severe issue where VTI domain may fall into block state
when doing bulk network transfer.
After enabling dom0_vp mode, we lost the VGA console.
The reason is that VGA frame buffer(0xa0000-0xc0000) was set
to conventional memory not IO in dom0's p2m table.
Low conventional memory ranges are also given MDT entries for
dom0 to allow Linux to properly detect whether VGA is present.
Signed-off-by: Zhang xiantao <xiantao.zhang@intel.com> Signed-off-by: Alex Williamson <alex.williamson@hp.com>
introduce vcpu_get_domain_bundle() and replace __get_domain_handle call
in priv_handle_op with it.
priv_handle_op() uses __get_domain_handle to domain's bundle.
it directly access guest ip with guest virtual address which may results
in data tlb miss which cause some trobles.
This patch also cleans up vcpu_translate().
[IA64] preparation for vga acceleration of VTI domain
This patch fixes several minor issues, as a prepare step to support VGA
acceleration for VTI domain:
- shared vram buffer needs to be mapped as WB in both sides, because
the shared vram is the true WB memory though VTI domain is told as UC
- Introduced a new pte_mem to indicate p2m entry containing valid mfn
when replace p2m entry. Pte_none doesn't work for VTI case, since IO
type is encoded into p2m entry which however doesn't contain valid mfn.
After above change, guest_physmap_add/remove_page is available to
be used by qemu to setup linear buffer for VTI domain.
The xm dmesg command wasn't taking the -c/--clear options because of
incorrect values to arg_check(). Patch simply allows for the possible
option with arg_check().
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
[VTPM_TOOLS] Updated vtpm for new release of the tpm_emulator.
New emulator includes AIK, DAA, and Transport Sessions Signed-off-by: Vinnie Scarlata <Vincent.r.scarlata@intel.com>
1. Make Mini-OS start from 0x0.
2. Fixes the pagetable builder to handle half full, but already mapped
pt frames.=20
3. Add a bounds check to ensure than Mini-OS does not try to use Xen
virtual space.
Signed-off-by: Grzegorz Milos <gm281@cam.ac.uk> Signed-off-by: Aravindh Puthiyaparambil
<aravindh.puthiyaparambil@unisys.com>
[SVM] Fix virtualization of the CPUID NX bit, and clean up other CPUID bits. Signed-off-by: Tom Woller <thomas.woller@amd.com> Signed-off-by: Wei Huang <wei.huang2@amd.com>
[ACM] Add a hypervisor call macro to the linux kernel; it
completes the alignment of the ACM call interface with the other Xen
hypervisor call interfaces. This macro is used to call from the a guest
kernel directly into the ACM hypervisor module.
Fix PAE debug builds to avoid shadowing shadow-mode pgdirs below 4GB.
The current shadow mode is not aware of this extra level of shadowing
and gets rather confused. Furthermore it *always* ensures that its
PAE pgdirs are below 4GB so there is no need for the extra shadowing
logic to be invoked.
Now xen drivers use is_running_on_xen() to check whether it runs on
xen or bare metal. There remains many if (running_on_xen) in ia64
specific codes. This patch replaces running_on_xen with is_running_on_xen()
Define halt() and safe_halt() properly for Linux-on-Xen. Remove duplicated
code for initial bringup of secondary VCPUs. Signed-off-by: Keir Fraser <keir@xensource.com>
[HVM] Fix a bug in the emulation of the xchg instruction.
This bug has prevented us from booting fully virtualized SMP guests
that write to the APIC using the xchg instruction (when
CONFIG_X86_GOOD_APIC is not set). On 32 bit platforms, sles 10 kernels
are built without CONFIG_x86_GOOD_APIC not set and hence we have had
problems booting fully virtualized SMP sles 10 guests.
Signed-off-by: K. Y. Srinivasan <ksrinivasan@novell.com>
[BALLOON] Remove the static lower bound on memory target from balloon driver.
Experimentation an discussion on xen-devel concludes that a dynamic method
for determining safe balloon size will be required. Signed-off-by: Keir Fraser <keir@xensource.com>
Fix the support for PAE pgdirs above 4GB that was introduced in
changeset 10173:954f4dea9da6336aaa35d0706aed55fde7909644. Signed-off-by: Keir Fraser <keir@xensource.com>
Fix SMP boot for kernels without CONFIG_HOTPLUG_CPU.
The function cpu_is_allowed() appears that it should return a boolean
but in fact returns zero on success and an errno on failure. Thus
rename it to the more vague cpu_up_check(), in line with its return
value and thge fact it has unspecified side effects.
Fix the macro definition of cpu_up_check() when building non-hotplug
kernel to return zero rather than one (which always failed secondary
cpu bringup!).
[PAE] Allow pgdirs above 4GB for paravirt guests.
**NOTE**: This obviates the need for lowmem_emergency_pool.
Unpriv guests no longer need to be able to allocate memory
below 4GB for PAE PDPTs. Signed-off-by: Keir Fraser <keir@xensource.com>
Cast to a signed type before negating if we really want the result to be negative.
From: Jan Beulich <jbeulich@novell.com> Signed-off-by: Keir Fraser <keir@xensource.com>
Remove net_driver_util module. Inline the one mac-parsing function
into the netfront and netback drivers. Take the opportunity to fix
the mac-parsing logic. Signed-off-by: Keir Fraser <keir@xensource.com>
[XEND] Wait sufficient time for memory to balloon out before creating a new domain.
On the ES7000 when Dom0 boots up with all of system memory and you try
to bring up a DomU with more than 2GB of memory, xend times out before
the memory is freed causing the domain not to be created. This patch
increases the timeout depending on the amount of memory that needs to be
freed. It also places a cap on the sleep time so that it does not grow
without a limit. This fixes bug# 650
[HVM] Support multiple HVM time device models coming soon.
1: Adopt an abstract layer for periodic time on top of different
HV time device models like PIT, RTC and ACPI time.
2: Extract VMM knowledge from PIT DM code and keep close with
qemu for easy maintain in future.
3: Use guest time (TSC) to drive PIT CLK that helps us to remove
a lot of extra logic previously introduced to convert from host time to
guest time.
4: Some cleanup for SMP code like move cache_tsc_offset to per VP.