SHA256
1
0
forked from pool/xen
OBS User unknown 2008-12-05 14:30:41 +00:00 committed by Git OBS Bridge
parent 793208499f
commit ef3323a4b5
27 changed files with 521 additions and 182 deletions

View File

@ -13,9 +13,11 @@ translate DMA requests through a multi-level page-table.
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
Signed-off-by: Weidong Han <weidong.han@intel.com>
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1091,12 +1091,12 @@ static int domain_context_mapping_one(
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/iommu.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/iommu.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/iommu.c
@@ -1089,12 +1089,12 @@ static int domain_context_mapping_one(
}
spin_lock_irqsave(&iommu->lock, flags);
@ -31,7 +33,7 @@ Signed-off-by: Weidong Han <weidong.han@intel.com>
{
/* Ensure we have pagetables allocated down to leaf PTE. */
if ( hd->pgd_maddr == 0 )
@@ -1460,11 +1460,12 @@ int intel_iommu_map_page(
@@ -1463,11 +1463,12 @@ int intel_iommu_map_page(
u64 pg_maddr;
int pte_present;
@ -46,7 +48,7 @@ Signed-off-by: Weidong Han <weidong.han@intel.com>
pg_maddr = addr_to_dma_page_maddr(d, (paddr_t)gfn << PAGE_SHIFT_4K, 1);
if ( pg_maddr == 0 )
@@ -1501,11 +1502,9 @@ int intel_iommu_unmap_page(struct domain
@@ -1504,11 +1505,9 @@ int intel_iommu_unmap_page(struct domain
drhd = list_entry(acpi_drhd_units.next, typeof(*drhd), list);
iommu = drhd->iommu;

View File

@ -16,8 +16,10 @@ disabled.
Signed-off-by: Weidong Han <weidong.han@intel.com>
--- a/xen/drivers/passthrough/iommu.c
+++ b/xen/drivers/passthrough/iommu.c
Index: xen-3.3.1-testing/xen/drivers/passthrough/iommu.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/iommu.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/iommu.c
@@ -33,11 +33,13 @@ int amd_iov_detect(void);
* pv Enable IOMMU for PV domains
* no-pv Disable IOMMU for PV domains (default)
@ -41,9 +43,11 @@ Signed-off-by: Weidong Han <weidong.han@intel.com>
s = ss + 1;
} while ( ss );
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1091,7 +1091,8 @@ static int domain_context_mapping_one(
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/iommu.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/iommu.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/iommu.c
@@ -1089,7 +1089,8 @@ static int domain_context_mapping_one(
}
spin_lock_irqsave(&iommu->lock, flags);
@ -53,7 +57,7 @@ Signed-off-by: Weidong Han <weidong.han@intel.com>
{
context_set_translation_type(*context, CONTEXT_TT_PASS_THRU);
agaw = level_to_agaw(iommu->nr_pt_levels);
@@ -1464,7 +1465,8 @@ int intel_iommu_map_page(
@@ -1467,7 +1468,8 @@ int intel_iommu_map_page(
iommu = drhd->iommu;
/* do nothing if dom0 and iommu supports pass thru */
@ -63,7 +67,7 @@ Signed-off-by: Weidong Han <weidong.han@intel.com>
return 0;
pg_maddr = addr_to_dma_page_maddr(d, (paddr_t)gfn << PAGE_SHIFT_4K, 1);
@@ -1503,7 +1505,8 @@ int intel_iommu_unmap_page(struct domain
@@ -1506,7 +1508,8 @@ int intel_iommu_unmap_page(struct domain
iommu = drhd->iommu;
/* do nothing if dom0 and iommu supports pass thru */
@ -73,8 +77,10 @@ Signed-off-by: Weidong Han <weidong.han@intel.com>
return 0;
dma_pte_clear_one(d, (paddr_t)gfn << PAGE_SHIFT_4K);
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
Index: xen-3.3.1-testing/xen/include/xen/iommu.h
===================================================================
--- xen-3.3.1-testing.orig/xen/include/xen/iommu.h
+++ xen-3.3.1-testing/xen/include/xen/iommu.h
@@ -31,6 +31,7 @@ extern int vtd_enabled;
extern int iommu_enabled;
extern int iommu_pv_enabled;

View File

@ -13,7 +13,7 @@ Index: xen-3.3.1-testing/xen/arch/x86/traps.c
===================================================================
--- xen-3.3.1-testing.orig/xen/arch/x86/traps.c
+++ xen-3.3.1-testing/xen/arch/x86/traps.c
@@ -2159,6 +2159,12 @@ static int emulate_privileged_op(struct
@@ -2160,6 +2160,12 @@ static int emulate_privileged_op(struct
if ( wrmsr_safe(regs->ecx, eax, edx) != 0 )
goto fail;
break;
@ -26,7 +26,7 @@ Index: xen-3.3.1-testing/xen/arch/x86/traps.c
default:
if ( wrmsr_hypervisor_regs(regs->ecx, eax, edx) )
break;
@@ -2235,6 +2241,12 @@ static int emulate_privileged_op(struct
@@ -2236,6 +2242,12 @@ static int emulate_privileged_op(struct
MSR_IA32_MISC_ENABLE_PEBS_UNAVAIL |
MSR_IA32_MISC_ENABLE_XTPR_DISABLE;
break;

View File

@ -438,7 +438,7 @@ Index: xen-3.3.1-testing/xen/arch/x86/traps.c
===================================================================
--- xen-3.3.1-testing.orig/xen/arch/x86/traps.c
+++ xen-3.3.1-testing/xen/arch/x86/traps.c
@@ -2977,13 +2977,13 @@ void set_intr_gate(unsigned int n, void
@@ -2978,13 +2978,13 @@ void set_intr_gate(unsigned int n, void
void set_tss_desc(unsigned int n, void *addr)
{
_set_tssldt_desc(

View File

@ -12,8 +12,10 @@ mandatory, however.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
--- a/xen/drivers/passthrough/vtd/intremap.c
+++ b/xen/drivers/passthrough/vtd/intremap.c
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/intremap.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/intremap.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/intremap.c
@@ -458,7 +458,7 @@ int intremap_setup(struct iommu *iommu)
{
dprintk(XENLOG_WARNING VTDPREFIX,
@ -23,8 +25,10 @@ Signed-off-by: Jan Beulich <jbeulich@novell.com>
}
ir_ctrl->iremap_index = -1;
}
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/iommu.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/iommu.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/iommu.c
@@ -220,10 +220,10 @@ static u64 addr_to_dma_page_maddr(struct
if ( !alloc )
break;
@ -47,9 +51,11 @@ Signed-off-by: Jan Beulich <jbeulich@novell.com>
}
if ( level == 2 )
--- a/xen/drivers/passthrough/vtd/qinval.c
+++ b/xen/drivers/passthrough/vtd/qinval.c
@@ -429,7 +429,11 @@ int qinval_setup(struct iommu *iommu)
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/qinval.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/qinval.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/qinval.c
@@ -430,7 +430,11 @@ int qinval_setup(struct iommu *iommu)
{
qi_ctrl->qinval_maddr = alloc_pgtable_maddr();
if ( qi_ctrl->qinval_maddr == 0 )
@ -62,8 +68,10 @@ Signed-off-by: Jan Beulich <jbeulich@novell.com>
flush->context = flush_context_qi;
flush->iotlb = flush_iotlb_qi;
}
--- a/xen/drivers/passthrough/vtd/x86/vtd.c
+++ b/xen/drivers/passthrough/vtd/x86/vtd.c
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/x86/vtd.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/x86/vtd.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/x86/vtd.c
@@ -41,17 +41,19 @@ u64 alloc_pgtable_maddr(void)
{
struct page_info *pg;

View File

@ -0,0 +1,78 @@
# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1226313701 0
# Node ID 40668908260c7667cc5a0b75862352016c52e38f
# Parent 832efb028a1dc72fb52edc11c958fd19f8542e48
vtd: fix interrupt remapping to handle SMI RTE's with uninitialized
reserved fields
Some BIOS does not zero out reserve fields in IOAPIC RTE's.
clear_IO_APIC() zeroes out all RTE's except for RTE with MSI delivery
type. This is a problem when the host OS converts SMI delivery type
to some other type but leaving the reserved field uninitialized. This
can cause interrupt remapping table out of bound error if "format"
field is 1 and the uninitialized "index" field has a value that that
is larger than the maximum index of interrupt remapping table.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>=
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/dmar.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/dmar.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/dmar.c
@@ -369,7 +369,9 @@ acpi_parse_one_rmrr(struct acpi_dmar_ent
if ( rmrr->base_address >= rmrr->end_address )
{
- dprintk(XENLOG_ERR VTDPREFIX, "RMRR is incorrect.\n");
+ dprintk(XENLOG_ERR VTDPREFIX,
+ "RMRR error: base_addr %"PRIx64" end_address %"PRIx64"\n",
+ rmrr->base_address, rmrr->end_address);
return -EFAULT;
}
Index: xen-3.3.1-testing/xen/drivers/passthrough/vtd/intremap.c
===================================================================
--- xen-3.3.1-testing.orig/xen/drivers/passthrough/vtd/intremap.c
+++ xen-3.3.1-testing/xen/drivers/passthrough/vtd/intremap.c
@@ -201,7 +201,7 @@ unsigned int io_apic_read_remap_rte(
remap_rte = (struct IO_APIC_route_remap_entry *) &old_rte;
- if ( remap_rte->format == 0 )
+ if ( (remap_rte->format == 0) || (old_rte.delivery_mode == dest_SMI) )
{
*IO_APIC_BASE(apic) = rte_upper ? (reg + 1) : reg;
return *(IO_APIC_BASE(apic)+4);
@@ -247,6 +247,31 @@ void io_apic_write_remap_rte(
remap_rte = (struct IO_APIC_route_remap_entry *) &old_rte;
+ if ( old_rte.delivery_mode == dest_SMI )
+ {
+ /* Some BIOS does not zero out reserve fields in IOAPIC
+ * RTE's. clear_IO_APIC() zeroes out all RTE's except for RTE
+ * with MSI delivery type. This is a problem when the host
+ * OS converts SMI delivery type to some other type but leaving
+ * the reserved field uninitialized. This can cause interrupt
+ * remapping table out of bound error if "format" field is 1
+ * and the "index" field has a value that that is larger than
+ * the maximum index of interrupt remapping table.
+ */
+ if ( remap_rte->format == 1 )
+ {
+ remap_rte->format = 0;
+ *IO_APIC_BASE(apic) = reg;
+ *(IO_APIC_BASE(apic)+4) = *(((u32 *)&old_rte)+0);
+ *IO_APIC_BASE(apic) = reg + 1;
+ *(IO_APIC_BASE(apic)+4) = *(((u32 *)&old_rte)+1);
+ }
+
+ *IO_APIC_BASE(apic) = rte_upper ? (reg + 1) : reg;
+ *(IO_APIC_BASE(apic)+4) = value;
+ return;
+ }
+
/* mask the interrupt while we change the intremap table */
saved_mask = remap_rte->mask;
remap_rte->mask = 1;

View File

@ -0,0 +1,109 @@
# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1227006996 0
# Node ID ae891977a4d3f5d8d8330ed3796881867b4d88a8
# Parent 2604400f75e318dc9f5201e3626213290a89862a
x86, hvm: Implement interrupt routing to least priority processor.
References: bnc#429904
Instead of round robin the vcpu with the lowest processor
priority is selected for the interrupt. If multiple vcpus
share the same low priority then interrupts are distributed between
those round robin.
Signed-off-by: Juergen Gross <juergen.gross@fujitsu-siemens.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
--- a/xen/arch/x86/hvm/vioapic.c
+++ b/xen/arch/x86/hvm/vioapic.c
@@ -344,8 +344,8 @@ static void vioapic_deliver(struct hvm_h
}
else
#endif
- target = apic_round_robin(vioapic_domain(vioapic),
- vector, deliver_bitmask);
+ target = apic_lowest_prio(vioapic_domain(vioapic),
+ deliver_bitmask);
if ( target != NULL )
{
ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode);
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -377,26 +377,30 @@ static int vlapic_accept_irq(struct vcpu
}
/* This function is used by both ioapic and lapic.The bitmap is for vcpu_id. */
-struct vlapic *apic_round_robin(
- struct domain *d, uint8_t vector, uint32_t bitmap)
+struct vlapic *apic_lowest_prio(struct domain *d, uint32_t bitmap)
{
- int next, old;
- struct vlapic *target = NULL;
+ int old = d->arch.hvm_domain.irq.round_robin_prev_vcpu;
+ uint32_t ppr, target_ppr = UINT_MAX;
+ struct vlapic *vlapic, *target = NULL;
+ struct vcpu *v;
- old = next = d->arch.hvm_domain.irq.round_robin_prev_vcpu;
+ if ( unlikely((v = d->vcpu[old]) == NULL) )
+ return NULL;
do {
- if ( ++next == MAX_VIRT_CPUS )
- next = 0;
- if ( (d->vcpu[next] == NULL) || !test_bit(next, &bitmap) )
- continue;
- target = vcpu_vlapic(d->vcpu[next]);
- if ( vlapic_enabled(target) )
- break;
- target = NULL;
- } while ( next != old );
+ v = v->next_in_list ? : d->vcpu[0];
+ vlapic = vcpu_vlapic(v);
+ if ( test_bit(v->vcpu_id, &bitmap) && vlapic_enabled(vlapic) &&
+ ((ppr = vlapic_get_ppr(vlapic)) < target_ppr) )
+ {
+ target = vlapic;
+ target_ppr = ppr;
+ }
+ } while ( v->vcpu_id != old );
- d->arch.hvm_domain.irq.round_robin_prev_vcpu = next;
+ if ( target != NULL )
+ d->arch.hvm_domain.irq.round_robin_prev_vcpu =
+ vlapic_vcpu(target)->vcpu_id;
return target;
}
@@ -456,7 +460,7 @@ static int vlapic_ipi(
if ( delivery_mode == APIC_DM_LOWEST )
{
- target = apic_round_robin(vlapic_domain(v), vector, lpr_map);
+ target = apic_lowest_prio(vlapic_domain(v), lpr_map);
if ( target != NULL )
rc = vlapic_accept_irq(vlapic_vcpu(target), delivery_mode,
vector, level, trig_mode);
--- a/xen/arch/x86/hvm/vmsi.c
+++ b/xen/arch/x86/hvm/vmsi.c
@@ -152,7 +152,7 @@ int vmsi_deliver(struct domain *d, int p
{
case dest_LowestPrio:
{
- target = apic_round_robin(d, vector, deliver_bitmask);
+ target = apic_lowest_prio(d, deliver_bitmask);
if ( target != NULL )
vmsi_inj_irq(d, target, vector, trig_mode, delivery_mode);
else
--- a/xen/include/asm-x86/hvm/vlapic.h
+++ b/xen/include/asm-x86/hvm/vlapic.h
@@ -93,8 +93,7 @@ void vlapic_msr_set(struct vlapic *vlapi
int vlapic_accept_pic_intr(struct vcpu *v);
-struct vlapic *apic_round_robin(
- struct domain *d, uint8_t vector, uint32_t bitmap);
+struct vlapic *apic_lowest_prio(struct domain *d, uint32_t bitmap);
int vlapic_match_logical_addr(struct vlapic *vlapic, uint8_t mda);

View File

@ -0,0 +1,35 @@
# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1227023966 0
# Node ID f09a1d5d4338eab9c593b63b8ae89ddf481a3681
# Parent ed8524f4a044efbd6d30f9340c6ddfb00f972407
x86, hvm: Fix domain restore bug with Intel VLAPIC acceleration.
r18383 mark video memory as ram, and make all valid pages migrated,
including vlapic page (0xFEE00), and share page(0xFFFFF).
An extra memory population for lapic page would override previous
mapping then cause HVM guest with vlapic acceleration hang.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -1541,6 +1541,7 @@ static int mod_l1_entry(l1_pgentry_t *pl
struct domain *d = curr->domain;
unsigned long mfn;
struct page_info *l1pg = mfn_to_page(gl1mfn);
+ p2m_type_t p2mt;
int rc = 1;
page_lock(l1pg);
@@ -1558,8 +1559,8 @@ static int mod_l1_entry(l1_pgentry_t *pl
if ( l1e_get_flags(nl1e) & _PAGE_PRESENT )
{
/* Translate foreign guest addresses. */
- mfn = gmfn_to_mfn(FOREIGNDOM, l1e_get_pfn(nl1e));
- if ( unlikely(mfn == INVALID_MFN) )
+ mfn = mfn_x(gfn_to_mfn(FOREIGNDOM, l1e_get_pfn(nl1e), &p2mt));
+ if ( !p2m_is_ram(p2mt) || unlikely(mfn == INVALID_MFN) )
return page_unlock(l1pg), 0;
ASSERT((mfn & ~(PADDR_MASK >> PAGE_SHIFT)) == 0);
nl1e = l1e_from_pfn(mfn, l1e_get_flags(nl1e));

View File

@ -0,0 +1,29 @@
# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1227111099 0
# Node ID bddd2d344c5425bfd25564bc20f90c3776552c6e
# Parent 4107618ee0d8aceb517f43ffa79197a041ed4bcf
x86: secure ioapic_guest_write() against FREE_TO_ASSIGN irq values
Signed-off-by: Jan Beulich <jbeulich@novell.com>
--- a/xen/arch/x86/io_apic.c
+++ b/xen/arch/x86/io_apic.c
@@ -2198,7 +2198,7 @@ int ioapic_guest_write(unsigned long phy
if ( new_rte.vector >= FIRST_DYNAMIC_VECTOR )
new_irq = vector_irq[new_rte.vector];
- if ( (old_irq != new_irq) && (old_irq != -1) && IO_APIC_IRQ(old_irq) )
+ if ( (old_irq != new_irq) && (old_irq >= 0) && IO_APIC_IRQ(old_irq) )
{
if ( irq_desc[IO_APIC_VECTOR(old_irq)].action )
{
@@ -2210,7 +2210,7 @@ int ioapic_guest_write(unsigned long phy
remove_pin_at_irq(old_irq, apic, pin);
}
- if ( (new_irq != -1) && IO_APIC_IRQ(new_irq) )
+ if ( (new_irq >= 0) && IO_APIC_IRQ(new_irq) )
{
if ( irq_desc[IO_APIC_VECTOR(new_irq)].action )
{

View File

@ -2,7 +2,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -2250,7 +2250,7 @@ class XendDomainInfo:
@@ -2265,7 +2265,7 @@ class XendDomainInfo:
vtd_mem = ((vtd_mem + 1023) / 1024) * 1024
# Make sure there's enough RAM available for the domain

View File

@ -5,7 +5,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -2595,7 +2595,7 @@ class XendDomainInfo:
@@ -2610,7 +2610,7 @@ class XendDomainInfo:
(fn, BOOTLOADER_LOOPBACK_DEVICE))
vbd = {

13
checkpoint-rename.patch Normal file
View File

@ -0,0 +1,13 @@
Index: xen-3.3.1-testing/tools/python/xen/xend/XendCheckpoint.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xend/XendCheckpoint.py
+++ xen-3.3.1-testing/tools/python/xen/xend/XendCheckpoint.py
@@ -144,7 +144,7 @@ def save(fd, dominfo, network, live, dst
dominfo.destroy()
dominfo.testDeviceComplete()
try:
- dominfo.setName(domain_name, False)
+ dominfo.setName(domain_name)
except VmError:
# Ignore this. The name conflict (hopefully) arises because we
# are doing localhost migration; if we are doing a suspend of a

View File

@ -9,6 +9,22 @@
{
printk(" DomPage list too long to display\n");
}
@@ -143,6 +143,15 @@ void dump_pageframe_info(struct domain *
{
list_for_each_entry ( page, &d->page_list, list )
{
+ if ( d->tot_pages > 16 )
+ {
+ switch ( page->u.inuse.type_info & PGT_type_mask )
+ {
+ case PGT_none:
+ case PGT_writable_page:
+ continue;
+ }
+ }
printk(" DomPage %p: caf=%08x, taf=%" PRtype_info "\n",
_p(page_to_mfn(page)),
page->count_info, page->u.inuse.type_info);
--- a/xen/common/keyhandler.c
+++ b/xen/common/keyhandler.c
@@ -192,9 +192,9 @@ static void dump_domains(unsigned char k

View File

@ -2,7 +2,7 @@ Index: xen-3.3.1-testing/tools/ioemu-remote/vnc.c
===================================================================
--- xen-3.3.1-testing.orig/tools/ioemu-remote/vnc.c
+++ xen-3.3.1-testing/tools/ioemu-remote/vnc.c
@@ -352,6 +352,11 @@ static void vnc_dpy_update(DisplayState
@@ -352,6 +352,11 @@ static void vnc_dpy_update(DisplayState
{
VncState *vs = ds->opaque;
@ -14,7 +14,7 @@ Index: xen-3.3.1-testing/tools/ioemu-remote/vnc.c
set_bits_in_row(vs, vs->dirty_row, x, y, w, h);
}
@@ -405,9 +413,13 @@ static void vnc_dpy_resize_shared(Displa
@@ -419,9 +424,13 @@ static void vnc_dpy_resize_shared(Displa
size_changed = ds->width != w || ds->height != h;
ds->width = w;
ds->height = h;
@ -29,7 +29,7 @@ Index: xen-3.3.1-testing/tools/ioemu-remote/vnc.c
if (vs->update_requested) {
vnc_write_u8(vs, 0); /* msg id */
vnc_write_u8(vs, 0);
@@ -1794,6 +1837,31 @@ static int protocol_client_msg(VncState
@@ -1808,6 +1817,31 @@ static int protocol_client_msg(VncState
}
set_encodings(vs, (int32_t *)(data + 4), limit);

View File

@ -1,24 +1,33 @@
Index: xen-3.3.1-testing/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
===================================================================
--- xen-3.3.1-testing.orig/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
+++ xen-3.3.1-testing/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
@@ -14,7 +14,11 @@ EXPORT_SYMBOL(system_state);
--- a/unmodified_drivers/linux-2.6/balloon/Kbuild
+++ b/unmodified_drivers/linux-2.6/balloon/Kbuild
@@ -4,6 +4,5 @@ obj-m = xen-balloon.o
void ctrl_alt_del(void)
{
- kill_proc(1, SIGINT, 1); /* interrupt init */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27)
+ kill_proc(1, SIGINT, 1);
+#else
+ kill_pid(cad_pid, SIGINT, 1);
+#endif
}
EXTRA_CFLAGS += -I$(M)/platform-pci
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,8)
Index: xen-3.3.1-testing/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c
===================================================================
--- xen-3.3.1-testing.orig/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c
+++ xen-3.3.1-testing/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c
-xen-balloon-objs =
-xen-balloon-objs += balloon.o
-xen-balloon-objs += sysfs.o
+xen-balloon-y := balloon.o sysfs.o
+xen-balloon-$(CONFIG_XEN_SCRUB_PAGES) += scrub.o
--- a/unmodified_drivers/linux-2.6/blkfront/Kbuild
+++ b/unmodified_drivers/linux-2.6/blkfront/Kbuild
@@ -3,3 +3,4 @@ include $(M)/overrides.mk
obj-m += xen-vbd.o
xen-vbd-objs := blkfront.o vbd.o
+xen-vbd-objs += $(patsubst %.c,%.o,$(notdir $(wildcard $(src)/vcd.c)))
--- a/unmodified_drivers/linux-2.6/mkbuildtree
+++ b/unmodified_drivers/linux-2.6/mkbuildtree
@@ -53,6 +53,7 @@ i[34567]86|x86_64)
ln -sf ${XL}/include/asm-x86/mach-xen/asm/synch_bitops*.h include/asm
ln -sf ${XL}/include/asm-x86/mach-xen/asm/maddr*.h include/asm
ln -sf ${XL}/include/asm-x86/mach-xen/asm/gnttab_dma.h include/asm
+ ln -sf ${XL}/arch/x86/lib/scrub.c balloon
else
if [ $uname = x86_64 ]; then
mkdir -p include/asm-i386
--- a/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c
+++ b/unmodified_drivers/linux-2.6/platform-pci/machine_reboot.c
@@ -34,7 +34,11 @@ static void ap_suspend(void *_info)
atomic_dec(&info->nr_spinning);
}
@ -31,3 +40,17 @@ Index: xen-3.3.1-testing/unmodified_drivers/linux-2.6/platform-pci/machine_reboo
#else /* !defined(CONFIG_SMP) */
--- a/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
+++ b/unmodified_drivers/linux-2.6/platform-pci/platform-compat.c
@@ -14,7 +14,11 @@ EXPORT_SYMBOL(system_state);
void ctrl_alt_del(void)
{
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27)
kill_proc(1, SIGINT, 1); /* interrupt init */
+#else
+ kill_cad_pid(SIGINT, 1);
+#endif
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,8)

View File

@ -2,7 +2,7 @@ Index: xen-3.3.1-testing/xen/arch/x86/traps.c
===================================================================
--- xen-3.3.1-testing.orig/xen/arch/x86/traps.c
+++ xen-3.3.1-testing/xen/arch/x86/traps.c
@@ -1266,6 +1266,7 @@ asmlinkage void do_early_page_fault(stru
@@ -1267,6 +1267,7 @@ asmlinkage void do_early_page_fault(stru
unsigned long *stk = (unsigned long *)regs;
printk("Early fatal page fault at %04x:%p (cr2=%p, ec=%04x)\n",
regs->cs, _p(regs->eip), _p(cr2), regs->error_code);

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e32c923438b84304bb99311df54aa02eb057b9dbcce2770f3b0310975b3ab066
size 22694395
oid sha256:b9e84016ef0445bc87420696ade8fcdc52d474eb61b8b2a9aadb4ee0f31c1980
size 22694606

View File

@ -148,7 +148,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
from xen.xend.XendError import XendError, VmError
from xen.xend.XendDevices import XendDevices
from xen.xend.XendTask import XendTask
@@ -1870,6 +1870,10 @@ class XendDomainInfo:
@@ -1878,6 +1878,10 @@ class XendDomainInfo:
deviceClass, config = self.info['devices'].get(dev_uuid)
self._waitForDevice(deviceClass, config['devid'])
@ -159,7 +159,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
def _waitForDevice_destroy(self, deviceClass, devid, backpath):
return self.getDeviceController(deviceClass).waitForDevice_destroy(
devid, backpath)
@@ -2546,8 +2550,11 @@ class XendDomainInfo:
@@ -2561,8 +2565,11 @@ class XendDomainInfo:
blexec = osdep.pygrub_path
blcfg = None
@ -173,7 +173,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
if not disks:
msg = "Had a bootloader specified, but no disks are bootable"
@@ -2558,13 +2565,10 @@ class XendDomainInfo:
@@ -2573,13 +2580,10 @@ class XendDomainInfo:
devtype = devinfo[0]
disk = devinfo[1]['uname']
@ -190,7 +190,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
log.info("Mounting %s on %s." %
(fn, BOOTLOADER_LOOPBACK_DEVICE))
@@ -2576,7 +2580,9 @@ class XendDomainInfo:
@@ -2591,7 +2595,9 @@ class XendDomainInfo:
from xen.xend import XendDomain
dom0 = XendDomain.instance().privilegedDomain()
@ -201,7 +201,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
fn = BOOTLOADER_LOOPBACK_DEVICE
try:
@@ -2587,7 +2593,7 @@ class XendDomainInfo:
@@ -2602,7 +2608,7 @@ class XendDomainInfo:
log.info("Unmounting %s from %s." %
(fn, BOOTLOADER_LOOPBACK_DEVICE))

View File

@ -94,7 +94,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -1038,6 +1038,27 @@ class XendDomainInfo:
@@ -1046,6 +1046,27 @@ class XendDomainInfo:
return None

View File

@ -35,20 +35,6 @@ Index: xen-3.3.1-testing/tools/misc/miniterm/miniterm.c
break;
}
Index: xen-3.3.1-testing/xen/tools/symbols.c
===================================================================
--- xen-3.3.1-testing.orig/xen/tools/symbols.c
+++ xen-3.3.1-testing/xen/tools/symbols.c
@@ -81,7 +81,8 @@ static int read_symbol(FILE *in, struct
if (rc != 3) {
if (rc != EOF) {
/* skip line */
- fgets(str, 500, in);
+ if (fgets(str, sizeof(str), in) == NULL)
+ ; /* don't care */
}
return -1;
}
Index: xen-3.3.1-testing/tools/libxc/xc_dom_elfloader.c
===================================================================
--- xen-3.3.1-testing.orig/tools/libxc/xc_dom_elfloader.c

View File

@ -1,30 +0,0 @@
Index: xen-3.3.1-testing/xen/arch/x86/x86_emulate/x86_emulate.c
===================================================================
--- xen-3.3.1-testing.orig/xen/arch/x86/x86_emulate/x86_emulate.c
+++ xen-3.3.1-testing/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -3657,6 +3657,12 @@ x86_emulate(
case 8: *src.reg = dst.val; break;
}
goto add;
+
+ case 0xc3: /* movnti */
+ /* Ignore the non-temporal hint for now. */
+ generate_exception_if(dst.bytes <= 2, EXC_UD, -1);
+ dst.val = src.val;
+ break;
}
goto writeback;
@@ -3923,12 +3929,6 @@ x86_emulate(
src.val = x86_seg_gs;
goto pop_seg;
- case 0xc3: /* movnti */
- /* Ignore the non-temporal hint for now. */
- generate_exception_if(dst.bytes <= 2, EXC_UD, -1);
- dst.val = src.val;
- break;
-
case 0xc7: /* Grp9 (cmpxchg8b/cmpxchg16b) */ {
unsigned long old[2], exp[2], new[2];
unsigned int i;

View File

@ -1,3 +1,15 @@
-------------------------------------------------------------------
Thu Dec 4 11:45:55 MST 2008 - jfehlig@novell.com
- bnc#456511 - Fix domain name change after checkpoint/shutdown
events.
-------------------------------------------------------------------
Tue Dec 2 15:57:03 MST 2008 - carnold@novell.com
- Fixed xmclone.sh. It calls lomount which no longer exists in the
distro.
-------------------------------------------------------------------
Tue Nov 25 15:09:12 CET 2008 - kwolf@suse.de

153
xen.spec
View File

@ -1,5 +1,5 @@
#
# spec file for package xen (Version 3.3.1_18494_03)
# spec file for package xen (Version 3.3.1_18511_02)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@ -22,9 +22,9 @@ Name: xen
ExclusiveArch: %ix86 x86_64
%define xvers 3.3
%define xvermaj 3
%define changeset 18494
%define changeset 18511
%define xen_build_dir xen-3.3.1-testing
%define with_kmp 0
%define with_kmp 1
BuildRequires: LibVNCServer-devel SDL-devel automake bin86 curl-devel dev86 graphviz latex2html libjpeg-devel libxml2-devel ncurses-devel openssl openssl-devel pciutils-devel python-devel transfig
%if %suse_version >= 1030
BuildRequires: texlive texlive-latex
@ -37,7 +37,7 @@ BuildRequires: glibc-32bit glibc-devel-32bit
%if %{?with_kmp}0
BuildRequires: kernel-source kernel-syms module-init-tools xorg-x11
%endif
Version: 3.3.1_18494_03
Version: 3.3.1_18511_02
Release: 1
License: GPL v2 only
Group: System/Kernel
@ -109,13 +109,15 @@ Patch39: 18741-x86-dom-cleanup-no-hack.patch
Patch40: 18742-x86-partial-page-ref.patch
Patch41: 18745-xend-ioport-irq.patch
Patch42: 18747-x86-partial-page-ref.patch
Patch43: 18771-reduce-GDT-switching.patch
Patch44: 18778-msi-irq-fix.patch
Patch45: 18764-cpu-affinity.patch
Patch46: 18780-cpu-affinity.patch
Patch47: 18799-cpu-affinity.patch
# Will be fixed in 3.3-testing soon
Patch90: xen-x86-emulate-movnti.patch
Patch43: 18762-vtd-intremap-SMI-RTEs.patch
Patch44: 18771-reduce-GDT-switching.patch
Patch45: 18778-msi-irq-fix.patch
Patch46: 18764-cpu-affinity.patch
Patch47: 18780-cpu-affinity.patch
Patch48: 18785-vlapic-lowest-prio.patch
Patch49: 18788-vlapic-accel-dom-restore.patch
Patch50: 18795-x86-ioapic-guest-write.patch
Patch51: 18799-cpu-affinity.patch
# Our patches
Patch100: xen-config.diff
Patch101: xend-config.diff
@ -165,6 +167,8 @@ Patch160: network-route.patch
Patch161: python2.6-fixes.patch
Patch162: udev-rules.patch
Patch163: ioemu-vnc-resize.patch
# Needs to go upstream
Patch164: checkpoint-rename.patch
# Patches for snapshot support
Patch170: qemu-img-snapshot.patch
Patch171: ioemu-blktap-fix-open.patch
@ -580,7 +584,10 @@ Authors:
%patch45 -p1
%patch46 -p1
%patch47 -p1
%patch90 -p1
%patch48 -p1
%patch49 -p1
%patch50 -p1
%patch51 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
@ -628,6 +635,7 @@ Authors:
%patch161 -p1
%patch162 -p1
%patch163 -p1
%patch164 -p1
%patch170 -p1
%patch171 -p1
%patch172 -p1
@ -733,7 +741,6 @@ make -C xen clean
%endif
export CFLAGS="$RPM_OPT_FLAGS"
export RPM_OPT_FLAGS
#make -C xen/include/public/foreign
make -C tools/include/xen-foreign
# tools
export XEN_PYTHON_NATIVE_INSTALL=1
@ -1006,6 +1013,12 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
/sbin/ldconfig
%changelog
* Thu Dec 04 2008 jfehlig@novell.com
- bnc#456511 - Fix domain name change after checkpoint/shutdown
events.
* Tue Dec 02 2008 carnold@novell.com
- Fixed xmclone.sh. It calls lomount which no longer exists in the
distro.
* Tue Nov 25 2008 kwolf@suse.de
- Fix the build. Build system seems to be unhappy about having two
copies of the xenstore binary (this is not a proper fix in fact
@ -1054,7 +1067,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
persistent across dom0 reboot
* Wed Oct 29 2008 carnold@novell.com
- bnc#436926 - Xen hypervisor crash
* Wed Oct 29 2008 jfehlig@novell.com
* Tue Oct 28 2008 jfehlig@novell.com
- bnc#438927 - Fix migration bug in xend
* Tue Oct 28 2008 carnold@suse.de
- disable KMP, does not build with current kernel
@ -1070,7 +1083,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
vcpus > VCPUs_max on running domain.
* Tue Oct 21 2008 carnold@novell.com
- Update to changeset 18455.
* Fri Oct 17 2008 olh@suse.de
* Thu Oct 16 2008 olh@suse.de
- add ExclusiveArch x86 x86_64
* Wed Oct 15 2008 jfehlig@novell.com
- bnc#433722 - Fix handling of default bridge in qemu-ifup.
@ -1109,7 +1122,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
fate#302942
* Thu Sep 11 2008 jfehlig@novell.com
- Added ocfs2 to Should-Start in xendomains init script
* Thu Sep 11 2008 plc@novell.com
* Wed Sep 10 2008 plc@novell.com
- Added pv cdrom support to blktap
fate#300964
* Wed Sep 10 2008 jfehlig@novell.com
@ -1147,7 +1160,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Mon Aug 18 2008 carnold@suse.de
- Removed git dependency. Instead use a static version of
ioemu-remote.
* Fri Aug 15 2008 jfehlig@novell.com
* Thu Aug 14 2008 jfehlig@novell.com
- Added patch to prevent starting same domU from multiple hosts.
Feature is disabled by default - see /etc/xen/xend-config.sxp.
fate#305062
@ -1220,7 +1233,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Update to Xen 3.2.1 FCS changeset 16881.
* Fri Apr 11 2008 carnold@novell.com
- Update to Xen 3.2.1 RC5 changeset 16864.
* Fri Apr 11 2008 jfehlig@novell.com
* Thu Apr 10 2008 jfehlig@novell.com
- bnc#378595 - Do not use ifup/ifdown in network-bridge for now.
* Mon Mar 24 2008 carnold@novell.com
- bnc#373194 - The xen module and the kernel for Dom0 don't match.
@ -1253,7 +1266,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Fri Feb 29 2008 plc@novell.com
- Send UNIT_ATTENTION when CD drive has newly inserted media and
becomes ready. bnc#365386
* Fri Feb 29 2008 jfehlig@novell.com
* Thu Feb 28 2008 jfehlig@novell.com
- Updated block-iscsi script and xen-domUloader patch, bnc #365385
* Thu Feb 28 2008 carnold@novell.com
- Add support for Intel EPT / VPID.
@ -1269,7 +1282,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Tranlate colors from 32 bit to 16 bit when viewing a 32 bit PV
VM from a 16 bit client. bnc#351470
Also includes upstream mouse queue patch.
* Sat Feb 23 2008 jfehlig@novell.com
* Fri Feb 22 2008 jfehlig@novell.com
- Added PAM configuration files for remote authentication via
Xen API. bnc #353464
* Tue Feb 19 2008 carnold@novell.com
@ -1280,7 +1293,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Thu Feb 14 2008 carnold@novell.com
- Added upstream changesets that fix various bugs.
16859 16929 16930 16945 16947 16962 16976 16980 16995 16998 17036
* Thu Feb 14 2008 jfehlig@novell.com
* Wed Feb 13 2008 jfehlig@novell.com
- Updated network-multinet
- Simplify bridge creation
- Create traditional bridge and hostonly networks by default
@ -1291,10 +1304,10 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Mon Feb 04 2008 plc@novell.com
- Replaced xen-blktab-subtype-strip.patch with official upstream
changeset for bnc#353065.
* Sat Feb 02 2008 carnold@novell.com
* Fri Feb 01 2008 carnold@novell.com
- Update to xen 3.2 FCS. Changeset 16718
- Merge xen-tools and xen-tools-ioemu into xen-tools.
* Thu Dec 20 2007 carnold@novell.com
* Wed Dec 19 2007 carnold@novell.com
- Update to xen 3.2 RC2. Changeset 16646
* Thu Dec 13 2007 carnold@novell.com
- Added agent support for HP Proliant hardware.
@ -1311,11 +1324,11 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- #334445: xenbaked: Fix security vulnerability CVE-2007-3919.
* Thu Nov 01 2007 carnold@novell.com
- #310279: Kernel Panic while booting Xen
* Wed Oct 03 2007 ccoffing@novell.com
* Tue Oct 02 2007 ccoffing@novell.com
- #286859: Fix booting from SAN
* Thu Sep 13 2007 ccoffing@novell.com
- #310338: Fix "No such file or directory" in network-multinet
* Thu Sep 13 2007 jfehlig@novell.com
* Wed Sep 12 2007 jfehlig@novell.com
- #309940: Fix 'xm reboot'
- Moved hvm_vnc.diff and xend_mem_leak.diff to 'Upstream patches'
section of spec file since both have been accepted upstream now.
@ -1333,7 +1346,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- #289275 - domu will not reboot if pci= is passed in at boot time.
* Fri Aug 24 2007 carnold@novell.com
- #297345: Added several upstream patches for hvm migration.
* Sat Aug 18 2007 jfehlig@novell.com
* Fri Aug 17 2007 jfehlig@novell.com
- Added upstream c/s 15128, 15153, 15477, and 15716. These patches
provide foundation for bug #238986
- Renamed xend_dev_destroy_cleanup.patch to reflect the upstream
@ -1347,7 +1360,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- #298176: Do not enable NX if CPU/BIOS does not support it
- #289569: Modify network-bridge to handle vlan
- #297295: Fix bridge setup: stop using getcfg
* Tue Aug 07 2007 olh@suse.de
* Mon Aug 06 2007 olh@suse.de
- remove inclusion of linux/compiler.h and linux/string.h
remove ExclusiveArch and fix prep section for quilt setup *.spec
* Thu Aug 02 2007 jfehlig@novell.com
@ -1394,7 +1407,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- #285929: Bad "xendomains status" output w/ empty XENDOMAINS_SAVE
* Tue Jul 03 2007 carnold@novell.com
- Changes necessary to support EDD and EDID from Jan.
* Thu Jun 21 2007 jfehlig@novell.com
* Wed Jun 20 2007 jfehlig@novell.com
- Added upstream changesets 15273, 15274, and 15275.
- Removed the modified 15157 patch. This patch was actually a
consolidation of changesets 15157 and 15250. These changesets
@ -1468,7 +1481,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Thu May 03 2007 ccoffing@novell.com
- Update to xen-3.1-testing rc7 (changeset 15020).
- Fix identification of virt-manager windows. (#264162)
* Wed May 02 2007 jfehlig@novell.com
* Tue May 01 2007 jfehlig@novell.com
- Integrated domUloader with 3.0.5. Updated xen-domUloader.diff.
* Mon Apr 30 2007 ccoffing@novell.com
- Update to xen-3.0.5-testing rc4 (changeset 14993).
@ -1495,18 +1508,18 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
responsive and less likely to time out or lock up. Partial fix
for #237406.
- If disk is read-only, pass -r to losetup. (#264158)
* Fri Apr 06 2007 ccoffing@novell.com
* Thu Apr 05 2007 ccoffing@novell.com
- Update vm-install:
+ #260510: do not delete xml settings file
+ #260579: write correct vif line for PV NIC in FV VM
+ #261288: re-enable add disk buttons after deleting a disk
+ #192272, #222765, #250618: Update OS list and their defaults
* Wed Apr 04 2007 ccoffing@novell.com
* Tue Apr 03 2007 ccoffing@novell.com
- Could not do simultaneous installs via virt-manager. (#259917)
* Tue Apr 03 2007 jfehlig@novell.com
* Mon Apr 02 2007 jfehlig@novell.com
- Fix improper handling of guest kernel arguments in domUloader.
Bug #259810
* Tue Apr 03 2007 ccoffing@novell.com
* Mon Apr 02 2007 ccoffing@novell.com
- Update vm-install:
+ #259420: refresh available memory more often
+ #259972: cannot enter autoyast url
@ -1529,11 +1542,11 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Mon Mar 19 2007 ccoffing@novell.com
- Update to xen-unstable changeset 14444.
- Include Ron Terry's network-multi_bridge
* Sat Mar 10 2007 jfehlig@novell.com
* Fri Mar 09 2007 jfehlig@novell.com
- Added lame patch to handle showing suspended state via Xen API.
The patch only affects Xen API and is thus low risk.
Bug #237859
* Sat Mar 10 2007 carnold@novell.com
* Fri Mar 09 2007 carnold@novell.com
- Added AMD support for Vista 64 installation and boot.
* Fri Mar 09 2007 ccoffing@novell.com
- Make vm-install support NFS for SUSE (#241251).
@ -1550,7 +1563,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
PV installation disk)
+ #252437: Allow virtual CDROM to be added (via ISO) even if
physical CDROM doesn't exist
* Thu Mar 08 2007 jfehlig@novell.com
* Wed Mar 07 2007 jfehlig@novell.com
- Fixed bug #252396
+ Added upstream c/s 14021. Applies to Xen API c-bindings -
low risk.
@ -1562,7 +1575,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Tue Mar 06 2007 carnold@novell.com
- Remove a debug message which is spamming the logs during live
migration.
* Tue Mar 06 2007 jfehlig@novell.com
* Mon Mar 05 2007 jfehlig@novell.com
- Fixed handling of vbd type in Xen API <-> sexpr integration.
Bug #250351
+ Updated an existing patch (xend_disk_decorate_rm.patch) and
@ -1570,7 +1583,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
purpose of patch.
* Mon Mar 05 2007 ccoffing@novell.com
- Default apic=0 for SLES 8 and 9, for performance. (#228133)
* Sat Mar 03 2007 carnold@novell.com
* Fri Mar 02 2007 carnold@novell.com
- Xen kernel crashes at domain creation time. Bug #248183.
Fix mouse for win2k hvm guest.
* Fri Mar 02 2007 jfehlig@novell.com
@ -1585,11 +1598,11 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Fri Mar 02 2007 jfehlig@novell.com
- Add check for HVM domain in domain_save. The check is
performed in domain_suspend and should be included here as well.
* Fri Mar 02 2007 ccoffing@novell.com
* Thu Mar 01 2007 ccoffing@novell.com
- Update vm-install:
+ #250201: for linux PVFB, pass xencons=tty if graphics=none
+ #250016: honor non-sparse flag
* Fri Mar 02 2007 jfehlig@novell.com
* Thu Mar 01 2007 jfehlig@novell.com
- Fix exception caused by incorrect method name in xen-messages.diff.
This is one of perhaps several problems with save/restore,
bug #237859
@ -1601,7 +1614,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
+ Updated domUloader to accept '--args' parameter. The args
provided as an option to --args are simply added to the sexpr
returned by domUloader. pygrub has similar behavior.
* Thu Mar 01 2007 ccoffing@novell.com
* Wed Feb 28 2007 ccoffing@novell.com
- Update vm-install:
+ #249013, #228113: default to realtek instead of pcnet
+ #249124: write os-type to config files
@ -1632,7 +1645,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Tue Feb 20 2007 ccoffing@novell.com
- Fix typo in xendomains. (#246107)
- Fix order in which vm-install processes command-line arguments.
* Sat Feb 17 2007 jfehlig@novell.com
* Fri Feb 16 2007 jfehlig@novell.com
- Added changeset 13775 from xen-unstable. This patch fixes
the last known issue with the Xen API patchset backported
from xen-unstable.
@ -1640,7 +1653,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Added c/s 13226 from xen-unstable. It affects Xen API only.
- Added patch to remove ':disk' and 'tap:qcow' from stored domain
config. Fixes bug #237414 and helps with bug #242953.
* Fri Feb 16 2007 jfehlig@novell.com
* Thu Feb 15 2007 jfehlig@novell.com
- Backported Xen API functionality from xen-unstable to support
hosting CIM providers. This functionality is required for
FATE feature 110320. ECO has been approved.
@ -1655,7 +1668,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
Dom0. (#244055) Patches 13630-domctl.patch,
13903-domctl.patch and 13908-domctl.patch
- Updated patch pae-guest-linear-pgtable.patch
* Tue Feb 13 2007 ccoffing@novell.com
* Mon Feb 12 2007 ccoffing@novell.com
- Load xenblk at dom0 start to support bootstrapping from
non-loopback devices. (#242963, #186696)
- Update vm-install:
@ -1665,9 +1678,9 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
+ #240984: properly detach vncviewer
+ #240387: default to absolute coordinate mouse for Windows
- Drop logging patch. (#245150)
* Mon Feb 12 2007 ro@suse.de
* Sun Feb 11 2007 ro@suse.de
- remove -fstack-protector from RPM_OPT_FLAGS for now
* Fri Feb 09 2007 ccoffing@novell.com
* Thu Feb 08 2007 ccoffing@novell.com
- Update vm-install:
+ Allow specifing disk (and disk size) vs. cdrom from CLI
+ Add missing -M/--max-memory parameter to CLI to match GUI
@ -1724,12 +1737,12 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Wed Jan 17 2007 ccoffing@novell.com
- Update xen-vm-install (more disk UI work; support NetWare
response files and licenses)
* Wed Jan 17 2007 ccoffing@novell.com
* Tue Jan 16 2007 ccoffing@novell.com
- Major fixes to xen-vm-install (adding disks in the UI now works,
and fixed several CLI exceptions)
- Microcode does not need to be exactly 2048 bytes (changeset
13079; Kurt)
* Sat Jan 13 2007 ccoffing@novell.com
* Fri Jan 12 2007 ccoffing@novell.com
- Include script to clone SLES 10 domU, from coolsolutions (fate
[#301742])
- Updated patches from Gerd and Jan, including PAE > 4 gig fix,
@ -1739,7 +1752,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Include xen-unstable patches for HVM save/restore and 32-on-64
HVM.
- Update to xen-3.0.4-1 (changeset 13132).
* Thu Jan 11 2007 ccoffing@novell.com
* Wed Jan 10 2007 ccoffing@novell.com
- Update xen-vm-install and domUloader to support NetWare.
- Include AMD's nested page table patches.
* Mon Jan 08 2007 ccoffing@novell.com
@ -1774,7 +1787,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Update to xen-unstable (changeset 12734; feature freeze for
3.0.4)
- Make /etc/xen mode 0700 to protect vnc passwords.
* Tue Nov 28 2006 ccoffing@novell.com
* Mon Nov 27 2006 ccoffing@novell.com
- Fix how bootloader is called by the xend during restarts.
(#223850)
* Wed Nov 22 2006 ccoffing@novell.com
@ -1788,7 +1801,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Fix some problems in the xen-hvm-default-bridge patch. (#219092)
- xmlrpc isn't 64-bit clean, causing xend to get exceptions when
PFN is > 2 GB. (#220418)
* Tue Nov 14 2006 kallan@novell.com
* Mon Nov 13 2006 kallan@novell.com
- Backport changesets 11847, 11888, 1189[6-9], 119[00-18], 11974,
1203[0-2], and 12205 from xen-unstable so that the PV drivers
can compile on older kernels such as sles9 and rhel4
@ -1870,7 +1883,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Tue Aug 29 2006 ccoffing@novell.com
- xendomains does not actually save domains. (#201349)
- Update to xen-unstable changeset 11299.
* Tue Aug 29 2006 ccoffing@novell.com
* Mon Aug 28 2006 ccoffing@novell.com
- Fix incorrect path on x86_64 for vncfb and sdlfb.
* Thu Aug 17 2006 ccoffing@novell.com
- Improve xendomains init script, to handle unset sysconfig vars.
@ -2159,12 +2172,12 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
+ 9666: Fix HVM hang; was broken due to previous "hda lost
interrupt" patch. (#169146)
+ 9667: Do not set GP fault in VMCS for VMX (no bug#; from Intel)
* Fri May 05 2006 cgriffin@novell.com
* Thu May 04 2006 cgriffin@novell.com
- Update xen-3.0-testing tree, changeset 9664:
+ Changesets 9663 and 9664 fix AMD fully virtualized
guests causing the system to reboot when
first starting up. (#169855)
* Fri May 05 2006 cgriffin@novell.com
* Thu May 04 2006 cgriffin@novell.com
- With a Xen domain set up with a loop-mountable file as rootfs,
the "xm start " invocation fails. The cause is a bug
domUloader.py (#172586)
@ -2273,7 +2286,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Fix default localtime for full (Bruce Rogers).
- Fix path in mk-xen-resue-img.sh (#163622).
- Update README (pathnames, yast2-vm descriptions, terminology).
* Tue Apr 04 2006 garloff@suse.de
* Mon Apr 03 2006 garloff@suse.de
- init script: Test for control_d in capabilities to determine dom0
rather than privcmd.
- init script: Try loading netloop and backend modules.
@ -2317,7 +2330,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Removed the intermediate sym-link between xen.gz and
xen-<version>-<release>.gz. Grub 0.97 XFS can not handle a
double indirect to a file. (#151792)
* Tue Mar 14 2006 garloff@suse.de
* Mon Mar 13 2006 garloff@suse.de
- Update README.SuSE: Document limits (mem, cpu hotplug, max_loop),
more network troubleshooting, update security info.
- Be more tolerant against errors in ifdown/ifup to better coexist
@ -2348,7 +2361,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Fix build of hvmloader and vmxassist by removing external
CFLAGS (XS changeset #9110).
- Fix build by forcing --prefix during installation of *.py.
* Thu Mar 02 2006 ccoffing@novell.com
* Wed Mar 01 2006 ccoffing@novell.com
- Update to hg 9029 (xen-unstable tree). Adds support for HVM on
64 bit hardware.
- Update vncmouse diff to 20060301 from Intel; compensates for lack
@ -2383,7 +2396,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Update to hg 8870 (xen-unstable tree). More HVM fixes.
- Remove duplicate balloon.free call.
- Add patch from Intel to fix dom0 crash on 64 bit SMP HVM.
* Fri Feb 17 2006 carnold@novell.com
* Thu Feb 16 2006 carnold@novell.com
- Update to hg 8858 (xen-unstable tree).
* Wed Feb 15 2006 ccoffing@novell.com
- Update to hg 8857 (xen-unstable tree). Syncs hypervisor core
@ -2447,7 +2460,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Fix gcc 4.1 warnings.
* Wed Dec 07 2005 ccoffing@novell.com
- Update to hg 8241 (xen-3.0-testing).
* Tue Nov 29 2005 ccoffing@novell.com
* Mon Nov 28 2005 ccoffing@novell.com
- Update to hg 8073.
- Rationalize command names (eg, setsize -> xentrace-setsize).
- Fix gcc 4.1 warnings.
@ -2457,7 +2470,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Include a few simple, obvious fixes from upstream.
- Build xm-test package.
- Update udev scripts.
* Tue Nov 15 2005 ccoffing@novell.com
* Mon Nov 14 2005 ccoffing@novell.com
- Includes upstream fixes to fix i586 save/restore.
* Thu Nov 10 2005 ccoffing@novell.com
- Include a few simple, obvious fixes: 7609, 7618, 7636, 7689,
@ -2514,7 +2527,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Sat Sep 10 2005 garloff@suse.de
- Update to hg 6715.
- Fix network-bridge down.
* Thu Sep 08 2005 garloff@suse.de
* Wed Sep 07 2005 garloff@suse.de
- Build PAE version along non-PAE version of Hypervisor.
* Tue Sep 06 2005 garloff@suse.de
- Try to fix network bridge down issue.
@ -2545,12 +2558,12 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Include linux-public headers in xen-devel package.
* Sun Aug 21 2005 garloff@suse.de
- Update to hg 6305.
* Sun Aug 21 2005 garloff@suse.de
* Sat Aug 20 2005 garloff@suse.de
- Update to hg 6299.
- Enable VNC support (depending on LibVNCServer).
* Sun Aug 21 2005 garloff@suse.de
- Split off xen-tools-ioemu for supporting unmodified guests.
* Sat Aug 20 2005 garloff@suse.de
- Split off xen-tools-ioemu for supporting unmodified guests.
* Fri Aug 19 2005 garloff@suse.de
- Enable pygrub (at the cost of depending on e2fsprogs-devel)
- Enable VMX ioemu SDL support (at the cost of many dependencies)
* Fri Aug 19 2005 garloff@suse.de
@ -2583,7 +2596,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
* Fri Jun 10 2005 garloff@suse.de
- Update to latest 2.0-testing snapshot.
- Use RPM version and release no as xen version.
* Wed Jun 08 2005 garloff@suse.de
* Tue Jun 07 2005 garloff@suse.de
- Update mk-xen-rescue-img.sh script: Handle SLES9 better.
- Export PYTHONOPTIMIZE in xend start script.
* Mon Jun 06 2005 garloff@suse.de
@ -2626,7 +2639,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- tgif not needed any more.
* Tue Mar 01 2005 garloff@suse.de
- Include serial-split from Charles Coffing.
* Tue Mar 01 2005 garloff@suse.de
* Mon Feb 28 2005 garloff@suse.de
- Update xen to latest snapshot.
* Mon Feb 21 2005 garloff@suse.de
- Update README.SuSE.
@ -2636,16 +2649,16 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Add bridge-utils dependency.
- Update config file and README.
- Activate xend init script on installation.
* Thu Feb 10 2005 ro@suse.de
* Wed Feb 09 2005 ro@suse.de
- remove te_etex and te_pdf from neededforbuild.
* Thu Feb 10 2005 garloff@suse.de
* Wed Feb 09 2005 garloff@suse.de
- Update README about IDE dma.
- Default to dhcp.
* Wed Feb 09 2005 garloff@suse.de
- Update to xen post-2.0.4.
- Little bugfix for xen rescue install script.
- Update README.SUSE: Better explanation of root FS creation.
* Mon Jan 24 2005 garloff@suse.de
* Sun Jan 23 2005 garloff@suse.de
- Change some defaults to be more secure (xend only binds to
localhost, ip spoof protection on).
- Avoid ipv6 issue with xend network script.
@ -2655,7 +2668,7 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/xen/bin/qemu-dm.debug
- Put boot.local script in root img to parse ip boot par.
* Thu Jan 20 2005 garloff@suse.de
- Update to newer snapshot.
* Thu Jan 20 2005 garloff@suse.de
* Wed Jan 19 2005 garloff@suse.de
- Update to xen-2.0-unstable (post 2.0.3).
* Thu Dec 09 2004 garloff@suse.de
- Initial creation of package xen, xen-doc-*.

View File

@ -2,7 +2,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -3224,6 +3224,14 @@ class XendDomainInfo:
@@ -3239,6 +3239,14 @@ class XendDomainInfo:
if not config.has_key('backend'):
config['backend'] = "00000000-0000-0000-0000-000000000000"

View File

@ -2,7 +2,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -1859,7 +1859,7 @@ class XendDomainInfo:
@@ -1867,7 +1867,7 @@ class XendDomainInfo:
try:
if not corefile:
this_time = time.strftime("%Y-%m%d-%H%M.%S", time.localtime())

View File

@ -170,9 +170,9 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
try:
+ self.acquire_running_lock();
self._constructDomain()
self._storeVmDetails()
self._createChannels()
@@ -2316,6 +2320,11 @@ class XendDomainInfo:
try:
@@ -2331,6 +2335,11 @@ class XendDomainInfo:
self._stateSet(DOM_STATE_HALTED)
self.domid = None # Do not push into _stateSet()!
@ -184,7 +184,7 @@ Index: xen-3.3.1-testing/tools/python/xen/xend/XendDomainInfo.py
finally:
self.refresh_shutdown_lock.release()
@@ -3537,6 +3546,74 @@ class XendDomainInfo:
@@ -3552,6 +3561,74 @@ class XendDomainInfo:
def has_device(self, dev_class, dev_uuid):
return (dev_uuid in self.info['%s_refs' % dev_class.lower()])

View File

@ -23,7 +23,7 @@
#
# Defaults
#
VERSION=0.4.3
VERSION=0.4.4
XEN_CONFIGS=/etc/xen/vm/
XEN_BASE=/var/lib/xen/images/
SOURCE=
@ -606,9 +606,42 @@ then
#
# Mount the newly copied image file
#
loopdev=''
for dev in /dev/loop*
do
if [ ! -b "$dev" ]
then
continue
fi
status=$(losetup "$dev" 2>/dev/null) || status=''
if [ ! "$status" ]
then
status=$(losetup $dev "$DISKIMAGE")
if [ ! "$status" ]
then
kpartx -a $dev
loopdev=$dev
break
fi
fi
done
if [ ! "$loopdev" ]
then
echo "No loopback devices available." >&2
exit 1
fi
echo -n "Trying to mount partition $PART of $DISKIMAGE ... "
lomount -diskimage "$DISKIMAGE" -partition $PART "$tmpdir" \
|| continue
mapperdev=$(echo "$loopdev" | sed -e 's/dev\//dev\/mapper\//g')p$PART
status=$(mount -o rw $mapperdev "$tmpdir")
if [ "$status" ]
then
kpartx -d $loopdev
losetup -d $loopdev
continue
fi
echo "succeeded."
pushd "$tmpdir" > /dev/null
@ -629,6 +662,8 @@ then
then
echo "Unable to find ethernet file in image file" 2>&1
cd /tmp; umount "$tmpdir"; rmdir "$tmpdir"
kpartx -d $loopdev
losetup -d $loopdev
exit 1
fi
mv -f "$ETH0" ifcfg-eth-id-$MAC
@ -681,6 +716,8 @@ then
then
echo "Unable to change the HOSTNAME from $oldHOSTNAME to $HOSTNAME" >&2
cd /tmp; umount "$tmpdir"; rmdir "$tmpdir"
kpartx -d $loopdev
losetup -d $loopdev
exit 1
fi
FQDN=`cat HOSTNAME`
@ -699,6 +736,8 @@ then
popd > /dev/null
umount "$tmpdir"
kpartx -d $loopdev
losetup -d $loopdev
done
rmdir "$tmpdir"