mbox series

[v3,0/2] pstore: Replace crypto API compression with zlib calls

Message ID 20230712162332.2670437-1-ardb@kernel.org (mailing list archive)
Headers show
Series pstore: Replace crypto API compression with zlib calls | expand

Message

Ard Biesheuvel July 12, 2023, 4:23 p.m. UTC
The pstore layer implements support for compression of kernel log
output, using a variety of compression algorithms provided by the
[deprecated] crypto API 'comp' interface.

This appears to have been somebody's pet project rather than a solution
to a real problem: the original deflate compression is reasonably fast,
compresses well and is comparatively small in terms of code footprint,
and so the flexibility that the crypto API integration provides does
little more than complicate the code for no reason.

So let's get rid of this complexity, and switch back to zlib deflate
using the library interface.

Changes since v2:
- some more prose improvements and NULL checks/assignments suggested by
  Eric
- reset author on patch #1
- add Guilherme's Tested-by

Changes since v1:
- add missing vfree() of zlib compression workspace
- implement improvements and simplifications suggested by Eric
- add missing zlib_in/deflateEnd() calls
- add code comment to document that the use of a library interface is
  deliberate, and doesn't require a future 'upgrade' to the crypto API

Cc: Kees Cook <keescook@chromium.org>
Cc: "Guilherme G. Piccoli" <gpiccoli@igalia.com>
Cc: Eric Biggers <ebiggers@kernel.org>

Ard Biesheuvel (2):
  pstore: Remove worst-case compression size logic
  pstore: Replace crypto API compression with zlib_deflate library calls

 fs/pstore/Kconfig    | 100 +-----
 fs/pstore/platform.c | 330 ++++++--------------
 2 files changed, 110 insertions(+), 320 deletions(-)

Comments

Kees Cook July 13, 2023, 5:37 p.m. UTC | #1
On Wed, 12 Jul 2023 18:23:30 +0200, Ard Biesheuvel wrote:
> The pstore layer implements support for compression of kernel log
> output, using a variety of compression algorithms provided by the
> [deprecated] crypto API 'comp' interface.
> 
> This appears to have been somebody's pet project rather than a solution
> to a real problem: the original deflate compression is reasonably fast,
> compresses well and is comparatively small in terms of code footprint,
> and so the flexibility that the crypto API integration provides does
> little more than complicate the code for no reason.
> 
> [...]

Applied, thanks!

[1/2] pstore: Remove worst-case compression size logic
      https://git.kernel.org/kees/c/32a9ef435140
[2/2] pstore: Replace crypto API compression with zlib_deflate library calls
      https://git.kernel.org/kees/c/efe5be6664c8

Best regards,