diff options
Diffstat (limited to 'sys/contrib/openzfs/module/zstd/lib/compress/zstd_preSplit.h')
| -rw-r--r-- | sys/contrib/openzfs/module/zstd/lib/compress/zstd_preSplit.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/sys/contrib/openzfs/module/zstd/lib/compress/zstd_preSplit.h b/sys/contrib/openzfs/module/zstd/lib/compress/zstd_preSplit.h new file mode 100644 index 000000000000..43b92ab2a265 --- /dev/null +++ b/sys/contrib/openzfs/module/zstd/lib/compress/zstd_preSplit.h @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-only +/* + * Copyright (c) Meta Platforms, Inc. and affiliates. + * All rights reserved. + * + * This source code is licensed under both the BSD-style license (found in the + * LICENSE file in the root directory of this source tree) and the GPLv2 (found + * in the COPYING file in the root directory of this source tree). + * You may select, at your option, one of the above-listed licenses. + */ + +#ifndef ZSTD_PRESPLIT_H +#define ZSTD_PRESPLIT_H + +#include <stddef.h> /* size_t */ + +#define ZSTD_SLIPBLOCK_WORKSPACESIZE 8208 + +/* ZSTD_splitBlock(): + * @level must be a value between 0 and 4. + * higher levels spend more energy to detect block boundaries. + * @workspace must be aligned for size_t. + * @wkspSize must be at least >= ZSTD_SLIPBLOCK_WORKSPACESIZE + * note: + * For the time being, this function only accepts full 128 KB blocks. + * Therefore, @blockSize must be == 128 KB. + * While this could be extended to smaller sizes in the future, + * it is not yet clear if this would be useful. TBD. + */ +size_t ZSTD_splitBlock(const void* blockStart, size_t blockSize, + int level, + void* workspace, size_t wkspSize); + +#endif /* ZSTD_PRESPLIT_H */ |
