All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20130326234703.GF30540@8bytes.org>

diff --git a/a/1.txt b/N1/1.txt
index 9613961..477287b 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1 +1,51 @@
 (Sending again with the zsmalloc driver writers on the list)
+
+>From c8530ea21e65c21d27882fa334145c347b9a024b Mon Sep 17 00:00:00 2001
+From: Joerg Roedel <joro@8bytes.org>
+Date: Tue, 26 Mar 2013 23:24:22 +0100
+Subject: [PATCH] staging: zsmalloc: Fix link error on ARM
+
+Testing the arm chromebook config against the upstream
+kernel produces a linker error for the zsmalloc module from
+staging. The symbol flush_tlb_kernel_range is not available
+there. Fix this by removing the reimplementation of
+unmap_kernel_range in the zsmalloc module and using the
+function directly.
+
+Signed-off-by: Joerg Roedel <joro@8bytes.org>
+---
+ drivers/staging/zsmalloc/zsmalloc-main.c |    5 +----
+ mm/vmalloc.c                             |    1 +
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/staging/zsmalloc/zsmalloc-main.c b/drivers/staging/zsmalloc/zsmalloc-main.c
+index e78d262..324e123 100644
+--- a/drivers/staging/zsmalloc/zsmalloc-main.c
++++ b/drivers/staging/zsmalloc/zsmalloc-main.c
+@@ -656,11 +656,8 @@ static inline void __zs_unmap_object(struct mapping_area *area,
+ 				struct page *pages[2], int off, int size)
+ {
+ 	unsigned long addr = (unsigned long)area->vm_addr;
+-	unsigned long end = addr + (PAGE_SIZE * 2);
+ 
+-	flush_cache_vunmap(addr, end);
+-	unmap_kernel_range_noflush(addr, PAGE_SIZE * 2);
+-	flush_tlb_kernel_range(addr, end);
++	unmap_kernel_range(addr, PAGE_SIZE * 2);
+ }
+ 
+ #else /* USE_PGTABLE_MAPPING */
+diff --git a/mm/vmalloc.c b/mm/vmalloc.c
+index 0f751f2..f7cba11 100644
+--- a/mm/vmalloc.c
++++ b/mm/vmalloc.c
+@@ -1266,6 +1266,7 @@ void unmap_kernel_range(unsigned long addr, unsigned long size)
+ 	vunmap_page_range(addr, end);
+ 	flush_tlb_kernel_range(addr, end);
+ }
++EXPORT_SYMBOL_GPL(unmap_kernel_range);
+ 
+ int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages)
+ {
+-- 
+1.7.9.5
diff --git a/a/content_digest b/N1/content_digest
index bfa00bc..116ff00 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -12,6 +12,56 @@
  " linux-mm@kvack.org\0"
  "\00:1\0"
  "b\0"
- (Sending again with the zsmalloc driver writers on the list)
+ "(Sending again with the zsmalloc driver writers on the list)\n"
+ "\n"
+ ">From c8530ea21e65c21d27882fa334145c347b9a024b Mon Sep 17 00:00:00 2001\n"
+ "From: Joerg Roedel <joro@8bytes.org>\n"
+ "Date: Tue, 26 Mar 2013 23:24:22 +0100\n"
+ "Subject: [PATCH] staging: zsmalloc: Fix link error on ARM\n"
+ "\n"
+ "Testing the arm chromebook config against the upstream\n"
+ "kernel produces a linker error for the zsmalloc module from\n"
+ "staging. The symbol flush_tlb_kernel_range is not available\n"
+ "there. Fix this by removing the reimplementation of\n"
+ "unmap_kernel_range in the zsmalloc module and using the\n"
+ "function directly.\n"
+ "\n"
+ "Signed-off-by: Joerg Roedel <joro@8bytes.org>\n"
+ "---\n"
+ " drivers/staging/zsmalloc/zsmalloc-main.c |    5 +----\n"
+ " mm/vmalloc.c                             |    1 +\n"
+ " 2 files changed, 2 insertions(+), 4 deletions(-)\n"
+ "\n"
+ "diff --git a/drivers/staging/zsmalloc/zsmalloc-main.c b/drivers/staging/zsmalloc/zsmalloc-main.c\n"
+ "index e78d262..324e123 100644\n"
+ "--- a/drivers/staging/zsmalloc/zsmalloc-main.c\n"
+ "+++ b/drivers/staging/zsmalloc/zsmalloc-main.c\n"
+ "@@ -656,11 +656,8 @@ static inline void __zs_unmap_object(struct mapping_area *area,\n"
+ " \t\t\t\tstruct page *pages[2], int off, int size)\n"
+ " {\n"
+ " \tunsigned long addr = (unsigned long)area->vm_addr;\n"
+ "-\tunsigned long end = addr + (PAGE_SIZE * 2);\n"
+ " \n"
+ "-\tflush_cache_vunmap(addr, end);\n"
+ "-\tunmap_kernel_range_noflush(addr, PAGE_SIZE * 2);\n"
+ "-\tflush_tlb_kernel_range(addr, end);\n"
+ "+\tunmap_kernel_range(addr, PAGE_SIZE * 2);\n"
+ " }\n"
+ " \n"
+ " #else /* USE_PGTABLE_MAPPING */\n"
+ "diff --git a/mm/vmalloc.c b/mm/vmalloc.c\n"
+ "index 0f751f2..f7cba11 100644\n"
+ "--- a/mm/vmalloc.c\n"
+ "+++ b/mm/vmalloc.c\n"
+ "@@ -1266,6 +1266,7 @@ void unmap_kernel_range(unsigned long addr, unsigned long size)\n"
+ " \tvunmap_page_range(addr, end);\n"
+ " \tflush_tlb_kernel_range(addr, end);\n"
+ " }\n"
+ "+EXPORT_SYMBOL_GPL(unmap_kernel_range);\n"
+ " \n"
+ " int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages)\n"
+ " {\n"
+ "-- \n"
+ 1.7.9.5
 
-24e08732b3a8282ba9c91c02ac85eae0608c037bc0ddd3f223d97115c1242119
+cdbb4b738bd26c7778c5b999ad0cf1e6f950ff24a628bfa6e88d08010add7993

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.