Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
extents.c File Reference
#include <linux/fs.h>
#include <linux/time.h>
#include <linux/jbd2.h>
#include <linux/highuid.h>
#include <linux/pagemap.h>
#include <linux/quotaops.h>
#include <linux/string.h>
#include <linux/slab.h>
#include <linux/falloc.h>
#include <asm/uaccess.h>
#include <linux/fiemap.h>
#include "ext4_jbd2.h"
#include <trace/events/ext4.h>

Go to the source code of this file.

Macros

#define EXT4_EXT_MAY_ZEROOUT
 
#define EXT4_EXT_MARK_UNINIT1   0x2 /* mark first half uninitialized */
 
#define EXT4_EXT_MARK_UNINIT2   0x4 /* mark second half uninitialized */
 
#define EXT4_EXT_DATA_VALID1   0x8 /* first half contains valid data */
 
#define EXT4_EXT_DATA_VALID2   0x10 /* second half contains valid data */
 
#define ext4_ext_dirty(handle, inode, path)   __ext4_ext_dirty(__func__, __LINE__, (handle), (inode), (path))
 
#define ext4_ext_check(inode, eh, depth)   __ext4_ext_check(__func__, __LINE__, inode, eh, depth)
 
#define ext4_ext_check_block(inode, eh, depth, bh)   __ext4_ext_check_block(__func__, __LINE__, inode, eh, depth, bh)
 
#define ext4_ext_show_path(inode, path)
 
#define ext4_ext_show_leaf(inode, path)
 
#define ext4_ext_show_move(inode, path, newblock, level)
 
#define EXT4_FIEMAP_FLAGS   (FIEMAP_FLAG_SYNC|FIEMAP_FLAG_XATTR)
 

Functions

int ext4_ext_calc_metadata_amount (struct inode *inode, ext4_lblk_t lblock)
 
int ext4_ext_check_inode (struct inode *inode)
 
void ext4_ext_drop_refs (struct ext4_ext_path *path)
 
int ext4_ext_tree_init (handle_t *handle, struct inode *inode)
 
struct ext4_ext_pathext4_ext_find_extent (struct inode *inode, ext4_lblk_t block, struct ext4_ext_path *path)
 
int ext4_can_extents_be_merged (struct inode *inode, struct ext4_extent *ex1, struct ext4_extent *ex2)
 
int ext4_ext_insert_extent (handle_t *handle, struct inode *inode, struct ext4_ext_path *path, struct ext4_extent *newext, int flag)
 
int ext4_ext_calc_credits_for_single_extent (struct inode *inode, int nrblocks, struct ext4_ext_path *path)
 
int ext4_ext_index_trans_blocks (struct inode *inode, int nrblocks, int chunk)
 
void ext4_ext_init (struct super_block *sb)
 
void ext4_ext_release (struct super_block *sb)
 
int ext4_find_delalloc_cluster (struct inode *inode, ext4_lblk_t lblk, int search_hint_reverse)
 
int ext4_ext_map_blocks (handle_t *handle, struct inode *inode, struct ext4_map_blocks *map, int flags)
 
void ext4_ext_truncate (struct inode *inode)
 
long ext4_fallocate (struct file *file, int mode, loff_t offset, loff_t len)
 
int ext4_convert_unwritten_extents (struct inode *inode, loff_t offset, ssize_t len)
 
int ext4_ext_punch_hole (struct file *file, loff_t offset, loff_t length)
 
int ext4_fiemap (struct inode *inode, struct fiemap_extent_info *fieinfo, __u64 start, __u64 len)
 

Macro Definition Documentation

#define ext4_ext_check (   inode,
  eh,
  depth 
)    __ext4_ext_check(__func__, __LINE__, inode, eh, depth)

Definition at line 456 of file extents.c.

#define ext4_ext_check_block (   inode,
  eh,
  depth,
  bh 
)    __ext4_ext_check_block(__func__, __LINE__, inode, eh, depth, bh)

Definition at line 481 of file extents.c.

#define EXT4_EXT_DATA_VALID1   0x8 /* first half contains valid data */

Definition at line 54 of file extents.c.

#define EXT4_EXT_DATA_VALID2   0x10 /* second half contains valid data */

Definition at line 55 of file extents.c.

#define ext4_ext_dirty (   handle,
  inode,
  path 
)    __ext4_ext_dirty(__func__, __LINE__, (handle), (inode), (path))

Definition at line 154 of file extents.c.

#define EXT4_EXT_MARK_UNINIT1   0x2 /* mark first half uninitialized */

Definition at line 51 of file extents.c.

#define EXT4_EXT_MARK_UNINIT2   0x4 /* mark second half uninitialized */

Definition at line 52 of file extents.c.

#define EXT4_EXT_MAY_ZEROOUT
Value:
0x1 /* safe to zeroout if split fails \
due to ENOSPC */

Definition at line 50 of file extents.c.

#define ext4_ext_show_leaf (   inode,
  path 
)

Definition at line 563 of file extents.c.

#define ext4_ext_show_move (   inode,
  path,
  newblock,
  level 
)

Definition at line 564 of file extents.c.

#define ext4_ext_show_path (   inode,
  path 
)

Definition at line 562 of file extents.c.

#define EXT4_FIEMAP_FLAGS   (FIEMAP_FLAG_SYNC|FIEMAP_FLAG_XATTR)

Definition at line 4776 of file extents.c.

Function Documentation

int ext4_can_extents_be_merged ( struct inode inode,
struct ext4_extent ex1,
struct ext4_extent ex2 
)

Definition at line 1573 of file extents.c.

int ext4_convert_unwritten_extents ( struct inode inode,
loff_t  offset,
ssize_t  len 
)

Definition at line 4526 of file extents.c.

int ext4_ext_calc_credits_for_single_extent ( struct inode inode,
int  nrblocks,
struct ext4_ext_path path 
)

Definition at line 2233 of file extents.c.

int ext4_ext_calc_metadata_amount ( struct inode inode,
ext4_lblk_t  lblock 
)

Definition at line 294 of file extents.c.

int ext4_ext_check_inode ( struct inode inode)

Definition at line 459 of file extents.c.

void ext4_ext_drop_refs ( struct ext4_ext_path path)

Definition at line 567 of file extents.c.

struct ext4_ext_path* ext4_ext_find_extent ( struct inode inode,
ext4_lblk_t  block,
struct ext4_ext_path path 
)
read

Definition at line 716 of file extents.c.

int ext4_ext_index_trans_blocks ( struct inode inode,
int  nrblocks,
int  chunk 
)

Definition at line 2272 of file extents.c.

void ext4_ext_init ( struct super_block sb)

Definition at line 2819 of file extents.c.

int ext4_ext_insert_extent ( handle_t *  handle,
struct inode inode,
struct ext4_ext_path path,
struct ext4_extent newext,
int  flag 
)

Definition at line 1787 of file extents.c.

int ext4_ext_map_blocks ( handle_t *  handle,
struct inode inode,
struct ext4_map_blocks map,
int  flags 
)

Definition at line 3906 of file extents.c.

int ext4_ext_punch_hole ( struct file file,
loff_t  offset,
loff_t  length 
)

Definition at line 4825 of file extents.c.

void ext4_ext_release ( struct super_block sb)

Definition at line 2850 of file extents.c.

int ext4_ext_tree_init ( handle_t *  handle,
struct inode inode 
)

Definition at line 701 of file extents.c.

void ext4_ext_truncate ( struct inode inode)

Definition at line 4292 of file extents.c.

long ext4_fallocate ( struct file file,
int  mode,
loff_t  offset,
loff_t  len 
)

Definition at line 4409 of file extents.c.

int ext4_fiemap ( struct inode inode,
struct fiemap_extent_info fieinfo,
__u64  start,
__u64  len 
)

Definition at line 4993 of file extents.c.

int ext4_find_delalloc_cluster ( struct inode inode,
ext4_lblk_t  lblk,
int  search_hint_reverse 
)

Definition at line 3562 of file extents.c.