Skip to contentSkip to conversation

percpu: fix dynamic percpu allocators on UP

PATCH In review Namhyung Kim 2 participants 2 messages Aug 6, 2010 – Aug 7, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 2/5 percpu: fix dynamic percpu allocators on UP

handle __percpu address space correctly in dynamic allocators of UP

---
 mm/percpu_up.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
mm/percpu_up.c +2 -2
index c4351c7..d599db4 100644
@@ -14,13 +14,13 @@ void __percpu *__alloc_percpu(size_t size, size_t align)
 	 * percpu sections on SMP for which this path isn't used.
 	 */
 	WARN_ON_ONCE(align > SMP_CACHE_BYTES);
-	return kzalloc(size, GFP_KERNEL);
+	return (void __percpu __force *) kzalloc(size, GFP_KERNEL);
 }
 EXPORT_SYMBOL_GPL(__alloc_percpu);
 
 void free_percpu(void __percpu *p)
 {
-	kfree(p);
+	kfree(this_cpu_ptr(p));
 }
 EXPORT_SYMBOL_GPL(free_percpu);
 
Signature · 1 line
1.7.0.4
maintainer
#1 lore raw

PATCH 1/1 percpu: add __percpu notations to UP allocator

Quoted 1 line

From 94cb121c9483f1ec9b1ef0c249fbfc49c628fa6b Mon Sep 17 00:00:00 2001

From: Namhyung Kim <[email protected]>
Date: Sat, 7 Aug 2010 03:26:24 +0900

Add __percpu notations to UP percpu allocator.

---
Applied to percpu#for-linus w/ slight commit description updates.

Thanks.

 mm/percpu_up.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
mm/percpu_up.c +2 -2
index c4351c7..db884fa 100644
@@ -14,13 +14,13 @@ void __percpu *__alloc_percpu(size_t size, size_t align)
 	 * percpu sections on SMP for which this path isn't used.
 	 */
 	WARN_ON_ONCE(align > SMP_CACHE_BYTES);
-	return kzalloc(size, GFP_KERNEL);
+	return (void __percpu __force *)kzalloc(size, GFP_KERNEL);
 }
 EXPORT_SYMBOL_GPL(__alloc_percpu);
 
 void free_percpu(void __percpu *p)
 {
-	kfree(p);
+	kfree(this_cpu_ptr(p));
 }
 EXPORT_SYMBOL_GPL(free_percpu);
 
Signature · 1 line
1.7.1