Lines Matching refs:dpa

2034 dbuf_issue_final_prefetch(dbuf_prefetch_arg_t *dpa, blkptr_t *bp)  in dbuf_issue_final_prefetch()  argument
2040 dpa->dpa_aflags | ARC_FLAG_NOWAIT | ARC_FLAG_PREFETCH; in dbuf_issue_final_prefetch()
2042 ASSERT3U(dpa->dpa_curlevel, ==, BP_GET_LEVEL(bp)); in dbuf_issue_final_prefetch()
2043 ASSERT3U(dpa->dpa_curlevel, ==, dpa->dpa_zb.zb_level); in dbuf_issue_final_prefetch()
2044 ASSERT(dpa->dpa_zio != NULL); in dbuf_issue_final_prefetch()
2045 (void) arc_read(dpa->dpa_zio, dpa->dpa_spa, bp, NULL, NULL, in dbuf_issue_final_prefetch()
2046 dpa->dpa_prio, ZIO_FLAG_CANFAIL | ZIO_FLAG_SPECULATIVE, in dbuf_issue_final_prefetch()
2047 &aflags, &dpa->dpa_zb); in dbuf_issue_final_prefetch()
2058 dbuf_prefetch_arg_t *dpa = private; in dbuf_prefetch_indirect_done() local
2060 ASSERT3S(dpa->dpa_zb.zb_level, <, dpa->dpa_curlevel); in dbuf_prefetch_indirect_done()
2061 ASSERT3S(dpa->dpa_curlevel, >, 0); in dbuf_prefetch_indirect_done()
2063 ASSERT3S(BP_GET_LEVEL(zio->io_bp), ==, dpa->dpa_curlevel); in dbuf_prefetch_indirect_done()
2065 ASSERT3P(zio->io_spa, ==, dpa->dpa_spa); in dbuf_prefetch_indirect_done()
2068 dpa->dpa_curlevel--; in dbuf_prefetch_indirect_done()
2070 uint64_t nextblkid = dpa->dpa_zb.zb_blkid >> in dbuf_prefetch_indirect_done()
2071 (dpa->dpa_epbs * (dpa->dpa_curlevel - dpa->dpa_zb.zb_level)); in dbuf_prefetch_indirect_done()
2073 P2PHASE(nextblkid, 1ULL << dpa->dpa_epbs); in dbuf_prefetch_indirect_done()
2075 kmem_free(dpa, sizeof (*dpa)); in dbuf_prefetch_indirect_done()
2076 } else if (dpa->dpa_curlevel == dpa->dpa_zb.zb_level) { in dbuf_prefetch_indirect_done()
2077 ASSERT3U(nextblkid, ==, dpa->dpa_zb.zb_blkid); in dbuf_prefetch_indirect_done()
2078 dbuf_issue_final_prefetch(dpa, bp); in dbuf_prefetch_indirect_done()
2079 kmem_free(dpa, sizeof (*dpa)); in dbuf_prefetch_indirect_done()
2084 ASSERT3U(dpa->dpa_curlevel, ==, BP_GET_LEVEL(bp)); in dbuf_prefetch_indirect_done()
2086 SET_BOOKMARK(&zb, dpa->dpa_zb.zb_objset, in dbuf_prefetch_indirect_done()
2087 dpa->dpa_zb.zb_object, dpa->dpa_curlevel, nextblkid); in dbuf_prefetch_indirect_done()
2089 (void) arc_read(dpa->dpa_zio, dpa->dpa_spa, in dbuf_prefetch_indirect_done()
2090 bp, dbuf_prefetch_indirect_done, dpa, dpa->dpa_prio, in dbuf_prefetch_indirect_done()
2180 dbuf_prefetch_arg_t *dpa = kmem_zalloc(sizeof (*dpa), KM_SLEEP); in dbuf_prefetch() local
2182 SET_BOOKMARK(&dpa->dpa_zb, ds != NULL ? ds->ds_object : DMU_META_OBJSET, in dbuf_prefetch()
2184 dpa->dpa_curlevel = curlevel; in dbuf_prefetch()
2185 dpa->dpa_prio = prio; in dbuf_prefetch()
2186 dpa->dpa_aflags = aflags; in dbuf_prefetch()
2187 dpa->dpa_spa = dn->dn_objset->os_spa; in dbuf_prefetch()
2188 dpa->dpa_epbs = epbs; in dbuf_prefetch()
2189 dpa->dpa_zio = pio; in dbuf_prefetch()
2200 dbuf_issue_final_prefetch(dpa, &bp); in dbuf_prefetch()
2201 kmem_free(dpa, sizeof (*dpa)); in dbuf_prefetch()
2208 (void) arc_read(dpa->dpa_zio, dpa->dpa_spa, in dbuf_prefetch()
2209 &bp, dbuf_prefetch_indirect_done, dpa, prio, in dbuf_prefetch()