[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20170124132441.5027560693ed6d8c283c1953@linux-foundation.org>
Date: Tue, 24 Jan 2017 13:24:41 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Dan Streetman <ddstreet@...e.org>
Cc: Linux-MM <linux-mm@...ck.org>, Seth Jennings <sjenning@...hat.com>,
Michal Hocko <mhocko@...nel.org>,
Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>,
Minchan Kim <minchan@...nel.org>, linux-kernel@...r.kernel.org,
stable@...r.kernel.org, Dan Streetman <dan.streetman@...onical.com>
Subject: Re: [PATCH 1/3] zswap: disable changing params if init fails
On Tue, 24 Jan 2017 15:02:57 -0500 Dan Streetman <ddstreet@...e.org> 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@...r.kernel.org
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.
Powered by blists - more mailing lists