2에 관해서는, zswap은 다시 쓸 때 페이지를 압축 해제하여 @Cbhihe의 의견을 확인합니다.
mm / zswap.c , 828 행 :
/*
* Attempts to free an entry by adding a page to the swap cache,
* decompressing the entry data into the page, and issuing a
* bio write to write the page back to the swap device.
* ...
*/
static int zswap_writeback_entry(struct zpool *pool, unsigned long handle)
{
...
case ZSWAP_SWAPCACHE_NEW: /* page is locked */
/* decompress */
...
ret = crypto_comp_decompress(tfm, src, entry->length,
dst, &dlen);
...
kunmap_atomic(dst);
$ git show
commit 1573d2caf713874cfe0d1336c823d0fb548d8bed
Merge: 4cdf8db 0a86248
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Tue Oct 11 23:59:07 2016 -0700
따라서 zswap은 디스크에 다시 쓰기 전에 압축 된 RAM 내 캐시를 잊어 버릴 수있는 상황에 유용합니다. 실제 스왑 장치로 백업해야하는 수명이 길고 수명이 긴 애플리케이션에는 적합하지 않습니다.