Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
relocation.c File Reference
#include <linux/sched.h>
#include <linux/pagemap.h>
#include <linux/writeback.h>
#include <linux/blkdev.h>
#include <linux/rbtree.h>
#include <linux/slab.h>
#include "ctree.h"
#include "disk-io.h"
#include "transaction.h"
#include "volumes.h"
#include "locking.h"
#include "btrfs_inode.h"
#include "async-thread.h"
#include "free-space-cache.h"
#include "inode-map.h"

Go to the source code of this file.

Data Structures

struct  tree_entry
 
struct  backref_node
 
struct  backref_edge
 
struct  backref_cache
 
struct  mapping_node
 
struct  mapping_tree
 
struct  tree_block
 
struct  file_extent_cluster
 
struct  reloc_control
 

Macros

#define LOWER   0
 
#define UPPER   1
 
#define MAX_EXTENTS   128
 
#define MOVE_DATA_EXTENTS   0
 
#define UPDATE_DATA_PTRS   1
 

Functions

void backref_tree_panic (struct rb_node *rb_node, int errno, u64 bytenr)
 
int btrfs_init_reloc_root (struct btrfs_trans_handle *trans, struct btrfs_root *root)
 
int btrfs_update_reloc_root (struct btrfs_trans_handle *trans, struct btrfs_root *root)
 
int btrfs_relocate_block_group (struct btrfs_root *extent_root, u64 group_start)
 
int btrfs_recover_relocation (struct btrfs_root *root)
 
int btrfs_reloc_clone_csums (struct inode *inode, u64 file_pos, u64 len)
 
void btrfs_reloc_cow_block (struct btrfs_trans_handle *trans, struct btrfs_root *root, struct extent_buffer *buf, struct extent_buffer *cow)
 
void btrfs_reloc_pre_snapshot (struct btrfs_trans_handle *trans, struct btrfs_pending_snapshot *pending, u64 *bytes_to_reserve)
 
int btrfs_reloc_post_snapshot (struct btrfs_trans_handle *trans, struct btrfs_pending_snapshot *pending)
 

Macro Definition Documentation

#define LOWER   0

Definition at line 95 of file relocation.c.

#define MAX_EXTENTS   128

Definition at line 147 of file relocation.c.

#define MOVE_DATA_EXTENTS   0

Definition at line 191 of file relocation.c.

#define UPDATE_DATA_PTRS   1

Definition at line 192 of file relocation.c.

#define UPPER   1

Definition at line 96 of file relocation.c.

Function Documentation

void backref_tree_panic ( struct rb_node rb_node,
int  errno,
u64  bytenr 
)

Definition at line 329 of file relocation.c.

int btrfs_init_reloc_root ( struct btrfs_trans_handle trans,
struct btrfs_root root 
)

Definition at line 1359 of file relocation.c.

int btrfs_recover_relocation ( struct btrfs_root root)

Definition at line 4134 of file relocation.c.

int btrfs_reloc_clone_csums ( struct inode inode,
u64  file_pos,
u64  len 
)

Definition at line 4297 of file relocation.c.

void btrfs_reloc_cow_block ( struct btrfs_trans_handle trans,
struct btrfs_root root,
struct extent_buffer buf,
struct extent_buffer cow 
)

Definition at line 4338 of file relocation.c.

int btrfs_reloc_post_snapshot ( struct btrfs_trans_handle trans,
struct btrfs_pending_snapshot pending 
)

Definition at line 4430 of file relocation.c.

void btrfs_reloc_pre_snapshot ( struct btrfs_trans_handle trans,
struct btrfs_pending_snapshot pending,
u64 bytes_to_reserve 
)

Definition at line 4396 of file relocation.c.

int btrfs_relocate_block_group ( struct btrfs_root extent_root,
u64  group_start 
)

Definition at line 4001 of file relocation.c.

int btrfs_update_reloc_root ( struct btrfs_trans_handle trans,
struct btrfs_root root 
)

Definition at line 1394 of file relocation.c.