Backports
bp-ept-update-aa9114edd97b292cd89b3616e3f2089471fd220.patch
Adds passing of vpu and domain for various MTRR type setting in hvm_msr_write_intercept(). Also added EXIT_REASON_EPT_MISCONFIG exit handler.
HVM Support
hvmloader_print_e820.patch
Support for e820 printing.
hvmloader-vga-command-io.patch
Enable IO since VGA needs it.
hvm-pm-hibernate-s-state.patch
Changed PM1a_CNT.SLP_TYP and PM1b_CNT.SLP_TYP from 0x0 to 0x6 definition block to mach piix emulation.
hvm-pm-s-states.patch
Adds xc_set_hvm_pio() and corresponding do_hvm_op() case. Added SCI_MASK which masks off bits in PM1a_STS that can generate an SCI. Added int pm_pio_set().
hvm-rtc.patch
Updates guest domains real-time clock
hvm-rtc-refresh-time.patch
Refreshes current time via gmtime()
General/Graphic Pass-Through
gpt-igd-hp-resume-workaround.patch
workaround host S3 resume issue on HP laptops. Turns out saving iGfx bars during iommu suspend and restoring them in iommu resume will fix the hang/reset during host resume on HP laptops. Following does that as a fallback on systems that doesn't have the firmware fix to save/restore iGfx bars.
gpt-iommu-mapping.patch
Add hypercalls for iommu mapping (iommu_map_batch, iommu_x_mapping).
gpt-nvidia.patch
For NVIDIA VGA cards load std vga BIOS image
gpt-quiet-log.patch
comments out print statement
gpt-s3-resume-reason.patch
Set power button status (necessary for proper win32 resume). Additionally,set rsm/wak_sts bit. set rsm/wak_sts bit.
gpt-superblanker.patch
16M for superblanker FB. e820 address = 0xfd000000, type = E820_RESERVED.
ACPI emulation/ pass-through
acpi-no-hotplug.patch
Remove pci hotplug from ACPI DSDT tables (_EJ0).
prune-acpi-devices.patch
Comments out name decoding for FD and SPKR.
prune-vga-acpi-dev.patch
(Presumably) removed support for VGA S3 suspend/resume work in Windows XP/2003.
qemu-acpi-tables.patch
Makefile lists qemu_utils.c as source file. "Fixes" up ACPI headers. Added population of Qemu tables.
Hypercalls
xc-xt-allow-pat-cacheattrs-for-all-domains.patch
Allows PAT cache attributes for all domains.
xc-xt-aperture-map.patch
Add an hypercall to map guest pages within an aperture in its own address space (modifying the p2m).
xc-xt-cpuid.patch
Make cpuid ours: Hide core/HT topology, make vcpu appear as multicores, leave FEATURE_MWAIT, put our signature.
xc-xt-ept-respect-cacheattr-pin.patch
Ignore PAT memory type for cache-pinned pages.
xc-xt-foreign-batch-cacheattr.patch
Implement translation of a list of gpfn to a list of mfn in new hypercalls: XENMEM_translate_gpfn_list & XENMEM_release_mfn_list. Typically used to get framebuffer's mfns of the gpfns we receive from the graphic emulation (ioemu/xengfx).
xc-xt-hvm-get-time.patch
Add HVMOP_get_time handler to xenctrl library. add_hvmop_get_time_to_xc_tools.
xc-xt-hvm-info.patch
Primitive tool for our toolstack to report VTd/VTx handling.
xc-xt-hvmloader-legacy-seabios-optionroms.patch
Removed seabios-dir from Makefile subdirectory list. Added seabios_load_roms()
xc-xt-hvmloader-move-reservation-area.patch
Moved reserved memory area end from 0xFE000000 to 0xFD000000.
xc-xt-interrupt-debug-info.patch
Dumps LAPICs and IOAPICs status of HVM domains in key-handle 'i' ("dump interrupt bindings"). fix-irq-debug-key, dump-lapic.
xc-xt-isa-irq-guest-binding.patch
Add ISA IRQ binding capability for guests. isa-irq-guest-binding.
xc-xt-local-pxe-rom.patch
Makefile change to accomodate for local PXE ROM.
xc-xt-opt-disable-vmcs-shadowing.patch
Optionally disable VMCS shadowing.
xc-xt-parse-video-from-mbi.patch
Read the VBE from Multiboot information table given by the bootloader.
parse-video-from-mbi.
xc-xt-set-servicevm.patch
Add set_xcisrv hypercall for dom0 to declare a VM as service VM (restricted privileges).
xc-xt-shadow-op-blow-tables.patch
Add an hypercall to blow shadow tables of a domain (unpining them before if necessary).
xc-xt-tboot-shutdown-disable-irqs.patch
tboot_shutdown is disabling interrupts a bit early. tboot-shutdown-disable-irqs.
xc-xt-tools-v3-mapspace-workaround.patch
Defines XENMAPSPACE_gmfn_range to 100 (prev 3). Apparently to accomodate for bug in old XT tools. Thus, XENMAPSPACE_gmfn_range has to be moved to another ID.
xc-xt-txt-shutdown-acpi-access-width.patch
Fixes incorrect ACPI tables on some Dell platforms (980) that corrupt power operations with TXT enabled.
xc-xt-unmap-shared-info.patch
Add a way for XENMAPSPACE_shared_info hypercall to unmap the shared info page (used before going S4).
xc-xt-v4v.patch
V4V, domain to domain communication protocol, through __HYPERVISOR_v4v_op hypercall (V4V, V4V_Hypervisor_API).
xc-xt-v4v-viptables.patch
V4V implementation of viptables to filter traffic.
xc-xt-vcpu-get-time.patch
Add VCPUOP_get_time to make NOW() macro available in PV guests.
xc-xt-xenconsoled-syslog.patch
An ugly way to make xenconsoled log into syslog.
xc-xt-xenstore-use-pthread-always.patch
Force libpthread as libxenstore does not work without it.
xc-xt-xen-translate.patch
Implement translation of a list of gpfn to a list of mfn in new hypercalls: XENMEM_translate_gpfn_list & XENMEM_release_mfn_list. Typically used to get framebuffer's mfns of the gpfns we receive from the graphic emulation (ioemu/xengfx).
Xen Security Modules
flask-bool-utility-fix.patch
Check to see if hypercall to bounce memory for flask op hypercall succeeded.
flask-persist-booleans.patch
Added XSM_BOOLEAN_CONFIG_PATH. Used to write to persistent boolean file.
xsm-add-corespersocket.patch
Added handling for adding cores on a socket basis (and its check for privileges).
Block Tap Patches
blktap2-multi-coalesce.patch
Huge patch. Added functionality to read from VHDs. This thing is huge.
blktap2-vci.patch
This is huge as well. Lots of handling special cases for Windows.
blktap-instrumentation.patch
Tapdisk control instrumentation such as read(), write(), select().
blktap-quieten-udevd.patch
xen-backend.rules changed to use a SYMLINK="xen/%k", MODE now deprecated.
blktap-resume-fix.patch
Re-create the tapdisk driver stack as the path may have changed upon resume.
blktap-retry-fix.patch
Changed vreq->blocked = treq.blocked; to vreq->blocked |= treq.blocked;
blktap-timeout.patch
Added TAPCTL_SERVER_TIMEOUT to tap_ctl_connect_send_and_receive() [Currently 120].
BIOS Patches
bios-signature.patch
Fetch BIOS signature data passed by QEMU if any. Write required BIOS signature to BIOS text segment. Add any required BIOS signature. Add MP tables.
bios-uuid.patch
Added hypercall to set/get UUID for domains.
Misc Patches
10ms_timeslice.patch
changes the timeslice to 10ms from previously 30ms.
add-command-line-option-to-disable-arat.patch
Added command line option to force ARAT (Always Running APIC TIMER) to off.
add-percentages-to-xenpm.patch
Added eprcent-wise printing in print_cx_stat().
add_system_time_timestamps.patch
console_us_timestamps: include a microsecond (us) timestamp prefix on every Xen console line.
cpufreq_gov_stop_avoid_panic.patch
Checking for if this domain info enables CPUFREQ_GOV_STOP. If so, the timer exits.
crash_flag_hypercall.patch
Adds crash flag to hypercalls.
dom0_auto_mem.patch
Added maximum increase amount of pages for dom0.
evtchn-do-not-set-pending-if-s3.patch
If domain is in S3 it will miss the notification, so check here.
fix-32bit-xsm-interface.patch
Added XEN_GUEST_HANDLE and its 64-bit equivalent.
fix-memcpy-in-x86-emulate.patch
Routine to make __hvm_copy appropriate to use for copying the results of instruction emulation back to guest memory - these typically require 64-bit, 32-bit and 16-bit writes to be atomic whereas memcpy is only atomic for 64-bit writes. This is still not 100% correct since copies larger than 64-bits will not be atomic for the last 2-6 bytes but should be good enough for instruction emulation.
fix-pci-serial-hang.patch
Fix for ns16550 chipset. IO seems to be wonky for that particular set of hardware.
fix-race-between-udev-and-tapctl.patch
Fixes race condition between udev and tapctl.
fix-write-clash.patch
Added undef's for READ and WRITE to shut the compiler up.
fix-xenctrl-enum-defn.
Moved definition of enum xc_error_code from xenctrl.h.
include-seabios.patch
Includes Seabios support for HVM loader.
incremental-dmesg-processing.patch
Processing dmsg in increments.
iobitmap-on-all-vcpus.patch
Per VCPU bitmap setting.
large-remap.patch
Map into the current process the range of guest pages given by [pfn:pfn+num-1]. Mapping does not fail if some pages cannot be mapped. Instead we indicate any pages that cannot be mapped by setting the corresponding bit in err_bits.
libvhd-disable-static-batmaps.patch
Commented out all static use of VCI batmaps.
local-ipxe.patch
Patched Makefile to use local ipxe file.
microcode-info.patch
pr_debug macro defined to actually do something (i.e. printing)
publish_xentrace_formats.patch
Xentrace Makefile expanded to make its own directory and place files.
reboot-quirk-pci.patch
Added handling for rebooting over PCI. Specifically, added handling of CF9 "PCI reset register".
rmrr-validate-range.patch
Added sanity check to see if the end address is smaller than the base address. If so, print message
and return -EINVAL.
rombios-faster.patch
Changed number of BX_MAX_ATA_INTERFACES from 4 to two and BX_MAX_ATA_DEVICES to 3.
sb_reboot_turbo_workaround.patch
Added definition for MSR_SB_TURBO_CURRENT_LIMIT to be 0x000001ac.
smbios.patch
Added "Type 7 -- Cache Information" and its associated tracing functions.
stack_on_triple_fault.patch
Added vcpu_show_execution_state(v) upon triple fault.
stubdomain-msi-irq-access.patch
Added allow/disallow functionality for stubdomains IRQ access.
tapdisk_debug.patch
Added debug logging if !BLKIF_RSP_OKAY.
tapdisk-increase-vhd-req-pool.patch
Size of vreq_free and vreq_list increased from VHD_REQS_DATA to VHD_REQS_TOTAL.
tapdisk_shutdown_recursion.patch
Added checking for shutdown in progess and signaling to try again.
vbe-lfb-addr-matches-hvmloader.patch
Moved physical address from VBE from 0xE0000000 to 0xF0000000
vhd-util-allow-resize.patch
Added VCI_CHECK_CREATOR check before VHD manipulation.
vhd-validate-size.patch
Added calculation of current VHD size, maximum is 2040GB.
workaround-nehalem-igd-vtd.patch
Workaround fixing VT-d breakage on Clarkdale integrated graphics!
xen-allow-hvm.patch
Allow HVM operation at all times, otherwise hvm_enable will be off if we boot without TBOOT and TXT is enabled in the BIOS.
xen-cpuidle-hang.patch
Added get-max-cstate regarding the current C-state limitation. Added check to verify that dom0 is NOT using RTC interrupts.
xen-libhvm.patch
Patches helepr library for reading ACPI and SMBIOS firmware values from the host system for use with the HVM guest firmware pass-through feature in Xen.
xenstored-instrumentation.patch
Ignore noisy messages unless verbose specified.
xentrace-format-handle-zero-tsc.patch
Use last TSC of none provided. Also, during initialization, take reltsc into account rather than just dividing by 1M.