update compcache to 0.6.2 (#6884)

SVN-Revision: 20303
This commit is contained in:
Florian Fainelli 2010-03-19 16:34:41 +00:00
parent 08a790efb6
commit cd8e3a8055
5 changed files with 57 additions and 124 deletions

View File

@ -10,10 +10,10 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=compcache
PKG_VERSION:=0.5.4
PKG_VERSION:=0.6.2
PKG_RELEASE:=$(PKG_VERSION)-1
PKG_SOURCE_URL:=http://compcache.googlecode.com/files/
PKG_MD5SUM:=e83535925a014ac34e1eaeb4f7a2f49a
PKG_MD5SUM:=27aec78dc50e34fb800c74e879057743
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
@ -25,22 +25,25 @@ define KernelPackage/compcache
TITLE:=Driver for compressed ram swap device
VERSION:=$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)+$(PKG_RELEASE)
FILES:=$(PKG_BUILD_DIR)/ramzswap.$(LINUX_KMOD_SUFFIX) \
$(PKG_BUILD_DIR)/sub-projects/compression/lzo-kmod/lzo1x.$(LINUX_KMOD_SUFFIX) \
$(PKG_BUILD_DIR)/sub-projects/allocators/xvmalloc-kmod/xvmalloc.$(LINUX_KMOD_SUFFIX)
$(PKG_BUILD_DIR)/sub-projects/compression/lzo-kmod/lzo1x.$(LINUX_KMOD_SUFFIX)
endef
include $(INCLUDE_DIR)/kernel-defaults.mk
XVM = sub-projects/allocators/xvmalloc-kmod
LZO = sub-projects/compression/lzo-kmod
RZSC = sub-projects/rzscontrol
BUILDFLAGS:=-DCONFIG_BLK_DEV_RAMZSWAP_STATS \
-I$(PKG_BUILD_DIR)/$(XVM) \
BUILDFLAGS:=-DCONFIG_RAMZSWAP_STATS \
-I$(PKG_BUILD_DIR)/$(LZO) \
-g -Wall
-Wall
RZSCFLAGS:=-I$(PKG_BUILD_DIR)/$(RZSC)/../include \
-I$(PKG_BUILD_DIR)/$(RZSC)/../..
define Build/Compile
$(MAKE) $(KERNEL_MAKEOPTS) EXTRA_CFLAGS="$(BUILDFLAGS)" M="$(PKG_BUILD_DIR)" modules
$(TARGET_CC) $(TARGET_CFLAGS) $(RZSCFLAGS) $(PKG_BUILD_DIR)/$(RZSC)/rzscontrol.c -o $(PKG_BUILD_DIR)/rzscontrol
endef
define KernelPackage/compcache/install
@ -52,6 +55,8 @@ define KernelPackage/compcache/install
$(1)/etc/config/compcache
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/compcache.init $(1)/etc/init.d/compcache
$(INSTALL_DIR) $(1)/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/rzscontrol $(1)/sbin/rzscontrol
endef
define KernelPackage/compcache/config

View File

@ -18,7 +18,6 @@ load_modules() {
params_set="disksize_kb=$size_kbytes"
fi
if [ "`lsmod | grep 'ramzswap'`" == "" ]; then
insmod xvmalloc
insmod lzo1x
insmod ramzswap $params_set
swapon /dev/ramzswap0
@ -34,7 +33,6 @@ remove_modules() {
[ "`cat /proc/swaps | grep 'ramzswap0'`" != "" ] && swapoff /dev/ramzswap0
[ "`lsmod | grep 'ramzswap'`" != "" ] && rmmod ramzswap &> /dev/null
[ "`lsmod | grep 'lzo1x'`" != "" ] && rmmod lzo1x &> /dev/null
[ "`lsmod | grep 'xvmalloc'`" != "" ] && rmmod xvmalloc &> /dev/null
fi
}

View File

@ -1,60 +1,53 @@
diff -uNr compcache-0.5.4-old/Makefile compcache-0.5.4/Makefile
--- compcache-0.5.4-old/Makefile 2009-10-17 08:49:42.000000000 +0200
+++ compcache-0.5.4/Makefile 2009-10-17 09:39:34.000000000 +0200
@@ -1,19 +1,26 @@
diff -uNr compcache-org/Makefile compcache-0.6.2/Makefile
--- compcache-org/Makefile 2010-01-24 17:46:50.000000000 +0100
+++ compcache-0.6.2/Makefile 2010-03-18 16:00:41.000000000 +0100
@@ -1,14 +1,17 @@
KERNEL_BUILD_PATH ?= "/lib/modules/$(shell uname -r)/build"
XVM = sub-projects/allocators/xvmalloc-kmod
-EXTRA_CFLAGS := -DCONFIG_BLK_DEV_RAMZSWAP_STATS \
- -I$(PWD)/$(XVM) \
+LZO = sub-projects/compression/lzo-kmod
+
+EXTRA_CFLAGS += -DCONFIG_BLK_DEV_RAMZSWAP_STATS \
+ -I$(PWD)/$(XVM) \
+ -I$(PWD)/$(LZO) \
-g -Wall
EXTRA_CFLAGS := -DCONFIG_RAMZSWAP_STATS \
-Wall
obj-m += $(XVM)/xvmalloc.o \
+ $(LZO)/lzo1x.o \
ramzswap.o
-obj-m += ramzswap.o
+obj-m += ramzswap.o $(LZO)/lzo1x.o
ramzswap-objs := ramzswap_drv.o $(XVM)/xvmalloc.o
+
all:
make -C $(KERNEL_BUILD_PATH) M=$(PWD)/$(XVM) modules
+ make -C $(KERNEL_BUILD_PATH) M=$(PWD)/$(LZO) modules
make -C $(KERNEL_BUILD_PATH) M=$(PWD) modules
@ln -sf $(XVM)/xvmalloc.ko
+ @ln -sf $(LZO)/xvmalloc.ko
+ make -C $(KERNEL_BUILD_PATH) M=$(PWD)/$(LZO) modules
make -C sub-projects/rzscontrol
doc:
@@ -16,5 +19,6 @@
clean:
make -C $(KERNEL_BUILD_PATH) M=$(PWD) clean
make -C $(KERNEL_BUILD_PATH) M=$(PWD)/$(XVM) clean
+ make -C $(KERNEL_BUILD_PATH) M=$(PWD)/$(LZO) clean
make -C sub-projects/rzscontrol clean
@rm -rf *.ko
diff -uNr compcache-0.5.4-old/ramzswap.c compcache-0.5.4/ramzswap.c
--- compcache-0.5.4-old/ramzswap.c 2009-10-17 08:50:06.000000000 +0200
+++ compcache-0.5.4/ramzswap.c 2009-10-17 09:35:59.000000000 +0200
@@ -20,7 +20,6 @@
diff -uNr compcache-org/ramzswap_drv.c compcache-0.6.2/ramzswap_drv.c
--- compcache-org/ramzswap_drv.c 2010-01-24 17:52:19.000000000 +0100
+++ compcache-0.6.2/ramzswap_drv.c 2010-03-18 16:03:23.000000000 +0100
@@ -23,13 +23,13 @@
#include <linux/device.h>
#include <linux/genhd.h>
#include <linux/highmem.h>
-#include <linux/lzo.h>
#include <linux/mutex.h>
#include <linux/proc_fs.h>
#include <linux/string.h>
diff -uNr compcache-0.5.4-old/ramzswap.h compcache-0.5.4/ramzswap.h
--- compcache-0.5.4-old/ramzswap.h 2009-10-17 08:50:06.000000000 +0200
+++ compcache-0.5.4/ramzswap.h 2009-10-17 09:40:45.000000000 +0200
@@ -16,6 +16,7 @@
#define _RAMZSWAP_H_
#include <linux/swap.h>
#include <linux/swapops.h>
#include <linux/vmalloc.h>
#include <linux/version.h>
#include "xvmalloc.h"
+#include "lzo.h"
#include "compat.h"
#include "ramzswap_drv.h"
/*
* Stored at beginning of each compressed object.
diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x.c compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo1x.c
--- compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x.c 1970-01-01 01:00:00.000000000 +0100
+++ compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo1x.c 2009-10-17 09:35:59.000000000 +0200
diff -uNr compcache-old/sub-projects/compression/lzo-kmod/lzo1x.c compcache/sub-projects/compression/lzo-kmod/lzo1x.c
--- compcache-old/sub-projects/compression/lzo-kmod/lzo1x.c 1970-01-01 01:00:00.000000000 +0100
+++ compcache/sub-projects/compression/lzo-kmod/lzo1x.c 2009-10-17 09:35:59.000000000 +0200
@@ -0,0 +1,7 @@
+#include <linux/module.h>
+
@ -63,9 +56,9 @@ diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x.c compcach
+
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("LZO1X Lib");
diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x_compress.c compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo1x_compress.c
--- compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x_compress.c 1970-01-01 01:00:00.000000000 +0100
+++ compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo1x_compress.c 2009-10-17 09:35:59.000000000 +0200
diff -uNr compcache-old/sub-projects/compression/lzo-kmod/lzo1x_compress.c compcache/sub-projects/compression/lzo-kmod/lzo1x_compress.c
--- compcache-old/sub-projects/compression/lzo-kmod/lzo1x_compress.c 1970-01-01 01:00:00.000000000 +0100
+++ compcache/sub-projects/compression/lzo-kmod/lzo1x_compress.c 2009-10-17 09:35:59.000000000 +0200
@@ -0,0 +1,227 @@
+/*
+ * LZO1X Compressor from MiniLZO
@ -294,9 +287,9 @@ diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x_compress.c
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("LZO1X-1 Compressor");
+
diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x_decompress.c compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo1x_decompress.c
--- compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x_decompress.c 1970-01-01 01:00:00.000000000 +0100
+++ compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo1x_decompress.c 2009-10-17 09:35:59.000000000 +0200
diff -uNr compcache-old/sub-projects/compression/lzo-kmod/lzo1x_decompress.c compcache/sub-projects/compression/lzo-kmod/lzo1x_decompress.c
--- compcache-old/sub-projects/compression/lzo-kmod/lzo1x_decompress.c 1970-01-01 01:00:00.000000000 +0100
+++ compcache/sub-projects/compression/lzo-kmod/lzo1x_decompress.c 2009-10-17 09:35:59.000000000 +0200
@@ -0,0 +1,255 @@
+/*
+ * LZO1X Decompressor from MiniLZO
@ -553,9 +546,9 @@ diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo1x_decompress
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("LZO1X Decompressor");
+
diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzodefs.h compcache-0.5.4/sub-projects/compression/lzo-kmod/lzodefs.h
--- compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzodefs.h 1970-01-01 01:00:00.000000000 +0100
+++ compcache-0.5.4/sub-projects/compression/lzo-kmod/lzodefs.h 2009-10-17 09:35:59.000000000 +0200
diff -uNr compcache-old/sub-projects/compression/lzo-kmod/lzodefs.h compcache/sub-projects/compression/lzo-kmod/lzodefs.h
--- compcache-old/sub-projects/compression/lzo-kmod/lzodefs.h 1970-01-01 01:00:00.000000000 +0100
+++ compcache/sub-projects/compression/lzo-kmod/lzodefs.h 2009-10-17 09:35:59.000000000 +0200
@@ -0,0 +1,43 @@
+/*
+ * lzodefs.h -- architecture, OS and compiler specific defines
@ -600,9 +593,9 @@ diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzodefs.h compca
+#define DX2(p, s1, s2) (((((size_t)((p)[2]) << (s2)) ^ (p)[1]) \
+ << (s1)) ^ (p)[0])
+#define DX3(p, s1, s2, s3) ((DX2((p)+1, s2, s3) << (s1)) ^ (p)[0])
diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo.h compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo.h
--- compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo.h 1970-01-01 01:00:00.000000000 +0100
+++ compcache-0.5.4/sub-projects/compression/lzo-kmod/lzo.h 2009-10-17 09:35:59.000000000 +0200
diff -uNr compcache-old/sub-projects/compression/lzo-kmod/lzo.h compcache/sub-projects/compression/lzo-kmod/lzo.h
--- compcache-old/sub-projects/compression/lzo-kmod/lzo.h 1970-01-01 01:00:00.000000000 +0100
+++ compcache/sub-projects/compression/lzo-kmod/lzo.h 2009-10-17 09:35:59.000000000 +0200
@@ -0,0 +1,44 @@
+#ifndef __LZO_H__
+#define __LZO_H__
@ -648,9 +641,9 @@ diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/lzo.h compcache-
+#define LZO_E_NOT_YET_IMPLEMENTED (-9)
+
+#endif
diff -uNr compcache-0.5.4-old/sub-projects/compression/lzo-kmod/Makefile compcache-0.5.4/sub-projects/compression/lzo-kmod/Makefile
--- compcache-0.5.4-old/sub-projects/compression/lzo-kmod/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ compcache-0.5.4/sub-projects/compression/lzo-kmod/Makefile 2009-10-17 09:35:59.000000000 +0200
diff -uNr compcache-old/sub-projects/compression/lzo-kmod/Makefile compcache/sub-projects/compression/lzo-kmod/Makefile
--- compcache-old/sub-projects/compression/lzo-kmod/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ compcache/sub-projects/compression/lzo-kmod/Makefile 2009-10-17 09:35:59.000000000 +0200
@@ -0,0 +1,8 @@
+obj-m += lzo1x_compress.o lzo1x_decompress.o
+

View File

@ -1,24 +0,0 @@
diff -uNr compcache-0.5.2/compcache.c compcache/compcache.c
--- compcache-0.5.2/compcache.c 2009-03-10 13:03:56.000000000 +0100
+++ compcache/ramzswap.c 2009-04-01 17:38:20.000000000 +0200
@@ -68,15 +68,15 @@
static int page_zero_filled(void *ptr)
{
u32 pos;
- u64 *page;
-
- page = (u64 *)ptr;
-
+#if defined(CONFIG_64BIT)
+ u64 *page = (u64 *)ptr;
+#else
+ u32 *page = (u32 *)ptr;
+#endif
for (pos = 0; pos != PAGE_SIZE / sizeof(*page); pos++) {
if (page[pos])
return 0;
}
-
return 1;
}

View File

@ -1,39 +0,0 @@
diff -uNr compcache-0.5.4-old/ramzswap.c compcache-0.5.4/ramzswap.c
--- compcache-0.5.4-old/ramzswap.c 2009-10-18 09:14:53.000000000 +0200
+++ compcache-0.5.4/ramzswap.c 2009-10-18 09:12:08.000000000 +0200
@@ -126,7 +126,9 @@
{
int len;
size_t succ_writes, mem_used;
- unsigned int good_compress_perc = 0, no_compress_perc = 0;
+ unsigned int good_compress_perc = 0,
+ av_compression_perc = 0,
+ no_compress_perc = 0;
mem_used = xv_get_total_size_bytes(rzs.mem_pool)
+ (stats.pages_expand << PAGE_SHIFT);
@@ -154,6 +156,8 @@
if (succ_writes && stats.pages_stored) {
good_compress_perc = stats.good_compress * 100
/ stats.pages_stored;
+ av_compression_perc = stats.compr_size * 100
+ / (stats.good_compress << PAGE_SHIFT);
no_compress_perc = stats.pages_expand * 100
/ stats.pages_stored;
}
@@ -168,6 +172,7 @@
"NotifyFree: %8llu\n"
"ZeroPages: %8u\n"
"GoodCompress: %8u %%\n"
+ "AvCompression: %8u %%\n"
"NoCompress: %8u %%\n"
"PagesStored: %8u\n"
"PagesUsed: %8zu\n"
@@ -182,6 +187,7 @@
stats.notify_free,
stats.pages_zero,
good_compress_perc,
+ av_compression_perc,
no_compress_perc,
stats.pages_stored,
mem_used >> PAGE_SHIFT,