summaryrefslogtreecommitdiffstats
path: root/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c')
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c23
1 files changed, 2 insertions, 21 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c
index 30994a4..502335b 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c
@@ -41,14 +41,12 @@
typedef struct zcomp_stats {
kstat_named_t zcompstat_attempts;
kstat_named_t zcompstat_empty;
- kstat_named_t zcompstat_skipped_minblocksize;
kstat_named_t zcompstat_skipped_insufficient_gain;
} zcomp_stats_t;
static zcomp_stats_t zcomp_stats = {
{ "attempts", KSTAT_DATA_UINT64 },
{ "empty", KSTAT_DATA_UINT64 },
- { "skipped_minblocksize", KSTAT_DATA_UINT64 },
{ "skipped_insufficient_gain", KSTAT_DATA_UINT64 }
};
@@ -103,7 +101,7 @@ zio_compress_data(enum zio_compress c, void *src, void *dst, size_t s_len,
size_t minblocksize)
{
uint64_t *word, *word_end;
- size_t c_len, d_len, r_len;
+ size_t c_len, d_len;
zio_compress_info_t *ci = &zio_compress_table[c];
ASSERT((uint_t)c < ZIO_COMPRESS_FUNCTIONS);
@@ -129,12 +127,7 @@ zio_compress_data(enum zio_compress c, void *src, void *dst, size_t s_len,
return (s_len);
/* Compress at least 12.5% */
- d_len = P2ALIGN(s_len - (s_len >> 3), minblocksize);
- if (d_len == 0) {
- ZCOMPSTAT_BUMP(zcompstat_skipped_minblocksize);
- return (s_len);
- }
-
+ d_len = s_len - (s_len >> 3);
c_len = ci->ci_compress(src, dst, s_len, d_len, ci->ci_level);
if (c_len > d_len) {
@@ -142,19 +135,7 @@ zio_compress_data(enum zio_compress c, void *src, void *dst, size_t s_len,
return (s_len);
}
- /*
- * Cool. We compressed at least as much as we were hoping to.
- * For both security and repeatability, pad out the last sector.
- */
- r_len = P2ROUNDUP(c_len, minblocksize);
- if (r_len > c_len) {
- bzero((char *)dst + c_len, r_len - c_len);
- c_len = r_len;
- }
-
ASSERT3U(c_len, <=, d_len);
- ASSERT(P2PHASE(c_len, minblocksize) == 0);
-
return (c_len);
}
OpenPOWER on IntegriCloud