diff options
author | Alexander Motin <mav@FreeBSD.org> | 2023-05-11 21:27:12 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-11 21:27:12 +0000 |
commit | 469019fb0b2b7ca4bd6c3de5c2f1056a4446f0e3 (patch) | |
tree | bf54403ad0b20652f8fa7cb5618514e331854cbc | |
parent | 14ba8ab97ddb3674351861ecf373125ac4e1dc63 (diff) | |
download | src-469019fb0b2b7ca4bd6c3de5c2f1056a4446f0e3.tar.gz src-469019fb0b2b7ca4bd6c3de5c2f1056a4446f0e3.zip |
zil: Don't expect zio_shrink() to succeed.
At least for RAIDZ zio_shrink() does not reduce zio size, but reduced
wsz in that case likely results in writing uninitialized memory.
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Sponsored by: iXsystems, Inc.
Closes #14853
-rw-r--r-- | module/zfs/zil.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/module/zfs/zil.c b/module/zfs/zil.c index ec9da706a806..c37da89dd438 100644 --- a/module/zfs/zil.c +++ b/module/zfs/zil.c @@ -1866,6 +1866,7 @@ zil_lwb_write_issue(zilog_t *zilog, lwb_t *lwb) wsz = P2ROUNDUP_TYPED(lwb->lwb_nused, ZIL_MIN_BLKSZ, uint64_t); ASSERT3U(wsz, <=, lwb->lwb_sz); zio_shrink(lwb->lwb_write_zio, wsz); + wsz = lwb->lwb_write_zio->io_size; } else { wsz = lwb->lwb_sz; |