[packages/xen/xen4.1] Up to 4.1.3; branched, might be useful

mmazur mmazur at pld-linux.org
Wed Sep 19 14:58:49 CEST 2012


commit 4e5f6a72c280ab762232a41cee22e8cc6dc40199
Author: Mariusz Mazur <mmazur at pld-linux.org>
Date:   Wed Sep 19 14:56:53 2012 +0200

    Up to 4.1.3; branched, might be useful

 pygrubfix2.patch                                   | 92 ----------------------
 ...-3cf61880403b4e484539596a95937cc066243388.patch | 43 ----------
 xen-4.1-testing.23190.patch                        | 64 ---------------
 xend.empty.xml.patch                               | 15 ----
 4 files changed, 214 deletions(-)
---
diff --git a/pygrubfix2.patch b/pygrubfix2.patch
deleted file mode 100644
index 7f308c6..0000000
--- a/pygrubfix2.patch
+++ /dev/null
@@ -1,92 +0,0 @@
---- xen-4.1.2/tools/pygrub/src/pygrub.orig	2011-10-13 18:56:41.000000000 +0100
-+++ xen-4.1.2/tools/pygrub/src/pygrub	2011-10-13 20:46:58.000000000 +0100
-@@ -78,9 +78,17 @@
- def get_fs_offset_gpt(file):
-     fd = os.open(file, os.O_RDONLY)
-     # assume the first partition is an EFI system partition.
--    os.lseek(fd, SECTOR_SIZE * 2, 0)
-+    os.lseek(fd, SECTOR_SIZE, 0)
-     buf = os.read(fd, 512)
--    return struct.unpack("<Q", buf[32:40])[0] * SECTOR_SIZE
-+    partcount = struct.unpack("<L", buf[80:84])[0]
-+    partsize = struct.unpack("<L", buf[84:88])[0]
-+    i = partcount
-+    offsets = []
-+    while i>0:
-+        buf = os.read(fd, partsize)
-+        offsets.append(struct.unpack("<Q", buf[32:40])[0] * SECTOR_SIZE)
-+        i -= 1
-+    return offsets
- 
- FDISK_PART_SOLARIS=0xbf
- FDISK_PART_SOLARIS_OLD=0x82
-@@ -116,7 +124,9 @@
-                 continue # no solaris magic at that offset, ignore partition
- 
-         if type == FDISK_PART_GPT:
--            offset = get_fs_offset_gpt(file)
-+            for offset in get_fs_offset_gpt(file):
-+                part_offs.append(offset)
-+            break
- 
-         # Active partition has 0x80 as the first byte.
-         # If active, prepend to front of list, otherwise append to back.
-@@ -394,7 +404,8 @@
-                            ["/boot/grub/menu.lst", "/boot/grub/grub.conf",
-                             "/grub/menu.lst", "/grub/grub.conf"]) + \
-                        map(lambda x: (x,grub.GrubConf.Grub2ConfigFile),
--                           ["/boot/grub/grub.cfg", "/grub/grub.cfg"]) + \
-+                           ["/boot/grub/grub.cfg", "/grub/grub.cfg",
-+                            "/boot/grub2/grub.cfg", "/grub2/grub.cfg"]) + \
-                        map(lambda x: (x,grub.ExtLinuxConf.ExtLinuxConfigFile),
-                            ["/boot/isolinux/isolinux.cfg",
-                             "/boot/extlinux.conf"])
---- xen-4.1.2/tools/pygrub/src/GrubConf.py.orig	2011-10-08 19:42:10.000000000 +0100
-+++ xen-4.1.2/tools/pygrub/src/GrubConf.py	2011-10-14 21:08:44.000000000 +0100
-@@ -79,6 +79,8 @@
-         val = val.replace("(", "").replace(")", "")
-         if val[:5] == "msdos":
-             val = val[5:]
-+        if val[:3] == "gpt":
-+            val = val[3:]
-         self._part = int(val)
-     part = property(get_part, set_part)
- 
-@@ -368,6 +370,7 @@
-         in_function = False
-         img = None
-         title = ""
-+        menu_level=0
-         for l in lines:
-             l = l.strip()
-             # skip blank lines
-@@ -394,10 +397,18 @@
-                 img = []
-                 title = title_match.group(1)
-                 continue
--            
-+
-+            if l.startswith("submenu"):
-+                menu_level += 1
-+                continue
-+
-             if l.startswith("}"):
-                 if img is None:
--                    raise RuntimeError, "syntax error: closing brace without menuentry"
-+                    if menu_level > 0:
-+                        menu_level -= 1
-+                        continue
-+                    else:
-+                        raise RuntimeError, "syntax error: closing brace without menuentry"
- 
-                 self.add_image(Grub2Image(title, img))
-                 img = None
-@@ -414,6 +425,8 @@
-                 
-             if self.commands.has_key(com):
-                 if self.commands[com] is not None:
-+                    if arg.strip() == "${saved_entry}":
-+                        arg = "0"
-                     setattr(self, self.commands[com], arg.strip())
-                 else:
-                     logging.info("Ignored directive %s" %(com,))
diff --git a/qemu-xen-4.1-testing.git-3cf61880403b4e484539596a95937cc066243388.patch b/qemu-xen-4.1-testing.git-3cf61880403b4e484539596a95937cc066243388.patch
deleted file mode 100644
index 3b9933a..0000000
--- a/qemu-xen-4.1-testing.git-3cf61880403b4e484539596a95937cc066243388.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 3cf61880403b4e484539596a95937cc066243388 Mon Sep 17 00:00:00 2001
-From: Ian Campbell <Ian.Campbell at citrix.com>
-Date: Thu, 2 Feb 2012 13:47:06 +0000
-Subject: [PATCH] e1000: bounds packet size against buffer size
-
-Otherwise we can write beyond the buffer and corrupt memory.  This is tracked
-as CVE-2012-0029.
-
-Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
-
-(Backported from qemu upstream 65f82df0d7a71ce1b10cd4c5ab08888d176ac840
- by Ian Campbell.)
-
-Signed-off-by: Ian Campbell <Ian.Campbell at citrix.com>
-(cherry picked from commit ebe37b2a3f844bad02dcc30d081f39eda06118f8)
----
- hw/e1000.c |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/tools/ioemu-qemu-xen/hw/e1000.c b/tools/ioemu-qemu-xen/hw/e1000.c
-index bb3689e..97104ed 100644
---- a/tools/ioemu-qemu-xen/hw/e1000.c
-+++ b/tools/ioemu-qemu-xen/hw/e1000.c
-@@ -444,6 +444,8 @@ process_tx_desc(E1000State *s, struct e1000_tx_desc *dp)
-             bytes = split_size;
-             if (tp->size + bytes > msh)
-                 bytes = msh - tp->size;
-+
-+            bytes = MIN(sizeof(tp->data) - tp->size, bytes);
-             cpu_physical_memory_read(addr, tp->data + tp->size, bytes);
-             if ((sz = tp->size + bytes) >= hdr && tp->size < hdr)
-                 memmove(tp->header, tp->data, hdr);
-@@ -459,6 +461,7 @@ process_tx_desc(E1000State *s, struct e1000_tx_desc *dp)
-         // context descriptor TSE is not set, while data descriptor TSE is set
-         DBGOUT(TXERR, "TCP segmentaion Error\n");
-     } else {
-+        split_size = MIN(sizeof(tp->data) - tp->size, split_size);
-         cpu_physical_memory_read(addr, tp->data + tp->size, split_size);
-         tp->size += split_size;
-     }
--- 
-1.7.2.5
-
diff --git a/xen-4.1-testing.23190.patch b/xen-4.1-testing.23190.patch
deleted file mode 100644
index 2c51bc8..0000000
--- a/xen-4.1-testing.23190.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-
-# HG changeset patch
-# User Stefano Stabellini <stefano.stabellini at eu.citrix.com>
-# Date 1321623485 0
-# Node ID 5a00ccfc63915650b8e1a262c2cad8e8d8670612
-# Parent  e73ada19a69daf821aa7d80323f1bd76239b9bae
-x86: re-inject emulated level pirqs in PV on HVM guests if still asserted
-
-PV on HVM guests can loose level interrupts coming from emulated
-devices if they have been remapped onto event channels.  The reason is
-that we are missing the code to inject a pirq again in the guest when
-the guest EOIs it, if it corresponds to an emulated level interrupt
-and the interrupt is still asserted.
-
-Fix this issue and also return error when the guest tries to get the
-irq_status of a non-existing pirq.
-
-
-Changes in this backport:
- - move the spinlock afterward to cover the new code only.
-
-Signed-off-by: Stefano Stabellini <stefano.stabellini at eu.citrix.com>
-Committed-by: Keir Fraser <keir at xen.org>
-xen-unstable changeset:   24007:0526644ad2a6
-xen-unstable date:        Thu Oct 27 16:07:18 2011 +0100
-
-diff -r e73ada19a69d -r 5a00ccfc6391 xen/arch/x86/physdev.c
---- a/xen/arch/x86/physdev.c	Thu Nov 17 09:13:25 2011 +0000
-+++ b/xen/arch/x86/physdev.c	Fri Nov 18 13:38:05 2011 +0000
-@@ -268,6 +268,20 @@
-             ret = pirq_guest_eoi(v->domain, eoi.irq);
-         else
-             ret = 0;
-+        spin_lock(&v->domain->event_lock);
-+        if ( is_hvm_domain(v->domain) &&
-+                domain_pirq_to_emuirq(v->domain, eoi.irq) > 0 )
-+        {
-+            struct hvm_irq *hvm_irq = &v->domain->arch.hvm_domain.irq;
-+            int gsi = domain_pirq_to_emuirq(v->domain, eoi.irq);
-+
-+            /* if this is a level irq and count > 0, send another
-+             * notification */ 
-+            if ( gsi >= NR_ISAIRQS /* ISA irqs are edge triggered */
-+                    && hvm_irq->gsi_assert_count[gsi] )
-+                send_guest_pirq(v->domain, eoi.irq);
-+        }
-+        spin_unlock(&v->domain->event_lock);
-         break;
-     }
- 
-@@ -323,9 +337,10 @@
-             break;
-         irq_status_query.flags = 0;
-         if ( is_hvm_domain(v->domain) &&
--             domain_pirq_to_irq(v->domain, irq) <= 0 )
-+                domain_pirq_to_irq(v->domain, irq) <= 0 &&
-+                domain_pirq_to_emuirq(v->domain, irq) == IRQ_UNBOUND )
-         {
--            ret = copy_to_guest(arg, &irq_status_query, 1) ? -EFAULT : 0;
-+            ret = -EINVAL;
-             break;
-         }
- 
-
diff --git a/xend.empty.xml.patch b/xend.empty.xml.patch
deleted file mode 100644
index e3f29d3..0000000
--- a/xend.empty.xml.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-http://lists.xensource.com/archives/html/xen-devel/2011-11/msg00218.html
-
-diff -r 54a5e994a241 -r 76391f599433 tools/python/xen/xend/XendStateStore.py
---- a/tools/python/xen/xend/XendStateStore.py   Wed Nov 02 17:09:09 2011 +0000
-+++ b/tools/python/xen/xend/XendStateStore.py   Thu Nov 03 12:02:44 2011 -0400
-@@ -101,6 +101,9 @@ class XendStateStore:
-         if not os.path.exists(xml_path):
-             return {}
- 
-+        if not os.path.getsize(xml_path) == 0:
-+            return {}
-+
-         dom = minidom.parse(xml_path)
-         root = dom.documentElement
-         state = {}
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/xen.git/commitdiff/4e5f6a72c280ab762232a41cee22e8cc6dc40199



More information about the pld-cvs-commit mailing list