| 
    FreeBSD ZFS 
   The Zettabyte File System 
   | 
 
#include <sys/dsl_dataset.h>#include <sys/dmu.h>#include <sys/refcount.h>#include <sys/zap.h>#include <sys/zfs_context.h>#include <sys/dsl_pool.h>
Go to the source code of this file.
Functions | |
| static int | dsl_deadlist_compare (const void *arg1, const void *arg2) | 
| static void | dsl_deadlist_load_tree (dsl_deadlist_t *dl) | 
| void | dsl_deadlist_open (dsl_deadlist_t *dl, objset_t *os, uint64_t object) | 
| void | dsl_deadlist_close (dsl_deadlist_t *dl) | 
| uint64_t | dsl_deadlist_alloc (objset_t *os, dmu_tx_t *tx) | 
| void | dsl_deadlist_free (objset_t *os, uint64_t dlobj, dmu_tx_t *tx) | 
| static void | dle_enqueue (dsl_deadlist_t *dl, dsl_deadlist_entry_t *dle, const blkptr_t *bp, dmu_tx_t *tx) | 
| static void | dle_enqueue_subobj (dsl_deadlist_t *dl, dsl_deadlist_entry_t *dle, uint64_t obj, dmu_tx_t *tx) | 
| void | dsl_deadlist_insert (dsl_deadlist_t *dl, const blkptr_t *bp, dmu_tx_t *tx) | 
| void | dsl_deadlist_add_key (dsl_deadlist_t *dl, uint64_t mintxg, dmu_tx_t *tx) | 
| Insert new key in deadlist, which must be > all current entries.   | |
| void | dsl_deadlist_remove_key (dsl_deadlist_t *dl, uint64_t mintxg, dmu_tx_t *tx) | 
| Remove this key, merging its entries into the previous key.   | |
| static void | dsl_deadlist_regenerate (objset_t *os, uint64_t dlobj, uint64_t mrs_obj, dmu_tx_t *tx) | 
| Walk ds's snapshots to regenerate generate ZAP & AVL.   | |
| uint64_t | dsl_deadlist_clone (dsl_deadlist_t *dl, uint64_t maxtxg, uint64_t mrs_obj, dmu_tx_t *tx) | 
| void | dsl_deadlist_space (dsl_deadlist_t *dl, uint64_t *usedp, uint64_t *compp, uint64_t *uncompp) | 
| void | dsl_deadlist_space_range (dsl_deadlist_t *dl, uint64_t mintxg, uint64_t maxtxg, uint64_t *usedp, uint64_t *compp, uint64_t *uncompp) | 
| return space used in the range (mintxg, maxtxg].   | |
| static void | dsl_deadlist_insert_bpobj (dsl_deadlist_t *dl, uint64_t obj, uint64_t birth, dmu_tx_t *tx) | 
| static int | dsl_deadlist_insert_cb (void *arg, const blkptr_t *bp, dmu_tx_t *tx) | 
| void | dsl_deadlist_merge (dsl_deadlist_t *dl, uint64_t obj, dmu_tx_t *tx) | 
| Merge the deadlist pointed to by 'obj' into dl.   | |
| void | dsl_deadlist_move_bpobj (dsl_deadlist_t *dl, bpobj_t *bpo, uint64_t mintxg, dmu_tx_t *tx) | 
| Remove entries on dl that are >= mintxg, and put them on the bpobj.   | |
| static void dle_enqueue | ( | dsl_deadlist_t * | dl, | 
| dsl_deadlist_entry_t * | dle, | ||
| const blkptr_t * | bp, | ||
| dmu_tx_t * | tx | ||
| ) |  [static] | 
        
Definition at line 178 of file dsl_deadlist.c.
| static void dle_enqueue_subobj | ( | dsl_deadlist_t * | dl, | 
| dsl_deadlist_entry_t * | dle, | ||
| uint64_t | obj, | ||
| dmu_tx_t * | tx | ||
| ) |  [static] | 
        
Definition at line 194 of file dsl_deadlist.c.
| void dsl_deadlist_add_key | ( | dsl_deadlist_t * | dl, | 
| uint64_t | mintxg, | ||
| dmu_tx_t * | tx | ||
| ) | 
Insert new key in deadlist, which must be > all current entries.
mintxg is not inclusive.
Definition at line 245 of file dsl_deadlist.c.
Definition at line 143 of file dsl_deadlist.c.
| uint64_t dsl_deadlist_clone | ( | dsl_deadlist_t * | dl, | 
| uint64_t | maxtxg, | ||
| uint64_t | mrs_obj, | ||
| dmu_tx_t * | tx | ||
| ) | 
Definition at line 319 of file dsl_deadlist.c.
| void dsl_deadlist_close | ( | dsl_deadlist_t * | dl | ) | 
Definition at line 117 of file dsl_deadlist.c.
| static int dsl_deadlist_compare | ( | const void * | arg1, | 
| const void * | arg2 | ||
| ) |  [static] | 
        
Definition at line 54 of file dsl_deadlist.c.
Definition at line 152 of file dsl_deadlist.c.
| void dsl_deadlist_insert | ( | dsl_deadlist_t * | dl, | 
| const blkptr_t * | bp, | ||
| dmu_tx_t * | tx | ||
| ) | 
Definition at line 210 of file dsl_deadlist.c.
| static void dsl_deadlist_insert_bpobj | ( | dsl_deadlist_t * | dl, | 
| uint64_t | obj, | ||
| uint64_t | birth, | ||
| dmu_tx_t * | tx | ||
| ) |  [static] | 
        
Definition at line 413 of file dsl_deadlist.c.
Definition at line 443 of file dsl_deadlist.c.
| static void dsl_deadlist_load_tree | ( | dsl_deadlist_t * | dl | ) |  [static] | 
        
Definition at line 68 of file dsl_deadlist.c.
| void dsl_deadlist_merge | ( | dsl_deadlist_t * | dl, | 
| uint64_t | obj, | ||
| dmu_tx_t * | tx | ||
| ) | 
Merge the deadlist pointed to by 'obj' into dl.
obj will be left as an empty deadlist.
Definition at line 455 of file dsl_deadlist.c.
| void dsl_deadlist_move_bpobj | ( | dsl_deadlist_t * | dl, | 
| bpobj_t * | bpo, | ||
| uint64_t | mintxg, | ||
| dmu_tx_t * | tx | ||
| ) | 
Remove entries on dl that are >= mintxg, and put them on the bpobj.
Definition at line 493 of file dsl_deadlist.c.
| void dsl_deadlist_open | ( | dsl_deadlist_t * | dl, | 
| objset_t * | os, | ||
| uint64_t | object | ||
| ) | 
Definition at line 94 of file dsl_deadlist.c.
| static void dsl_deadlist_regenerate | ( | objset_t * | os, | 
| uint64_t | dlobj, | ||
| uint64_t | mrs_obj, | ||
| dmu_tx_t * | tx | ||
| ) |  [static] | 
        
Walk ds's snapshots to regenerate generate ZAP & AVL.
Definition at line 296 of file dsl_deadlist.c.
| void dsl_deadlist_remove_key | ( | dsl_deadlist_t * | dl, | 
| uint64_t | mintxg, | ||
| dmu_tx_t * | tx | ||
| ) | 
Remove this key, merging its entries into the previous key.
Definition at line 269 of file dsl_deadlist.c.
| void dsl_deadlist_space | ( | dsl_deadlist_t * | dl, | 
| uint64_t * | usedp, | ||
| uint64_t * | compp, | ||
| uint64_t * | uncompp | ||
| ) | 
Definition at line 349 of file dsl_deadlist.c.
| void dsl_deadlist_space_range | ( | dsl_deadlist_t * | dl, | 
| uint64_t | mintxg, | ||
| uint64_t | maxtxg, | ||
| uint64_t * | usedp, | ||
| uint64_t * | compp, | ||
| uint64_t * | uncompp | ||
| ) | 
return space used in the range (mintxg, maxtxg].
Includes maxtxg, does not include mintxg. mintxg and maxtxg must both be keys in the deadlist (unless maxtxg is larger than any bp in the deadlist (eg. UINT64_MAX)).
Definition at line 372 of file dsl_deadlist.c.
 1.7.3