1N/A/*
1N/A * GRUB -- GRand Unified Bootloader
1N/A * Copyright (C) 1999,2000,2001,2002,2003,2004 Free Software Foundation, Inc.
1N/A *
1N/A * This program is free software; you can redistribute it and/or modify
1N/A * it under the terms of the GNU General Public License as published by
1N/A * the Free Software Foundation; either version 2 of the License, or
1N/A * (at your option) any later version.
1N/A *
1N/A * This program is distributed in the hope that it will be useful,
1N/A * but WITHOUT ANY WARRANTY; without even the implied warranty of
1N/A * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1N/A * GNU General Public License for more details.
1N/A *
1N/A * You should have received a copy of the GNU General Public License
1N/A * along with this program; if not, write to the Free Software
1N/A * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
1N/A */
1N/A/*
1N/A * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
1N/A * Use is subject to license terms.
1N/A */
1N/A
1N/A#ifndef _SYS_DSL_DATASET_H
1N/A#define _SYS_DSL_DATASET_H
1N/A
1N/A#pragma ident "%Z%%M% %I% %E% SMI"
1N/A
1N/Atypedef struct dsl_dataset_phys {
1N/A uint64_t ds_dir_obj;
1N/A uint64_t ds_prev_snap_obj;
1N/A uint64_t ds_prev_snap_txg;
1N/A uint64_t ds_next_snap_obj;
1N/A uint64_t ds_snapnames_zapobj; /* zap obj of snaps; ==0 for snaps */
1N/A uint64_t ds_num_children; /* clone/snap children; ==0 for head */
1N/A uint64_t ds_creation_time; /* seconds since 1970 */
1N/A uint64_t ds_creation_txg;
1N/A uint64_t ds_deadlist_obj;
1N/A uint64_t ds_used_bytes;
1N/A uint64_t ds_compressed_bytes;
1N/A uint64_t ds_uncompressed_bytes;
1N/A uint64_t ds_unique_bytes; /* only relevant to snapshots */
1N/A /*
1N/A * The ds_fsid_guid is a 56-bit ID that can change to avoid
1N/A * collisions. The ds_guid is a 64-bit ID that will never
1N/A * change, so there is a small probability that it will collide.
1N/A */
1N/A uint64_t ds_fsid_guid;
1N/A uint64_t ds_guid;
1N/A uint64_t ds_flags;
1N/A blkptr_t ds_bp;
1N/A uint64_t ds_pad[8]; /* pad out to 320 bytes for good measure */
1N/A} dsl_dataset_phys_t;
1N/A
1N/A#endif /* _SYS_DSL_DATASET_H */