diff --git a/crypto/deflate.c b/crypto/deflate.c
index 77d7655d316aed05ef28f211df4027370b9412f2..bc73342cd1ecc253909440de480909b7eab10beb 100644
--- a/crypto/deflate.c
+++ b/crypto/deflate.c
@@ -93,11 +93,13 @@ static int deflate_decomp_init(struct deflate_ctx *ctx)
 
 static void deflate_comp_exit(struct deflate_ctx *ctx)
 {
+	zlib_deflateEnd(&ctx->comp_stream);
 	vfree(ctx->comp_stream.workspace);
 }
 
 static void deflate_decomp_exit(struct deflate_ctx *ctx)
 {
+	zlib_inflateEnd(&ctx->decomp_stream);
 	kfree(ctx->decomp_stream.workspace);
 }