summaryrefslogtreecommitdiffstats
path: root/mm/percpu_up.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2010-04-16 15:20:06 +0200
committerTakashi Iwai <tiwai@suse.de>2010-04-16 15:20:06 +0200
commitcf0dbba515415bb19b11f9323d5f7bebd7f24fd6 (patch)
tree375bbc1ade1a92acd6493d224dd701fd7f209014 /mm/percpu_up.c
parent1cff399ecd9125d8e6a634a1957be1aeb3195a12 (diff)
parent0340c7dccd80d8706c636e030a6ebbddbddca690 (diff)
Merge remote branch 'alsa/devel' into topic/misc
Diffstat (limited to 'mm/percpu_up.c')
-rw-r--r--mm/percpu_up.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/mm/percpu_up.c b/mm/percpu_up.c
new file mode 100644
index 00000000000..c4351c7f57d
--- /dev/null
+++ b/mm/percpu_up.c
@@ -0,0 +1,30 @@
+/*
+ * mm/percpu_up.c - dummy percpu memory allocator implementation for UP
+ */
+
+#include <linux/module.h>
+#include <linux/percpu.h>
+#include <linux/slab.h>
+
+void __percpu *__alloc_percpu(size_t size, size_t align)
+{
+ /*
+ * Can't easily make larger alignment work with kmalloc. WARN
+ * on it. Larger alignment should only be used for module
+ * percpu sections on SMP for which this path isn't used.
+ */
+ WARN_ON_ONCE(align > SMP_CACHE_BYTES);
+ return kzalloc(size, GFP_KERNEL);
+}
+EXPORT_SYMBOL_GPL(__alloc_percpu);
+
+void free_percpu(void __percpu *p)
+{
+ kfree(p);
+}
+EXPORT_SYMBOL_GPL(free_percpu);
+
+phys_addr_t per_cpu_ptr_to_phys(void *addr)
+{
+ return __pa(addr);
+}