Add WD_DEFLATE branch in append_store_block() to output a 5-byte store block when stream compression receives an empty last packet Signed-off-by: ZongYu Wu <wuzongyu1@huawei.com> --- drv/hisi_comp.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drv/hisi_comp.c b/drv/hisi_comp.c index 2386cf2..97bcf39 100644 --- a/drv/hisi_comp.c +++ b/drv/hisi_comp.c @@ -416,6 +416,11 @@ static int append_store_block(struct wd_comp_msg *msg) memcpy(req->dst + STORE_BLOCK_SIZE + sizeof(checksum), &isize, sizeof(isize)); msg->produced = STORE_BLOCK_SIZE + sizeof(checksum) + sizeof(isize); + } else if (msg->alg_type == WD_DEFLATE) { + if (unlikely(msg->avail_out < STORE_BLOCK_SIZE)) + return -WD_EINVAL; + memcpy(req->dst, store_block, STORE_BLOCK_SIZE); + msg->produced = STORE_BLOCK_SIZE; } req->status = 0; -- 2.33.0