summaryrefslogtreecommitdiff
path: root/debian/patches/0001-i386-avoid-compiler-warning.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/0001-i386-avoid-compiler-warning.patch')
-rw-r--r--debian/patches/0001-i386-avoid-compiler-warning.patch118
1 files changed, 118 insertions, 0 deletions
diff --git a/debian/patches/0001-i386-avoid-compiler-warning.patch b/debian/patches/0001-i386-avoid-compiler-warning.patch
new file mode 100644
index 0000000..72a9c92
--- /dev/null
+++ b/debian/patches/0001-i386-avoid-compiler-warning.patch
@@ -0,0 +1,118 @@
+From 8b026d66eb22e1fcf1cb03974606dca991aae392 Mon Sep 17 00:00:00 2001
+From: Justus Winter <4winter@informatik.uni-hamburg.de>
+Date: Sun, 17 May 2015 15:10:18 +0200
+Subject: [PATCH gnumach 01/10] i386: avoid compiler warning
+
+* i386/i386/phys.c (pmap_zero_page, pmap_copy_page, copy_to_phys,
+copy_from_phys): Avoid compiler warning about `map' being used
+uninitialized.
+---
+ i386/i386/phys.c | 25 +++++++++++++++----------
+ 1 file changed, 15 insertions(+), 10 deletions(-)
+
+diff --git a/i386/i386/phys.c b/i386/i386/phys.c
+index 3af508f..d55bdd9 100644
+--- a/i386/i386/phys.c
++++ b/i386/i386/phys.c
+@@ -52,8 +52,9 @@ pmap_zero_page(vm_offset_t p)
+ assert(p != vm_page_fictitious_addr);
+ vm_offset_t v;
+ pmap_mapwindow_t *map;
++ boolean_t mapped = p >= phys_last_addr;
+
+- if (p >= phys_last_addr)
++ if (mapped)
+ {
+ map = pmap_get_mapwindow(INTEL_PTE_W(p));
+ v = map->vaddr;
+@@ -63,7 +64,7 @@ pmap_zero_page(vm_offset_t p)
+
+ memset((void*) v, 0, PAGE_SIZE);
+
+- if (p >= phys_last_addr)
++ if (mapped)
+ pmap_put_mapwindow(map);
+ }
+
+@@ -77,10 +78,12 @@ pmap_copy_page(
+ {
+ vm_offset_t src_addr_v, dst_addr_v;
+ pmap_mapwindow_t *src_map, *dst_map;
++ boolean_t src_mapped = src >= phys_last_addr;
++ boolean_t dst_mapped = dst >= phys_last_addr;
+ assert(src != vm_page_fictitious_addr);
+ assert(dst != vm_page_fictitious_addr);
+
+- if (src >= phys_last_addr)
++ if (src_mapped)
+ {
+ src_map = pmap_get_mapwindow(INTEL_PTE_R(src));
+ src_addr_v = src_map->vaddr;
+@@ -88,7 +91,7 @@ pmap_copy_page(
+ else
+ src_addr_v = phystokv(src);
+
+- if (dst >= phys_last_addr)
++ if (dst_mapped)
+ {
+ dst_map = pmap_get_mapwindow(INTEL_PTE_W(dst));
+ dst_addr_v = dst_map->vaddr;
+@@ -98,9 +101,9 @@ pmap_copy_page(
+
+ memcpy((void *) dst_addr_v, (void *) src_addr_v, PAGE_SIZE);
+
+- if (src >= phys_last_addr)
++ if (src_mapped)
+ pmap_put_mapwindow(src_map);
+- if (dst >= phys_last_addr)
++ if (dst_mapped)
+ pmap_put_mapwindow(dst_map);
+ }
+
+@@ -117,10 +120,11 @@ copy_to_phys(
+ {
+ vm_offset_t dst_addr_v;
+ pmap_mapwindow_t *dst_map;
++ boolean_t mapped = dst_addr_p >= phys_last_addr;
+ assert(dst_addr_p != vm_page_fictitious_addr);
+ assert(pa_to_pte(dst_addr_p + count-1) == pa_to_pte(dst_addr_p));
+
+- if (dst_addr_p >= phys_last_addr)
++ if (mapped)
+ {
+ dst_map = pmap_get_mapwindow(INTEL_PTE_W(dst_addr_p));
+ dst_addr_v = dst_map->vaddr;
+@@ -130,7 +134,7 @@ copy_to_phys(
+
+ memcpy((void *)dst_addr_v, (void *)src_addr_v, count);
+
+- if (dst_addr_p >= phys_last_addr)
++ if (mapped)
+ pmap_put_mapwindow(dst_map);
+ }
+
+@@ -148,10 +152,11 @@ copy_from_phys(
+ {
+ vm_offset_t src_addr_v;
+ pmap_mapwindow_t *src_map;
++ boolean_t mapped = src_addr_p >= phys_last_addr;
+ assert(src_addr_p != vm_page_fictitious_addr);
+ assert(pa_to_pte(src_addr_p + count-1) == pa_to_pte(src_addr_p));
+
+- if (src_addr_p >= phys_last_addr)
++ if (mapped)
+ {
+ src_map = pmap_get_mapwindow(INTEL_PTE_R(src_addr_p));
+ src_addr_v = src_map->vaddr;
+@@ -161,7 +166,7 @@ copy_from_phys(
+
+ memcpy((void *)dst_addr_v, (void *)src_addr_v, count);
+
+- if (src_addr_p >= phys_last_addr)
++ if (mapped)
+ pmap_put_mapwindow(src_map);
+ }
+
+--
+2.1.4
+