For zram-swap, there is size gap between virtual disksize and available physical memory size for zram so that VM can try to reclaim anonymous pages even though zram is full. It makes system alomost hang(ie, unresponsible) easily in my kernel build test(ie, 1G DRAM, CPU 12, 4G zram swap, 50M zram limit). VM should have killed someone. This patch adds new hint SWAP_FULL so VM can ask fullness to zram and if it founds zram is full, VM doesn't reclaim anonymous pages until zram-swap gets new free space. With this patch, I see OOM when zram-swap is full instead of hang with no response. Minchan Kim (5): zram: generalize swap_slot_free_notify mm: add full variable in swap_info_struct mm: VM can be aware of zram fullness zram: add swap full hint zram: add fullness knob to control swap full Documentation/ABI/testing/sysfs-block-zram | 10 +++ Documentation/filesystems/Locking | 4 +- drivers/block/zram/zram_drv.c | 114 +++++++++++++++++++++++++++-- drivers/block/zram/zram_drv.h | 2 + include/linux/blkdev.h | 8 +- include/linux/swap.h | 1 + mm/page_io.c | 6 +- mm/swapfile.c | 77 ++++++++++++++----- 8 files changed, 189 insertions(+), 33 deletions(-) -- 2.0.0 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>