Lines Matching defs:dva
163 typedef struct dva {
238 * phys birth txg when dva[0] was written; zero if same as logical birth txg
239 * note that typically all the dva's would be written in this
366 #define DVA_GET_ASIZE(dva) \
367 BF64_GET_SB((dva)->dva_word[0], 0, SPA_ASIZEBITS, SPA_MINBLOCKSHIFT, 0)
368 #define DVA_SET_ASIZE(dva, x) \
369 BF64_SET_SB((dva)->dva_word[0], 0, SPA_ASIZEBITS, \
372 #define DVA_GET_GRID(dva) BF64_GET((dva)->dva_word[0], 24, 8)
373 #define DVA_SET_GRID(dva, x) BF64_SET((dva)->dva_word[0], 24, 8, x)
375 #define DVA_GET_VDEV(dva) BF64_GET((dva)->dva_word[0], 32, SPA_VDEVBITS)
376 #define DVA_SET_VDEV(dva, x) \
377 BF64_SET((dva)->dva_word[0], 32, SPA_VDEVBITS, x)
379 #define DVA_GET_OFFSET(dva) \
380 BF64_GET_SB((dva)->dva_word[1], 0, 63, SPA_MINBLOCKSHIFT, 0)
381 #define DVA_SET_OFFSET(dva, x) \
382 BF64_SET_SB((dva)->dva_word[1], 0, 63, SPA_MINBLOCKSHIFT, 0, x)
384 #define DVA_GET_GANG(dva) BF64_GET((dva)->dva_word[1], 63, 1)
385 #define DVA_SET_GANG(dva, x) BF64_SET((dva)->dva_word[1], 63, 1, x)
501 #define DVA_IS_VALID(dva) (DVA_GET_ASIZE(dva) != 0)
514 #define DVA_IS_EMPTY(dva) ((dva)->dva_word[0] == 0ULL && \
515 (dva)->dva_word[1] == 0ULL)
585 const dva_t *dva = &bp->blk_dva[d]; \
586 if (DVA_IS_VALID(dva)) \
590 (u_longlong_t)DVA_GET_VDEV(dva), \
591 (u_longlong_t)DVA_GET_OFFSET(dva), \
592 (u_longlong_t)DVA_GET_ASIZE(dva), \
859 extern uint64_t dva_get_dsize_sync(spa_t *spa, const dva_t *dva);
872 extern boolean_t zfs_dva_valid(spa_t *spa, const dva_t *dva,