/*
* GRUB - - GRand Unified Bootloader
* Copyright ( C ) 1999 , 2000 , 2001 , 2002 , 2003 , 2004 Free Software Foundation , Inc .
*
* SPDX - License - Identifier : GPL - 2.0 +
*/
/*
* Copyright 2007 Sun Microsystems , Inc . All rights reserved .
* Use is subject to license terms .
*/
# ifndef _SYS_DSL_DATASET_H
# define _SYS_DSL_DATASET_H
typedef struct dsl_dataset_phys {
uint64_t ds_dir_obj ;
uint64_t ds_prev_snap_obj ;
uint64_t ds_prev_snap_txg ;
uint64_t ds_next_snap_obj ;
uint64_t ds_snapnames_zapobj ; /* zap obj of snaps; ==0 for snaps */
uint64_t ds_num_children ; /* clone/snap children; ==0 for head */
uint64_t ds_creation_time ; /* seconds since 1970 */
uint64_t ds_creation_txg ;
uint64_t ds_deadlist_obj ;
uint64_t ds_used_bytes ;
uint64_t ds_compressed_bytes ;
uint64_t ds_uncompressed_bytes ;
uint64_t ds_unique_bytes ; /* only relevant to snapshots */
/*
* The ds_fsid_guid is a 56 - bit ID that can change to avoid
* collisions . The ds_guid is a 64 - bit ID that will never
* change , so there is a small probability that it will collide .
*/
uint64_t ds_fsid_guid ;
uint64_t ds_guid ;
uint64_t ds_flags ;
blkptr_t ds_bp ;
uint64_t ds_pad [ 8 ] ; /* pad out to 320 bytes for good measure */
} dsl_dataset_phys_t ;
# endif /* _SYS_DSL_DATASET_H */