On (12/22/16 09:36), Minchan Kim wrote: > zram has used per-cpu stream feature from v4.7. > It aims for increasing cache hit ratio of scratch buffer for > compressing. Downside of that approach is that zram should ask > memory space for compressed page in per-cpu context which requires > stricted gfp flag which could be failed. If so, it retries to > allocate memory space out of per-cpu context so it could get memory > this time and compress the data again, copies it to the memory space. > > In this scenario, zram assumes the data should never be changed > but it is not true without stable page support. So, If the data is > changed under us, zram can make buffer overrun so that zsmalloc > free object chain is broken so system goes crash like below > https://bugzilla.suse.com/show_bug.cgi?id=997574 > > This patch adds BDI_CAP_STABLE_WRITES to zram for declaring > "I am block device needing *stable write*". > > Fixes: da9556a2367c ("zram: user per-cpu compression streams") > Cc: <stable@xxxxxxxxxxxxxxx> [4.7+] > Signed-off-by: Minchan Kim <minchan@xxxxxxxxxx> Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx> -ss -- 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>