On Tue, 24 Jan 2017 15:02:57 -0500 Dan Streetman <ddstreet@xxxxxxxx> wrote: > Add zswap_init_failed bool that prevents changing any of the module > params, if init_zswap() fails, and set zswap_enabled to false. Change > 'enabled' param to a callback, and check zswap_init_failed before > allowing any change to 'enabled', 'zpool', or 'compressor' params. > > Any driver that is built-in to the kernel will not be unloaded if its > init function returns error, and its module params remain accessible for > users to change via sysfs. Since zswap uses param callbacks, which > assume that zswap has been initialized, changing the zswap params after > a failed initialization will result in WARNING due to the param callbacks > expecting a pool to already exist. This prevents that by immediately > exiting any of the param callbacks if initialization failed. > > This was reported here: > https://marc.info/?l=linux-mm&m=147004228125528&w=4 I added Marcin's reportde-by to the changelog. > And fixes this WARNING: > [ 429.723476] WARNING: CPU: 0 PID: 5140 at mm/zswap.c:503 > __zswap_pool_current+0x56/0x60 > > Fixes: 90b0fc26d5db ("zswap: change zpool/compressor at runtime") > Cc: stable@xxxxxxxxxxxxxxx Is this really serious enough to justify a -stable backport? It's just a bit of extra noise associated with an initialization problem which the user will be fixing anyway. -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html