Hello, First two patches introduce new zsmalloc zs_pages_to_compact() symbol and change zram's `compact' sysfs attribute to be read-write: -- write triggers compaction, no changes -- read returns the number of pages that compaction can potentially free
This lets user space to make a bit better decisions and to avoid unneeded (which will not result in any significant memory savings) compaction calls: Example: if [ `cat /sys/block/zram<id>/compact` -gt 10 ]; then echo 1 > /sys/block/zram<id>/compact; fi Up until now user space could not tell whether compaction will result in any gain. The third patch removes class locking around zs_can_compact() in zs_pages_to_compact(), the motivation and details are provided in the commit message. Sergey Senozhatsky (3): zsmalloc: factor out zs_pages_to_compact() zram: make compact a read-write sysfs node zsmalloc: do not take class lock in zs_pages_to_compact() Documentation/ABI/testing/sysfs-block-zram | 7 +++--- Documentation/blockdev/zram.txt | 4 +++- drivers/block/zram/zram_drv.c | 16 ++++++++++++- include/linux/zsmalloc.h | 1 + mm/zsmalloc.c | 37 +++++++++++++++++------------- 5 files changed, 44 insertions(+), 21 deletions(-) -- 2.4.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/