diff options
author | Alexander Motin <mav@FreeBSD.org> | 2024-03-25 21:58:50 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-25 21:58:50 +0000 |
commit | 80cc516295fef1a429542fcfeea369c6bbb85ce4 (patch) | |
tree | 30b9d9df590252a12821f43d9de500a8253b51cd /module/zfs/dmu_recv.c | |
parent | bf8f72359d1bf0cdb6a4b31ccfc7bbef0f948ca4 (diff) | |
download | src-80cc516295fef1a429542fcfeea369c6bbb85ce4.tar.gz src-80cc516295fef1a429542fcfeea369c6bbb85ce4.zip |
Diffstat (limited to 'module/zfs/dmu_recv.c')
-rw-r--r-- | module/zfs/dmu_recv.c | 7 |
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); } |