aboutsummaryrefslogtreecommitdiff
path: root/module/zfs/dmu_recv.c
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2024-03-25 21:58:50 +0000
committerGitHub <noreply@github.com>2024-03-25 21:58:50 +0000
commit80cc516295fef1a429542fcfeea369c6bbb85ce4 (patch)
tree30b9d9df590252a12821f43d9de500a8253b51cd /module/zfs/dmu_recv.c
parentbf8f72359d1bf0cdb6a4b31ccfc7bbef0f948ca4 (diff)
downloadsrc-80cc516295fef1a429542fcfeea369c6bbb85ce4.tar.gz
src-80cc516295fef1a429542fcfeea369c6bbb85ce4.zip
Diffstat (limited to 'module/zfs/dmu_recv.c')
-rw-r--r--module/zfs/dmu_recv.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/module/zfs/dmu_recv.c b/module/zfs/dmu_recv.c
index 2cf10909738b..9f1c25f866f7 100644
--- a/module/zfs/dmu_recv.c
+++ b/module/zfs/dmu_recv.c
@@ -2353,7 +2353,6 @@ receive_process_write_record(struct receive_writer_arg *rwa,
if (rwa->heal) {
blkptr_t *bp;
dmu_buf_t *dbp;
- dnode_t *dn;
int flags = DB_RF_CANFAIL;
if (rwa->raw)
@@ -2385,19 +2384,15 @@ receive_process_write_record(struct receive_writer_arg *rwa,
dmu_buf_rele(dbp, FTAG);
return (err);
}
- dn = dmu_buf_dnode_enter(dbp);
/* Make sure the on-disk block and recv record sizes match */
- if (drrw->drr_logical_size !=
- dn->dn_datablkszsec << SPA_MINBLOCKSHIFT) {
+ if (drrw->drr_logical_size != dbp->db_size) {
err = ENOTSUP;
- dmu_buf_dnode_exit(dbp);
dmu_buf_rele(dbp, FTAG);
return (err);
}
/* Get the block pointer for the corrupted block */
bp = dmu_buf_get_blkptr(dbp);
err = do_corrective_recv(rwa, drrw, rrd, bp);
- dmu_buf_dnode_exit(dbp);
dmu_buf_rele(dbp, FTAG);
return (err);
}