SHA256
1
0
forked from pool/xen

- Update to Xen 4.1.1-rc1-pre c/s 23051

OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=121
This commit is contained in:
Charles Arnold 2011-05-17 19:49:05 +00:00 committed by Git OBS Bridge
parent 780b1a4073
commit 143ac5571f
10 changed files with 64 additions and 83 deletions

View File

@ -16,8 +16,10 @@ found set by the surrounding loop).
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Acked-by: Gang Wei <gang.wei@intel.com>
--- a/xen/arch/x86/hpet.c
+++ b/xen/arch/x86/hpet.c
Index: xen-4.1.0-testing/xen/arch/x86/hpet.c
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/hpet.c
+++ xen-4.1.0-testing/xen/arch/x86/hpet.c
@@ -34,18 +34,6 @@ struct hpet_event_channel
int shift;
s_time_t next_event;
@ -81,7 +83,7 @@ Acked-by: Gang Wei <gang.wei@intel.com>
wmb();
legacy_hpet_event.event_handler = handle_hpet_broadcast;
@@ -713,9 +700,7 @@ void hpet_broadcast_exit(void)
@@ -716,9 +703,7 @@ void hpet_broadcast_exit(void)
if ( !reprogram_timer(this_cpu(timer_deadline)) )
raise_softirq(TIMER_SOFTIRQ);

View File

@ -8,11 +8,13 @@ guest-bound irq before accessing desc->action.
Signed-off-by: Keir Fraser <keir@xen.org>
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -1022,6 +1022,12 @@ static void __pirq_guest_eoi(struct doma
if ( desc == NULL )
Index: xen-4.1.0-testing/xen/arch/x86/irq.c
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/irq.c
+++ xen-4.1.0-testing/xen/arch/x86/irq.c
@@ -1028,6 +1028,12 @@ static void __pirq_guest_eoi(struct doma
return;
}
+ if ( !(desc->status & IRQ_GUEST) )
+ {

View File

@ -27,8 +27,10 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
--- a/xen/arch/x86/apic.c
+++ b/xen/arch/x86/apic.c
Index: xen-4.1.0-testing/xen/arch/x86/apic.c
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/apic.c
+++ xen-4.1.0-testing/xen/arch/x86/apic.c
@@ -531,7 +531,7 @@ static void resume_x2apic(void)
mask_8259A();
mask_IO_APIC_setup(ioapic_entries);
@ -38,7 +40,7 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
__enable_x2apic();
restore_IO_APIC_setup(ioapic_entries);
@@ -751,7 +751,7 @@ int lapic_suspend(void)
@@ -748,7 +748,7 @@ int lapic_suspend(void)
local_irq_save(flags);
disable_local_APIC();
@ -47,7 +49,7 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
local_irq_restore(flags);
return 0;
}
@@ -997,7 +997,7 @@ void __init x2apic_bsp_setup(void)
@@ -994,7 +994,7 @@ void __init x2apic_bsp_setup(void)
mask_8259A();
mask_IO_APIC_setup(ioapic_entries);
@ -56,8 +58,10 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
{
if ( x2apic_enabled )
panic("Interrupt remapping could not be enabled while "
--- a/xen/drivers/passthrough/vtd/dmar.c
+++ b/xen/drivers/passthrough/vtd/dmar.c
Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/dmar.c
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/dmar.c
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/dmar.c
@@ -46,6 +46,7 @@ LIST_HEAD(acpi_rmrr_units);
LIST_HEAD(acpi_atsr_units);
LIST_HEAD(acpi_rhsa_units);
@ -97,8 +101,10 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
+ flags = DMAR_INTR_REMAP | DMAR_X2APIC_OPT_OUT;
+ return ((dmar_flags & flags) == DMAR_INTR_REMAP);
+}
--- a/xen/drivers/passthrough/vtd/extern.h
+++ b/xen/drivers/passthrough/vtd/extern.h
Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/extern.h
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/extern.h
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/extern.h
@@ -87,5 +87,7 @@ void vtd_ops_preamble_quirk(struct iommu
void vtd_ops_postamble_quirk(struct iommu* iommu);
void me_wifi_quirk(struct domain *domain, u8 bus, u8 devfn, int map);
@ -107,9 +113,11 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
+int platform_supports_x2apic(void);
#endif // _VTD_EXTERN_H_
--- a/xen/drivers/passthrough/vtd/intremap.c
+++ b/xen/drivers/passthrough/vtd/intremap.c
@@ -735,6 +735,13 @@ int enable_intremap(struct iommu *iommu,
Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/intremap.c
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/intremap.c
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/intremap.c
@@ -741,6 +741,13 @@ int enable_intremap(struct iommu *iommu,
ASSERT(ecap_intr_remap(iommu->ecap) && iommu_intremap);
@ -123,7 +131,7 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
ir_ctrl = iommu_ir_ctrl(iommu);
sts = dmar_readl(iommu->reg, DMAR_GSTS_REG);
@@ -821,10 +828,10 @@ out:
@@ -827,10 +834,10 @@ out:
}
/*
@ -136,7 +144,7 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
{
struct acpi_drhd_unit *drhd;
struct iommu *iommu;
@@ -832,6 +839,9 @@ int iommu_enable_IR(void)
@@ -838,6 +845,9 @@ int iommu_enable_IR(void)
if ( !iommu_supports_eim() )
return -1;
@ -146,7 +154,7 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
for_each_drhd_unit ( drhd )
{
struct qi_ctrl *qi_ctrl = NULL;
@@ -881,7 +891,7 @@ int iommu_enable_IR(void)
@@ -887,7 +897,7 @@ int iommu_enable_IR(void)
* This function is used to disable Interrutp remapping when
* suspend local apic
*/
@ -155,9 +163,11 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
{
struct acpi_drhd_unit *drhd;
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -2014,7 +2014,7 @@ static int init_vtd_hw(void)
Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/iommu.c
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/iommu.c
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/iommu.c
@@ -1997,7 +1997,7 @@ static int init_vtd_hw(void)
if ( enable_intremap(iommu, 0) != 0 )
{
dprintk(XENLOG_WARNING VTDPREFIX,
@ -166,8 +176,10 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
break;
}
}
--- a/xen/drivers/passthrough/vtd/iommu.h
+++ b/xen/drivers/passthrough/vtd/iommu.h
Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/iommu.h
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/iommu.h
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/iommu.h
@@ -22,6 +22,10 @@
#include <xen/types.h>
@ -179,8 +191,10 @@ Signed-off-by: Allen Kay <allen.m.kay@intel.com>
/*
* Intel IOMMU register specification per version 1.0 public spec.
*/
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
Index: xen-4.1.0-testing/xen/include/xen/iommu.h
===================================================================
--- xen-4.1.0-testing.orig/xen/include/xen/iommu.h
+++ xen-4.1.0-testing/xen/include/xen/iommu.h
@@ -63,8 +63,8 @@ struct iommu {
int iommu_setup(void);

View File

@ -66,7 +66,7 @@ Index: xen-4.1.0-testing/xen/arch/x86/x86_64/entry.S
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/x86_64/entry.S
+++ xen-4.1.0-testing/xen/arch/x86/x86_64/entry.S
@@ -408,22 +408,35 @@ UNLIKELY_END(bounce_failsafe)
@@ -416,22 +416,35 @@ UNLIKELY_END(bounce_failsafe)
jz domain_crash_synchronous
movq %rax,UREGS_rip+8(%rsp)
ret

View File

@ -13,7 +13,7 @@ Index: xen-4.1.0-testing/xen/arch/x86/io_apic.c
static void setup_ioapic_ack(char *s)
{
if ( !strcmp(s, "old") )
@@ -2054,6 +2054,8 @@ void __init setup_IO_APIC(void)
@@ -2044,6 +2044,8 @@ void __init setup_IO_APIC(void)
else
io_apic_irqs = ~PIC_IRQS;

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a6043ae8ab78ecf1e75ff2014cd6a7bde3319341fe1bd7a8df335a0764355b70
size 10778444
oid sha256:b1fd4066baebad86a2009d412922b2442bbfd2042fc9a728560af0d9fc5f3708
size 10772618

View File

@ -334,19 +334,6 @@ Index: xen-4.1.0-testing/xen/common/grant_table.c
ld = current->domain;
Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/iommu.c
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/iommu.c
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/iommu.c
@@ -1743,7 +1743,7 @@ static int vtd_ept_page_compatible(struc
static bool_t vtd_ept_share(void)
{
struct acpi_drhd_unit *drhd;
- struct iommu *iommu;
+ struct iommu __attribute__((__unused__)) *iommu;
bool_t share = TRUE;
/* sharept defaults to 0 for now, default to 1 when feature matures */
Index: xen-4.1.0-testing/xen/common/kexec.c
===================================================================
--- xen-4.1.0-testing.orig/xen/common/kexec.c
@ -365,7 +352,7 @@ Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/intremap.c
===================================================================
--- xen-4.1.0-testing.orig/xen/drivers/passthrough/vtd/intremap.c
+++ xen-4.1.0-testing/xen/drivers/passthrough/vtd/intremap.c
@@ -363,7 +363,7 @@ unsigned int io_apic_read_remap_rte(
@@ -367,7 +367,7 @@ unsigned int io_apic_read_remap_rte(
unsigned int ioapic_pin = (reg - 0x10) / 2;
int index;
struct IO_xAPIC_route_entry old_rte = { 0 };
@ -374,7 +361,7 @@ Index: xen-4.1.0-testing/xen/drivers/passthrough/vtd/intremap.c
int rte_upper = (reg & 1) ? 1 : 0;
struct iommu *iommu = ioapic_to_iommu(IO_APIC_ID(apic));
struct ir_ctrl *ir_ctrl = iommu_ir_ctrl(iommu);
@@ -844,7 +844,7 @@ int iommu_enable_x2apic_IR(void)
@@ -850,7 +850,7 @@ int iommu_enable_x2apic_IR(void)
for_each_drhd_unit ( drhd )
{
@ -387,7 +374,7 @@ Index: xen-4.1.0-testing/xen/common/sched_credit2.c
===================================================================
--- xen-4.1.0-testing.orig/xen/common/sched_credit2.c
+++ xen-4.1.0-testing/xen/common/sched_credit2.c
@@ -1847,7 +1847,8 @@ static void deactivate_runqueue(struct c
@@ -1854,7 +1854,8 @@ static void deactivate_runqueue(struct c
static void init_pcpu(const struct scheduler *ops, int cpu)
{
@ -414,7 +401,7 @@ Index: xen-4.1.0-testing/xen/arch/x86/time.c
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/time.c
+++ xen-4.1.0-testing/xen/arch/x86/time.c
@@ -1003,7 +1003,8 @@ static void local_time_calibration(void)
@@ -1001,7 +1001,8 @@ static void local_time_calibration(void)
* System timestamps, extrapolated from local and master oscillators,
* taken during this calibration and the previous calibration.
*/
@ -441,7 +428,7 @@ Index: xen-4.1.0-testing/xen/arch/x86/mm/p2m.c
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/mm/p2m.c
+++ xen-4.1.0-testing/xen/arch/x86/mm/p2m.c
@@ -2266,7 +2266,7 @@ p2m_remove_page(struct p2m_domain *p2m,
@@ -2338,7 +2338,7 @@ p2m_remove_page(struct p2m_domain *p2m,
unsigned int page_order)
{
unsigned long i;
@ -450,7 +437,7 @@ Index: xen-4.1.0-testing/xen/arch/x86/mm/p2m.c
p2m_type_t t;
p2m_access_t a;
@@ -2335,7 +2335,7 @@ guest_physmap_mark_populate_on_demand(st
@@ -2407,7 +2407,7 @@ guest_physmap_mark_populate_on_demand(st
struct p2m_domain *p2m = p2m_get_hostp2m(d);
unsigned long i;
p2m_type_t ot;
@ -486,7 +473,7 @@ Index: xen-4.1.0-testing/xen/arch/x86/hvm/hvm.c
struct irq_desc *desc;
struct domain *d = v->domain;
struct hvm_irq_dpci *hvm_irq_dpci = d->arch.hvm_domain.irq.dpci;
@@ -3468,7 +3469,7 @@ long do_hvm_op(unsigned long op, XEN_GUE
@@ -3471,7 +3472,7 @@ long do_hvm_op(unsigned long op, XEN_GUE
{
p2m_type_t t;
p2m_type_t nt;

View File

@ -216,22 +216,3 @@ Index: xen-4.1.0-testing/tools/blktap2/include/blktaplib.h
#define WRITE 1
/*Control Messages between manager and tapdev*/
Index: xen-4.1.0-testing/xen/arch/x86/io_apic.c
===================================================================
--- xen-4.1.0-testing.orig/xen/arch/x86/io_apic.c
+++ xen-4.1.0-testing/xen/arch/x86/io_apic.c
@@ -227,12 +227,13 @@ int restore_IO_APIC_setup(struct IO_APIC
if (!ioapic_entries[apic])
return -ENOMEM;
- for (pin = 0; pin < nr_ioapic_registers[apic]; pin++)
+ for (pin = 0; pin < nr_ioapic_registers[apic]; pin++) {
entry = ioapic_entries[apic][pin];
spin_lock_irqsave(&ioapic_lock, flags);
__io_apic_write(apic, 0x11+2*pin, *(((int *)&entry)+1));
__io_apic_write(apic, 0x10+2*pin, *(((int *)&entry)+0));
spin_unlock_irqrestore(&ioapic_lock, flags);
+ }
}
return 0;

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Tue May 17 11:31:49 MDT 2011 - carnold@novell.com
- Update to Xen 4.1.1-rc1-pre c/s 23051
-------------------------------------------------------------------
Thu May 12 21:10:21 MDT 2011 - carnold@novell.com

View File

@ -22,7 +22,7 @@ Name: xen
ExclusiveArch: %ix86 x86_64
%define xvers 4.1
%define xvermaj 4
%define changeset 23013
%define changeset 23051
%define xen_build_dir xen-4.1.0-testing
%define with_kmp 1
%define with_stubdom 0
@ -120,7 +120,6 @@ Source99: baselibs.conf
# http://xenbits.xensource.com/ext/xenalyze
Source20000: xenalyze.hg.tar.bz2
# Upstream patches
Patch0: cve-2011-1583-4.1.patch
Patch1: 22998-x86-get_page_from_l1e-retcode.patch
Patch2: 22999-x86-mod_l1_entry-retcode.patch
Patch3: 23000-x86-mod_l2_entry-retcode.patch
@ -128,11 +127,7 @@ Patch4: 23096-x86-hpet-no-cpumask_lock.patch
Patch5: 23099-x86-rwlock-scalability.patch
Patch6: 23103-x86-pirq-guest-eoi-check.patch
Patch7: 23127-vtd-bios-settings.patch
Patch8: 23153-x86-amd-clear-DramModEn.patch
Patch9: 23154-x86-amd-iorr-no-rdwr.patch
Patch10: 23199-amd-iommu-unmapped-intr-fault.patch
Patch11: 23200-amd-iommu-intremap-sync.patch
Patch12: 23228-x86-conditional-write_tsc.patch
Patch8: 23199-amd-iommu-unmapped-intr-fault.patch
# Upstream qemu patches
# Our patches
Patch300: xen-config.diff
@ -608,7 +603,6 @@ Authors:
%setup -q -n %xen_build_dir -a 1 -a 20000
%patch20000 -p1
tar xfj %{SOURCE2} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
@ -617,10 +611,6 @@ tar xfj %{SOURCE2} -C $RPM_BUILD_DIR/%{xen_build_dir}/tools
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch300 -p1
%patch301 -p1
%patch302 -p1