kernel 5.2: crash with zswap+zram (x86_64)

From: Justin Piszcz
Date: Tue Jul 09 2019 - 19:41:06 EST


Hello,

Going to be turning these options off for now (zswap+zram) under 5.2 and
hopefully this makes the machine stable again-but just wanted to point out
under 5.1.xx never had any issues but with 5.2 the kernel crashes fairly
quickly when performing heavy I/O with these options enabled: (note:
compressed ram is still marked as experimental in the kernel as of 5.2)

Append line used:
append="3w-sas.use_msi=1 nohugeiomap page_poison=1 pcie_aspm=off pti=on
rootfstype=ext4 slub_debug=P zram.enabled=1 zram.num_devices=12
zswap.enabled=1 zswap.compressor=lz4 zswap.zpool=z3fold"

$ diff -u .config .config-5.2.0-2
--- .config 2019-07-09 19:23:57.355550063 -0400
+++ .config-5.2.0-2 2019-07-09 12:44:31.803653032 -0400
@@ -790,10 +790,13 @@
CONFIG_CLEANCACHE=y
CONFIG_FRONTSWAP=y
# CONFIG_CMA is not set

-# CONFIG_ZSWAP is not set
-# CONFIG_ZPOOL is not set
-# CONFIG_ZBUD is not set
-# CONFIG_ZSMALLOC is not set
+CONFIG_ZSWAP=y
+CONFIG_ZPOOL=y
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=y
+CONFIG_ZSMALLOC=y
+CONFIG_PGTABLE_MAPPING=y
+CONFIG_ZSMALLOC_STAT=y
CONFIG_GENERIC_EARLY_IOREMAP=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
# CONFIG_IDLE_PAGE_TRACKING is not set
@@ -1309,6 +1312,9 @@
# CONFIG_BLK_DEV_FD is not set
CONFIG_CDROM=y
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+CONFIG_ZRAM=y
+CONFIG_ZRAM_WRITEBACK=y
+CONFIG_ZRAM_MEMORY_TRACKING=y
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8

As it kills the machine, I could only take screenshots of the crashes:
http://installkernel.tripod.com/IMG_2068.jpg
http://installkernel.tripod.com/IMG_2069.jpg
http://installkernel.tripod.com/IMG_2070.jpg
http://installkernel.tripod.com/IMG_2071.jpg

Regards,

Justin.