Lines Matching defs:db

139 	dmu_buf_impl_t *db;
147 db = dbuf_hold(dn, blkid, tag);
151 if (db == NULL) {
156 *dbp = &db->db;
172 dmu_buf_impl_t *db = (dmu_buf_impl_t *)(*dbp);
173 err = dbuf_read(db, NULL, db_flags);
175 dbuf_rele(db, tag);
192 dmu_buf_impl_t *db = (dmu_buf_impl_t *)db_fake;
196 DB_DNODE_ENTER(db);
197 dn = DB_DNODE(db);
199 if (dn->dn_bonus != db) {
208 DB_DNODE_EXIT(db);
215 dmu_buf_impl_t *db = (dmu_buf_impl_t *)db_fake;
219 DB_DNODE_ENTER(db);
220 dn = DB_DNODE(db);
224 } else if (dn->dn_bonus != db) {
231 DB_DNODE_EXIT(db);
238 dmu_buf_impl_t *db = (dmu_buf_impl_t *)db_fake;
242 DB_DNODE_ENTER(db);
243 dn = DB_DNODE(db);
245 DB_DNODE_EXIT(db);
272 dmu_buf_impl_t *db;
286 db = dn->dn_bonus;
289 if (refcount_add(&db->db_holds, tag) == 1) {
290 VERIFY(dnode_add_ref(dn, db));
303 VERIFY(0 == dbuf_read(db, NULL, DB_RF_MUST_SUCCEED | DB_RF_NOPREFETCH));
305 *dbp = &db->db;
315 * if you only want to find an already existing spill db, then
321 dmu_buf_impl_t *db = NULL;
327 db = dbuf_hold(dn, DMU_SPILL_BLKID, tag);
332 ASSERT(db != NULL);
333 err = dbuf_read(db, NULL, flags);
335 *dbp = &db->db;
337 dbuf_rele(db, tag);
344 dmu_buf_impl_t *db = (dmu_buf_impl_t *)bonus;
348 DB_DNODE_ENTER(db);
349 dn = DB_DNODE(db);
366 DB_DNODE_EXIT(db);
373 dmu_buf_impl_t *db = (dmu_buf_impl_t *)bonus;
377 DB_DNODE_ENTER(db);
378 dn = DB_DNODE(db);
380 DB_DNODE_EXIT(db);
430 dmu_buf_impl_t *db = dbuf_hold(dn, blkid+i, tag);
431 if (db == NULL) {
439 (void) dbuf_read(db, zio, dbuf_flags);
444 dbp[i] = &db->db;
458 dmu_buf_impl_t *db = (dmu_buf_impl_t *)dbp[i];
459 mutex_enter(&db->db_mtx);
460 while (db->db_state == DB_READ ||
461 db->db_state == DB_FILL)
462 cv_wait(&db->db_changed, &db->db_mtx);
463 if (db->db_state == DB_UNCACHED)
465 mutex_exit(&db->db_mtx);
501 dmu_buf_impl_t *db = (dmu_buf_impl_t *)db_fake;
505 DB_DNODE_ENTER(db);
506 dn = DB_DNODE(db);
509 DB_DNODE_EXIT(db);
800 dmu_buf_t *db = dbp[i];
804 bufoff = offset - db->db_offset;
805 tocpy = (int)MIN(db->db_size - bufoff, size);
807 bcopy((char *)db->db_data + bufoff, buf, tocpy);
835 dmu_buf_t *db = dbp[i];
839 bufoff = offset - db->db_offset;
840 tocpy = (int)MIN(db->db_size - bufoff, size);
842 ASSERT(i == 0 || i == numbufs-1 || tocpy == db->db_size);
844 if (tocpy == db->db_size)
845 dmu_buf_will_fill(db, tx);
847 dmu_buf_will_dirty(db, tx);
849 bcopy(buf, (char *)db->db_data + bufoff, tocpy);
851 if (tocpy == db->db_size)
852 dmu_buf_fill_done(db, tx);
875 dmu_buf_t *db = dbp[i];
877 dmu_buf_will_not_fill(db, tx);
887 dmu_buf_t *db;
892 FTAG, &db));
894 dmu_buf_write_embedded(db,
898 dmu_buf_rele(db, FTAG);
1049 dmu_buf_t *db = dbp[i];
1053 bufoff = uio->uio_loffset - db->db_offset;
1054 tocpy = (int)MIN(db->db_size - bufoff, size);
1057 dmu_buf_impl_t *dbi = (dmu_buf_impl_t *)db;
1071 err = uiomove((char *)db->db_data + bufoff, tocpy,
1100 dmu_buf_t *db = dbp[i];
1104 bufoff = uio->uio_loffset - db->db_offset;
1105 tocpy = (int)MIN(db->db_size - bufoff, size);
1107 ASSERT(i == 0 || i == numbufs-1 || tocpy == db->db_size);
1109 if (tocpy == db->db_size)
1110 dmu_buf_will_fill(db, tx);
1112 dmu_buf_will_dirty(db, tx);
1120 err = uiomove((char *)db->db_data + bufoff, tocpy,
1123 if (tocpy == db->db_size)
1124 dmu_buf_fill_done(db, tx);
1140 dmu_buf_impl_t *db = (dmu_buf_impl_t *)zdb;
1147 DB_DNODE_ENTER(db);
1148 dn = DB_DNODE(db);
1150 DB_DNODE_EXIT(db);
1196 dmu_buf_t *db = dbp[i];
1200 ASSERT3U(db->db_size, >=, PAGESIZE);
1202 bufoff = offset - db->db_offset;
1203 tocpy = (int)MIN(db->db_size - bufoff, size);
1205 ASSERT(i == 0 || i == numbufs-1 || tocpy == db->db_size);
1207 if (tocpy == db->db_size)
1208 dmu_buf_will_fill(db, tx);
1210 dmu_buf_will_dirty(db, tx);
1213 ASSERT3U(pp->p_offset, ==, db->db_offset + bufoff);
1216 bcopy(va, (char *)db->db_data + bufoff, thiscpy);
1222 if (tocpy == db->db_size)
1223 dmu_buf_fill_done(db, tx);
1254 dmu_buf_t *db = dbp[i];
1258 ASSERT3U(db->db_size, >=, PAGESIZE);
1260 bufoff = offset - db->db_offset;
1261 tocpy = (int)MIN(db->db_size - bufoff, size);
1263 ASSERT(i == 0 || i == numbufs-1 || tocpy == db->db_size);
1265 if (tocpy == db->db_size)
1266 dmu_buf_will_fill(db, tx);
1268 dmu_buf_will_dirty(db, tx);
1271 ASSERT3U(ptoa((*ma)->pindex), ==, db->db_offset + bufoff);
1274 bcopy(va, (char *)db->db_data + bufoff, thiscpy);
1280 if (tocpy == db->db_size)
1281 dmu_buf_fill_done(db, tx);
1298 dmu_buf_impl_t *db = (dmu_buf_impl_t *)handle;
1300 return (arc_loan_buf(db->db_objset->os_spa, size));
1324 dmu_buf_impl_t *db;
1332 VERIFY((db = dbuf_hold(dn, blkid, FTAG)) != NULL);
1336 if (offset == db->db.db_offset && blksz == db->db.db_size) {
1337 dbuf_assign_arcbuf(db, buf, tx);
1338 dbuf_rele(db, FTAG);
1349 dbuf_rele(db, FTAG);
1368 dmu_buf_t *db = dsa->dsa_zgd->zgd_db;
1377 BP_SET_LSIZE(bp, db->db_size);
1397 dmu_buf_impl_t *db = dr->dr_dbuf;
1399 mutex_enter(&db->db_mtx);
1420 cv_broadcast(&db->db_changed);
1421 mutex_exit(&db->db_mtx);
1488 * Intent log support: sync the block associated with db to disk.
1516 dmu_buf_impl_t *db = (dmu_buf_impl_t *)zgd->zgd_db;
1517 objset_t *os = db->db_objset;
1529 db->db.db_object, db->db_level, db->db_blkid);
1531 DB_DNODE_ENTER(db);
1532 dn = DB_DNODE(db);
1533 dmu_write_policy(os, dn, db->db_level, WP_DMU_SYNC, &zp);
1534 DB_DNODE_EXIT(db);
1548 mutex_enter(&db->db_mtx);
1554 mutex_exit(&db->db_mtx);
1563 mutex_exit(&db->db_mtx);
1567 dr = db->db_last_dirty;
1576 mutex_exit(&db->db_mtx);
1605 mutex_exit(&db->db_mtx);
1611 mutex_exit(&db->db_mtx);
1620 bp, dr->dt.dl.dr_data, DBUF_IS_L2CACHEABLE(db),
1621 DBUF_IS_L2COMPRESSIBLE(db), &zp, dmu_sync_ready,
1886 dmu_buf_impl_t *db = (dmu_buf_impl_t *)db_fake;
1888 DB_DNODE_ENTER(db);
1889 dmu_object_info_from_dnode(DB_DNODE(db), doi);
1890 DB_DNODE_EXIT(db);
1901 dmu_buf_impl_t *db = (dmu_buf_impl_t *)db_fake;
1904 DB_DNODE_ENTER(db);
1905 dn = DB_DNODE(db);
1911 DB_DNODE_EXIT(db);