This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / fs / jffs2 / compr_zlib.c
index f3b0bc9..c05e65f 100644 (file)
@@ -7,7 +7,7 @@
  *
  * For licensing information, see the file 'LICENCE' in this directory.
  *
- * $Id: compr_zlib.c,v 1.28 2004/06/23 16:34:40 havasi Exp $
+ * $Id: compr_zlib.c,v 1.24 2003/10/04 08:33:06 dwmw2 Exp $
  *
  */
 
 
 #include <linux/config.h>
 #include <linux/kernel.h>
+#include <linux/vmalloc.h>
+#include <linux/init.h>
 #include <linux/slab.h>
 #include <linux/zlib.h>
 #include <linux/zutil.h>
 #include <asm/semaphore.h>
 #include "nodelist.h"
-#include "compr.h"
 
        /* Plan: call deflate() with avail_in == *sourcelen, 
                avail_out = *dstlen - 12 and flush == Z_FINISH. 
@@ -38,10 +39,7 @@ static DECLARE_MUTEX(inflate_sem);
 static z_stream inf_strm, def_strm;
 
 #ifdef __KERNEL__ /* Linux-only */
-#include <linux/vmalloc.h>
-#include <linux/init.h>
-
-static int __init alloc_workspaces(void)
+int __init jffs2_zlib_init(void)
 {
        def_strm.workspace = vmalloc(zlib_deflate_workspacesize());
        if (!def_strm.workspace) {
@@ -59,18 +57,15 @@ static int __init alloc_workspaces(void)
        return 0;
 }
 
-static void free_workspaces(void)
+void jffs2_zlib_exit(void)
 {
        vfree(def_strm.workspace);
        vfree(inf_strm.workspace);
 }
-#else
-#define alloc_workspaces() (0)
-#define free_workspaces() do { } while(0)
 #endif /* __KERNEL__ */
 
 int jffs2_zlib_compress(unsigned char *data_in, unsigned char *cpage_out, 
-                  uint32_t *sourcelen, uint32_t *dstlen, void *model)
+                  uint32_t *sourcelen, uint32_t *dstlen)
 {
        int ret;
 
@@ -135,8 +130,8 @@ int jffs2_zlib_compress(unsigned char *data_in, unsigned char *cpage_out,
        return ret;
 }
 
-int jffs2_zlib_decompress(unsigned char *data_in, unsigned char *cpage_out,
-                     uint32_t srclen, uint32_t destlen, void *model)
+void jffs2_zlib_decompress(unsigned char *data_in, unsigned char *cpage_out,
+                     uint32_t srclen, uint32_t destlen)
 {
        int ret;
        int wbits = MAX_WBITS;
@@ -170,7 +165,7 @@ int jffs2_zlib_decompress(unsigned char *data_in, unsigned char *cpage_out,
        if (Z_OK != zlib_inflateInit2(&inf_strm, wbits)) {
                printk(KERN_WARNING "inflateInit failed\n");
                up(&inflate_sem);
-               return 1;
+               return;
        }
 
        while((ret = zlib_inflate(&inf_strm, Z_FINISH)) == Z_OK)
@@ -180,39 +175,4 @@ int jffs2_zlib_decompress(unsigned char *data_in, unsigned char *cpage_out,
        }
        zlib_inflateEnd(&inf_strm);
        up(&inflate_sem);
-        return 0;
-}
-
-static struct jffs2_compressor jffs2_zlib_comp = {
-    .priority = JFFS2_ZLIB_PRIORITY,
-    .name = "zlib",
-    .compr = JFFS2_COMPR_ZLIB,
-    .compress = &jffs2_zlib_compress,
-    .decompress = &jffs2_zlib_decompress,
-#ifdef JFFS2_ZLIB_DISABLED
-    .disabled = 1,
-#else
-    .disabled = 0,
-#endif
-};
-
-int __init jffs2_zlib_init(void)
-{
-    int ret;
-
-    ret = alloc_workspaces();
-    if (ret)
-        return ret;
-
-    ret = jffs2_register_compressor(&jffs2_zlib_comp);
-    if (ret)
-        free_workspaces();
-
-    return ret;
-}
-
-void jffs2_zlib_exit(void)
-{
-    jffs2_unregister_compressor(&jffs2_zlib_comp);
-    free_workspaces();
 }