lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 26 Jan 2023 14:14:20 +0100
From:   Mikhail Zaslonko <zaslonko@...ux.ibm.com>
To:     Andrew Morton <akpm@...ux-foundation.org>
Cc:     LKML <linux-kernel@...r.kernel.org>,
        Heiko Carstens <hca@...ux.ibm.com>,
        Vasily Gorbik <gor@...ux.ibm.com>,
        Ilya Leoshkevich <iii@...ux.ibm.com>,
        Mikhail Zaslonko <zaslonko@...ux.ibm.com>
Subject: [PATCH 0/8] lib/zlib: Set of s390 DFLTCC related patches for kernel zlib

Patches 1-7 represent a set of s390 zlib hardware support (DFLTCC) related fixes
and enhancements integrated from zlib-ng repo relevant to kernel zlib
(https://github.com/zlib-ng/zlib-ng).
Since the official zlib repository never got DFLTCC support code merged, all
the patches have been picked from zlib-ng fork (zlib data compression library
for the next generation systems). This repo contains new optimizations and
fixes not getting implemented into the official zlib repository and falls under
the same zlib License. All of the original patches from zlib-ng were authored
by Ilya Leoshkevich <iii@...ux.ibm.com>. Coding style has been preserved for
future maintainability.
Patches 1-2 should have no effect for the kernel zlib but make the code
closer to zlib-ng for future maintainability.
Only Patch 3 touches common zlib_deflate code, other patches are relevant to
s390 tree only.

Patch 8 is separate and intends to resolve an issue with kernel PPP driver
which can use kernel zlib for packet compression. Without this patch PPP
decompression can fail due to error code returned by hardware (dfltcc_inflate)
and PPP disables zlib compression for further packets.

@Andrew, would you pick this patch series yourself (which is totally fine
with me) or shall we carry it via s390 tree?

Mikhail Zaslonko (8):
  lib/zlib: Adjust offset calculation for dfltcc_state
  lib/zlib: Implement switching between DFLTCC and software
  lib/zlib: Fix DFLTCC not flushing EOBS when creating raw streams
  lib/zlib: Fix DFLTCC ignoring flush modes when avail_in == 0
  lib/zlib: DFLTCC not writing header bits when avail_out == 0
  lib/zlib: Split deflate and inflate states for DFLTCC
  lib/zlib: DFLTCC support inflate with small window
  lib/zlib: DFLTCC always switch to software inflate for Z_PACKET_FLUSH
    option

 lib/zlib_deflate/deflate.c       | 23 ++++++---
 lib/zlib_dfltcc/dfltcc.c         | 25 ++-------
 lib/zlib_dfltcc/dfltcc.h         | 57 +++++---------------
 lib/zlib_dfltcc/dfltcc_deflate.c | 89 +++++++++++++++++++++-----------
 lib/zlib_dfltcc/dfltcc_deflate.h | 21 ++++++++
 lib/zlib_dfltcc/dfltcc_inflate.c | 24 +++++----
 lib/zlib_dfltcc/dfltcc_inflate.h | 37 +++++++++++++
 lib/zlib_inflate/inflate.c       |  2 +-
 8 files changed, 163 insertions(+), 115 deletions(-)
 create mode 100644 lib/zlib_dfltcc/dfltcc_deflate.h
 create mode 100644 lib/zlib_dfltcc/dfltcc_inflate.h

-- 
2.34.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ