fd313b306e
to reduce version number confusion
47 lines
1.6 KiB
Diff
47 lines
1.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: chrisrd <chris@onthe.net.au>
|
|
Date: Sat, 3 Mar 2018 05:01:53 +1100
|
|
Subject: [PATCH] Increment zil_itx_needcopy_bytes properly
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
In zil_lwb_commit() with TX_WRITE, we copy the log write record (lrw)
|
|
into the log write block (lwb) and send it off using zil_lwb_add_txg().
|
|
If we also have WR_NEED_COPY, we additionally copy the lwr's data into
|
|
the lwb to be sent off. If the lwr + data doesn't fit into the lwb, we
|
|
send the lrw and as much data as will fit (dnow bytes), then go back
|
|
and do the same with the remaining data.
|
|
|
|
Each time through this loop we're sending dnow data bytes. I.e.
|
|
zil_itx_needcopy_bytes should be incremented by dnow.
|
|
|
|
Reviewed-by: Richard Elling <Richard.Elling@RichardElling.com>
|
|
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
|
|
Signed-off-by: Chris Dunlop <chris@onthe.net.au>
|
|
Closes #6988
|
|
Closes #7176
|
|
(cherry picked from commit 792f88131c647a70440c709c78d43210db6c6534)
|
|
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
|
---
|
|
module/zfs/zil.c | 3 +--
|
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
|
|
|
diff --git a/module/zfs/zil.c b/module/zfs/zil.c
|
|
index 4d714cefc..645b1d4d8 100644
|
|
--- a/module/zfs/zil.c
|
|
+++ b/module/zfs/zil.c
|
|
@@ -1167,8 +1167,7 @@ cont:
|
|
lrw->lr_offset += dnow;
|
|
lrw->lr_length -= dnow;
|
|
ZIL_STAT_BUMP(zil_itx_needcopy_count);
|
|
- ZIL_STAT_INCR(zil_itx_needcopy_bytes,
|
|
- lrw->lr_length);
|
|
+ ZIL_STAT_INCR(zil_itx_needcopy_bytes, dnow);
|
|
} else {
|
|
ASSERT(itx->itx_wr_state == WR_INDIRECT);
|
|
dbuf = NULL;
|
|
--
|
|
2.14.2
|
|
|