pstore: Fix linking when crypto API disabled
authorMatteo Croce <mcroce@linux.microsoft.com>
Tue, 7 Jul 2020 02:37:36 +0000 (19:37 -0700)
committerKees Cook <keescook@chromium.org>
Tue, 7 Jul 2020 02:42:31 +0000 (19:42 -0700)
commitfd49e03280e596e54edb93a91bc96170f8e97e4a
tree5194bfae6b3457cc67ec0467528e4cd16912de84
parent48778464bb7d346b47157d21ffde2af6b2d39110
pstore: Fix linking when crypto API disabled

When building a kernel with CONFIG_PSTORE=y and CONFIG_CRYPTO not set,
a build error happens:

    ld: fs/pstore/platform.o: in function `pstore_dump':
    platform.c:(.text+0x3f9): undefined reference to `crypto_comp_compress'
    ld: fs/pstore/platform.o: in function `pstore_get_backend_records':
    platform.c:(.text+0x784): undefined reference to `crypto_comp_decompress'

This because some pstore code uses crypto_comp_(de)compress regardless
of the CONFIG_CRYPTO status. Fix it by wrapping the (de)compress usage
by IS_ENABLED(CONFIG_PSTORE_COMPRESS)

Signed-off-by: Matteo Croce <mcroce@linux.microsoft.com>
Link: https://lore.kernel.org/lkml/20200706234045.9516-1-mcroce@linux.microsoft.com
Fixes: cb3bee0369bc ("pstore: Use crypto compress API")
Cc: stable@vger.kernel.org
Signed-off-by: Kees Cook <keescook@chromium.org>
fs/pstore/platform.c