Deleted Added
full compact
dmu_diff.c (219089) dmu_diff.c (246666)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE

--- 114 unchanged lines hidden (view full) ---

123}
124
125#define DBP_SPAN(dnp, level) \
126 (((uint64_t)dnp->dn_datablkszsec) << (SPA_MINBLOCKSHIFT + \
127 (level) * (dnp->dn_indblkshift - SPA_BLKPTRSHIFT)))
128
129/* ARGSUSED */
130static int
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE

--- 114 unchanged lines hidden (view full) ---

123}
124
125#define DBP_SPAN(dnp, level) \
126 (((uint64_t)dnp->dn_datablkszsec) << (SPA_MINBLOCKSHIFT + \
127 (level) * (dnp->dn_indblkshift - SPA_BLKPTRSHIFT)))
128
129/* ARGSUSED */
130static int
131diff_cb(spa_t *spa, zilog_t *zilog, const blkptr_t *bp, arc_buf_t *pbuf,
131diff_cb(spa_t *spa, zilog_t *zilog, const blkptr_t *bp,
132 const zbookmark_t *zb, const dnode_phys_t *dnp, void *arg)
133{
134 struct diffarg *da = arg;
135 int err = 0;
136
137 if (issig(JUSTLOOKING) && issig(FORREAL))
138 return (EINTR);
139

--- 10 unchanged lines hidden (view full) ---

150 return (err);
151 } else if (zb->zb_level == 0) {
152 dnode_phys_t *blk;
153 arc_buf_t *abuf;
154 uint32_t aflags = ARC_WAIT;
155 int blksz = BP_GET_LSIZE(bp);
156 int i;
157
132 const zbookmark_t *zb, const dnode_phys_t *dnp, void *arg)
133{
134 struct diffarg *da = arg;
135 int err = 0;
136
137 if (issig(JUSTLOOKING) && issig(FORREAL))
138 return (EINTR);
139

--- 10 unchanged lines hidden (view full) ---

150 return (err);
151 } else if (zb->zb_level == 0) {
152 dnode_phys_t *blk;
153 arc_buf_t *abuf;
154 uint32_t aflags = ARC_WAIT;
155 int blksz = BP_GET_LSIZE(bp);
156 int i;
157
158 if (dsl_read(NULL, spa, bp, pbuf,
159 arc_getbuf_func, &abuf, ZIO_PRIORITY_ASYNC_READ,
160 ZIO_FLAG_CANFAIL, &aflags, zb) != 0)
158 if (arc_read(NULL, spa, bp, arc_getbuf_func, &abuf,
159 ZIO_PRIORITY_ASYNC_READ, ZIO_FLAG_CANFAIL,
160 &aflags, zb) != 0)
161 return (EIO);
162
163 blk = abuf->b_data;
164 for (i = 0; i < blksz >> DNODE_SHIFT; i++) {
165 uint64_t dnobj = (zb->zb_blkid <<
166 (DNODE_BLOCK_SHIFT - DNODE_SHIFT)) + i;
167 err = report_dnode(da, dnobj, blk+i);
168 if (err)

--- 77 unchanged lines hidden ---
161 return (EIO);
162
163 blk = abuf->b_data;
164 for (i = 0; i < blksz >> DNODE_SHIFT; i++) {
165 uint64_t dnobj = (zb->zb_blkid <<
166 (DNODE_BLOCK_SHIFT - DNODE_SHIFT)) + i;
167 err = report_dnode(da, dnobj, blk+i);
168 if (err)

--- 77 unchanged lines hidden ---