FreeBSD ZFS
The Zettabyte File System
Defines | Functions

dnode_sync.c File Reference

#include <sys/zfs_context.h>
#include <sys/dbuf.h>
#include <sys/dnode.h>
#include <sys/dmu.h>
#include <sys/dmu_tx.h>
#include <sys/dmu_objset.h>
#include <sys/dsl_dataset.h>
#include <sys/spa.h>
Include dependency graph for dnode_sync.c:

Go to the source code of this file.

Defines

#define ALL   -1

Functions

static void dnode_increase_indirection (dnode_t *dn, dmu_tx_t *tx)
static int free_blocks (dnode_t *dn, blkptr_t *bp, int num, dmu_tx_t *tx)
static int free_children (dmu_buf_impl_t *db, uint64_t blkid, uint64_t nblks, int trunc, dmu_tx_t *tx)
static void dnode_sync_free_range (dnode_t *dn, uint64_t blkid, uint64_t nblks, dmu_tx_t *tx)
 Traverses the indicated range of the provided file and "free"s all the blocks contained there.
void dnode_evict_dbufs (dnode_t *dn)
 Tries to kick all the dnode's dbufs out of the cache...
static void dnode_undirty_dbufs (list_t *list)
static void dnode_sync_free (dnode_t *dn, dmu_tx_t *tx)
void dnode_sync (dnode_t *dn, dmu_tx_t *tx)
 Writes out the dnode's dirty buffers.

Define Documentation

#define ALL   -1

Definition at line 216 of file dnode_sync.c.


Function Documentation

void dnode_evict_dbufs ( dnode_t dn)

Tries to kick all the dnode's dbufs out of the cache...

Definition at line 376 of file dnode_sync.c.

static void dnode_increase_indirection ( dnode_t dn,
dmu_tx_t tx 
) [static]

Definition at line 37 of file dnode_sync.c.

void dnode_sync ( dnode_t dn,
dmu_tx_t tx 
)

Writes out the dnode's dirty buffers.

Definition at line 529 of file dnode_sync.c.

static void dnode_sync_free ( dnode_t dn,
dmu_tx_t tx 
) [static]

Definition at line 467 of file dnode_sync.c.

static void dnode_sync_free_range ( dnode_t dn,
uint64_t  blkid,
uint64_t  nblks,
dmu_tx_t tx 
) [static]

Traverses the indicated range of the provided file and "free"s all the blocks contained there.

Definition at line 309 of file dnode_sync.c.

static void dnode_undirty_dbufs ( list_t *  list) [static]

Definition at line 436 of file dnode_sync.c.

static int free_blocks ( dnode_t dn,
blkptr_t bp,
int  num,
dmu_tx_t tx 
) [static]

Definition at line 116 of file dnode_sync.c.

static int free_children ( dmu_buf_impl_t db,
uint64_t  blkid,
uint64_t  nblks,
int  trunc,
dmu_tx_t tx 
) [static]

Definition at line 219 of file dnode_sync.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines