X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=include%2Fsys%2Fzio_compress.h;h=bd051f185b4150141afe20b2a63401c7df40347f;hb=775f2d34a3ccd5f866cfa04be76f83cb562f3881;hp=30bed1a676e32d73fd197715097d73830450e804;hpb=6283f55ea1b91e680386388c17d14b89e344fa8d;p=zfs.git diff --git a/include/sys/zio_compress.h b/include/sys/zio_compress.h index 30bed1a..bd051f1 100644 --- a/include/sys/zio_compress.h +++ b/include/sys/zio_compress.h @@ -44,7 +44,7 @@ typedef int zio_decompress_func_t(void *src, void *dst, /* * Information about each compression function. */ -typedef struct zio_compress_info { +typedef const struct zio_compress_info { zio_compress_func_t *ci_compress; /* compression function */ zio_decompress_func_t *ci_decompress; /* decompression function */ int ci_level; /* level parameter */ @@ -54,6 +54,12 @@ typedef struct zio_compress_info { extern zio_compress_info_t zio_compress_table[ZIO_COMPRESS_FUNCTIONS]; /* + * lz4 compression init & free + */ +extern void lz4_init(void); +extern void lz4_fini(void); + +/* * Compression routines. */ extern size_t lzjb_compress(void *src, void *dst, size_t s_len, size_t d_len, @@ -68,6 +74,10 @@ extern size_t zle_compress(void *src, void *dst, size_t s_len, size_t d_len, int level); extern int zle_decompress(void *src, void *dst, size_t s_len, size_t d_len, int level); +extern size_t lz4_compress(void *src, void *dst, size_t s_len, size_t d_len, + int level); +extern int lz4_decompress(void *src, void *dst, size_t s_len, size_t d_len, + int level); /* * Compress and decompress data if necessary.