WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] Merge

# HG changeset patch
# User Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
# Date 1277743216 -3600
# Node ID 7b00193bd0334606b6f6779c3f14a1667a952fe4
# Parent  83638d735b9710504197c077a44c117d4facd082
# Parent  059a12afce52a213db56bd8e9442d9eeadfdd34c
Merge
---
 xen/common/trace.c            |    3 ++-
 xen/drivers/passthrough/io.c  |    2 +-
 xen/drivers/passthrough/pci.c |    4 +++-
 xen/include/xen/iommu.h       |    1 +
 4 files changed, 7 insertions(+), 3 deletions(-)

diff -r 83638d735b97 -r 7b00193bd033 xen/common/trace.c
--- a/xen/common/trace.c        Mon Jun 28 17:35:10 2010 +0100
+++ b/xen/common/trace.c        Mon Jun 28 17:40:16 2010 +0100
@@ -130,7 +130,8 @@ static int alloc_trace_bufs(void)
         char         *rawbuf;
         struct t_buf *buf;
 
-        if ( (rawbuf = alloc_xenheap_pages(order, 0)) == NULL )
+        if ( (rawbuf = alloc_xenheap_pages(
+                order, MEMF_bits(32 + PAGE_SHIFT))) == NULL )
         {
             printk("Xen trace buffers: memory allocation failed\n");
             opt_tbuf_size = 0;
diff -r 83638d735b97 -r 7b00193bd033 xen/drivers/passthrough/io.c
--- a/xen/drivers/passthrough/io.c      Mon Jun 28 17:35:10 2010 +0100
+++ b/xen/drivers/passthrough/io.c      Mon Jun 28 17:40:16 2010 +0100
@@ -28,7 +28,7 @@
 
 static void hvm_dirq_assist(unsigned long _d);
 
-static int pt_irq_need_timer(uint32_t flags)
+bool_t pt_irq_need_timer(uint32_t flags)
 {
     return !(flags & (HVM_IRQ_DPCI_GUEST_MSI | HVM_IRQ_DPCI_TRANSLATE));
 }
diff -r 83638d735b97 -r 7b00193bd033 xen/drivers/passthrough/pci.c
--- a/xen/drivers/passthrough/pci.c     Mon Jun 28 17:35:10 2010 +0100
+++ b/xen/drivers/passthrough/pci.c     Mon Jun 28 17:40:16 2010 +0100
@@ -260,7 +260,9 @@ static void pci_clean_dpci_irqs(struct d
               i = find_next_bit(hvm_irq_dpci->mapping, d->nr_pirqs, i + 1) )
         {
             pirq_guest_unbind(d, i);
-            kill_timer(&hvm_irq_dpci->hvm_timer[domain_pirq_to_irq(d, i)]);
+
+            if ( pt_irq_need_timer(hvm_irq_dpci->mirq[i].flags) )
+                kill_timer(&hvm_irq_dpci->hvm_timer[domain_pirq_to_irq(d, i)]);
 
             list_for_each_safe ( digl_list, tmp,
                                  &hvm_irq_dpci->mirq[i].digl_list )
diff -r 83638d735b97 -r 7b00193bd033 xen/include/xen/iommu.h
--- a/xen/include/xen/iommu.h   Mon Jun 28 17:35:10 2010 +0100
+++ b/xen/include/xen/iommu.h   Mon Jun 28 17:40:16 2010 +0100
@@ -100,6 +100,7 @@ struct hvm_irq_dpci *domain_get_irq_dpci
 struct hvm_irq_dpci *domain_get_irq_dpci(struct domain *domain);
 int domain_set_irq_dpci(struct domain *domain, struct hvm_irq_dpci *dpci);
 void free_hvm_irq_dpci(struct hvm_irq_dpci *dpci);
+bool_t pt_irq_need_timer(uint32_t flags);
 
 #define PT_IRQ_TIME_OUT MILLISECS(8)
 #define VTDPREFIX "[VT-D]"

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>