Home
last modified time | relevance | path

Searched hist:"94 ae8c3fee94a87bdf982d5559f8037c6c562657" (Results 1 – 4 of 4) sorted by relevance

/linux/fs/smb/client/compress/
H A Dlz77.hdiff 94ae8c3fee94a87bdf982d5559f8037c6c562657 Fri Sep 06 19:41:50 CEST 2024 Enzo Matsumiya <ematsumiya@suse.de> smb: client: compress: LZ77 code improvements cleanup

- Check data compressibility with some heuristics (copied from
btrfs):
- should_compress() final decision is is_compressible(data)

- Cleanup compress/lz77.h leaving only lz77_compress() exposed:
- Move parts to compress/lz77.c, while removing the rest of it
because they were either unused, used only once, were
implemented wrong (thanks to David Howells for the help)

- Updated the compression parameters (still compatible with
Windows implementation) trading off ~20% compression ratio
for ~40% performance:
- min match len: 3 -> 4
- max distance: 8KiB -> 1KiB
- hash table type: u32 * -> u64 *

Known bugs:
This implementation currently works fine in general, but breaks with
some payloads used during testing. Investigation ongoing, to be
fixed in a next commit.

Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
Co-developed-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
H A Dlz77.cdiff 94ae8c3fee94a87bdf982d5559f8037c6c562657 Fri Sep 06 19:41:50 CEST 2024 Enzo Matsumiya <ematsumiya@suse.de> smb: client: compress: LZ77 code improvements cleanup

- Check data compressibility with some heuristics (copied from
btrfs):
- should_compress() final decision is is_compressible(data)

- Cleanup compress/lz77.h leaving only lz77_compress() exposed:
- Move parts to compress/lz77.c, while removing the rest of it
because they were either unused, used only once, were
implemented wrong (thanks to David Howells for the help)

- Updated the compression parameters (still compatible with
Windows implementation) trading off ~20% compression ratio
for ~40% performance:
- min match len: 3 -> 4
- max distance: 8KiB -> 1KiB
- hash table type: u32 * -> u64 *

Known bugs:
This implementation currently works fine in general, but breaks with
some payloads used during testing. Investigation ongoing, to be
fixed in a next commit.

Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
Co-developed-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
/linux/fs/smb/client/
H A Dcompress.hdiff 94ae8c3fee94a87bdf982d5559f8037c6c562657 Fri Sep 06 19:41:50 CEST 2024 Enzo Matsumiya <ematsumiya@suse.de> smb: client: compress: LZ77 code improvements cleanup

- Check data compressibility with some heuristics (copied from
btrfs):
- should_compress() final decision is is_compressible(data)

- Cleanup compress/lz77.h leaving only lz77_compress() exposed:
- Move parts to compress/lz77.c, while removing the rest of it
because they were either unused, used only once, were
implemented wrong (thanks to David Howells for the help)

- Updated the compression parameters (still compatible with
Windows implementation) trading off ~20% compression ratio
for ~40% performance:
- min match len: 3 -> 4
- max distance: 8KiB -> 1KiB
- hash table type: u32 * -> u64 *

Known bugs:
This implementation currently works fine in general, but breaks with
some payloads used during testing. Investigation ongoing, to be
fixed in a next commit.

Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
Co-developed-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
H A Dcompress.cdiff 94ae8c3fee94a87bdf982d5559f8037c6c562657 Fri Sep 06 19:41:50 CEST 2024 Enzo Matsumiya <ematsumiya@suse.de> smb: client: compress: LZ77 code improvements cleanup

- Check data compressibility with some heuristics (copied from
btrfs):
- should_compress() final decision is is_compressible(data)

- Cleanup compress/lz77.h leaving only lz77_compress() exposed:
- Move parts to compress/lz77.c, while removing the rest of it
because they were either unused, used only once, were
implemented wrong (thanks to David Howells for the help)

- Updated the compression parameters (still compatible with
Windows implementation) trading off ~20% compression ratio
for ~40% performance:
- min match len: 3 -> 4
- max distance: 8KiB -> 1KiB
- hash table type: u32 * -> u64 *

Known bugs:
This implementation currently works fine in general, but breaks with
some payloads used during testing. Investigation ongoing, to be
fixed in a next commit.

Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
Co-developed-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>