summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cpukit/libfs/src/jffs2/include/linux/mm.h0
-rw-r--r--cpukit/libfs/src/jffs2/include/linux/slab.h1
-rw-r--r--cpukit/libfs/src/jffs2/src/build.c8
3 files changed, 3 insertions, 6 deletions
diff --git a/cpukit/libfs/src/jffs2/include/linux/mm.h b/cpukit/libfs/src/jffs2/include/linux/mm.h
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/cpukit/libfs/src/jffs2/include/linux/mm.h
diff --git a/cpukit/libfs/src/jffs2/include/linux/slab.h b/cpukit/libfs/src/jffs2/include/linux/slab.h
index 00ddbb274a..532586e210 100644
--- a/cpukit/libfs/src/jffs2/include/linux/slab.h
+++ b/cpukit/libfs/src/jffs2/include/linux/slab.h
@@ -8,6 +8,7 @@
#define kzalloc(x, y) calloc(1, x)
#define kmalloc(x, y) malloc(x)
#define kfree(x) free(x)
+#define kvfree(x) free(x)
#define vmalloc(x) malloc(x)
#define vfree(x) free(x)
diff --git a/cpukit/libfs/src/jffs2/src/build.c b/cpukit/libfs/src/jffs2/src/build.c
index b16f2c9fe7..cbc424283c 100644
--- a/cpukit/libfs/src/jffs2/src/build.c
+++ b/cpukit/libfs/src/jffs2/src/build.c
@@ -19,6 +19,7 @@
#include <linux/slab.h>
#include <linux/vmalloc.h>
#include <linux/mtd/mtd.h>
+#include <linux/mm.h> /* kvfree() */
#include "nodelist.h"
static void jffs2_build_remove_unlinked_inode(struct jffs2_sb_info *,
@@ -385,12 +386,7 @@ int jffs2_do_mount_fs(struct jffs2_sb_info *c)
return 0;
out_free:
-#ifndef __ECOS
- if (jffs2_blocks_use_vmalloc(c))
- vfree(c->blocks);
- else
-#endif
- kfree(c->blocks);
+ kvfree(c->blocks);
return ret;
}