summaryrefslogtreecommitdiffstats
path: root/drivers/block/zram/zram_drv.h
diff options
context:
space:
mode:
authorMinchan Kim2017-09-07 01:19:57 +0200
committerLinus Torvalds2017-09-07 02:27:25 +0200
commit1363d4662a0d28dfdb81ef426c88c9a8dbf7c338 (patch)
treee71f4440fb9101ed4c805016df6ff73671dc2fff /drivers/block/zram/zram_drv.h
parentzram: add interface to specif backing device (diff)
downloadkernel-qcow2-linux-1363d4662a0d28dfdb81ef426c88c9a8dbf7c338.tar.gz
kernel-qcow2-linux-1363d4662a0d28dfdb81ef426c88c9a8dbf7c338.tar.xz
kernel-qcow2-linux-1363d4662a0d28dfdb81ef426c88c9a8dbf7c338.zip
zram: add free space management in backing device
With backing device, zram needs management of free space of backing device. This patch adds bitmap logic to manage free space which is very naive. However, it would be simple enough as considering uncompressible pages's frequenty in zram. Link: http://lkml.kernel.org/r/1498459987-24562-6-git-send-email-minchan@kernel.org Signed-off-by: Minchan Kim <minchan@kernel.org> Cc: Juneho Choi <juno.choi@lge.com> Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/block/zram/zram_drv.h')
-rw-r--r--drivers/block/zram/zram_drv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/block/zram/zram_drv.h b/drivers/block/zram/zram_drv.h
index 113a41118918..707aec0a2681 100644
--- a/drivers/block/zram/zram_drv.h
+++ b/drivers/block/zram/zram_drv.h
@@ -119,6 +119,9 @@ struct zram {
struct file *backing_dev;
struct block_device *bdev;
unsigned int old_block_size;
+ unsigned long *bitmap;
+ unsigned long nr_pages;
+ spinlock_t bitmap_lock;
#endif
};
#endif