mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
mm/zpool: use prefixed module loading
To avoid potential format string expansion via module parameters, do not
use the zpool type directly in request_module() without a format string.
Additionally, to avoid arbitrary modules being loaded via zpool API
(e.g. via the zswap_zpool_type module parameter) add a "zpool-" prefix
to the requested module, as well as module aliases for the existing
zpool types (zbud and zsmalloc).
Signed-off-by: Kees Cook <keescook@chromium.org>
Cc: Seth Jennings <sjennings@variantweb.net>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Nitin Gupta <ngupta@vflare.org>
Acked-by: Dan Streetman <ddstreet@ieee.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 137f8cff50)
Signed-off-by: Alex Shi <alex.shi@linaro.org>
Conflicts:
mm/zbud.c
Conflicts solution:
remove zbud
This commit is contained in:
@@ -150,7 +150,7 @@ struct zpool *zpool_create_pool(char *type, gfp_t gfp, struct zpool_ops *ops)
|
||||
driver = zpool_get_driver(type);
|
||||
|
||||
if (!driver) {
|
||||
request_module(type);
|
||||
request_module("zpool-%s", type);
|
||||
driver = zpool_get_driver(type);
|
||||
}
|
||||
|
||||
|
||||
@@ -314,6 +314,7 @@ static struct zpool_driver zs_zpool_driver = {
|
||||
.total_size = zs_zpool_total_size,
|
||||
};
|
||||
|
||||
MODULE_ALIAS("zpool-zsmalloc");
|
||||
#endif /* CONFIG_ZPOOL */
|
||||
|
||||
/* per-cpu VM mapping areas for zspage accesses that cross page boundaries */
|
||||
|
||||
Reference in New Issue
Block a user