Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
xfs_da_btree.h File Reference

Go to the source code of this file.

Data Structures

struct  xfs_da_blkinfo
 
struct  xfs_da_intnode
 
struct  xfs_da_intnode::xfs_da_node_hdr
 
struct  xfs_da_intnode::xfs_da_node_entry
 
struct  xfs_da_args
 
struct  xfs_da_state_blk
 
struct  xfs_da_state_path
 
struct  xfs_da_state
 
struct  xfs_nameops
 

Macros

#define XFS_DA_NODE_MAGIC   0xfebe /* magic number: non-leaf blocks */
 
#define XFS_ATTR_LEAF_MAGIC   0xfbee /* magic number: attribute leaf blks */
 
#define XFS_DIR2_LEAF1_MAGIC   0xd2f1 /* magic number: v2 dirlf single blks */
 
#define XFS_DIR2_LEAFN_MAGIC   0xd2ff /* magic number: v2 dirlf multi blks */
 
#define XFS_DA_NODE_MAXDEPTH   5 /* max depth of Btree */
 
#define XFS_LBSIZE(mp)   (mp)->m_sb.sb_blocksize
 
#define XFS_DA_OP_JUSTCHECK   0x0001 /* check for ok with no space */
 
#define XFS_DA_OP_RENAME   0x0002 /* this is an atomic rename op */
 
#define XFS_DA_OP_ADDNAME   0x0004 /* this is an add operation */
 
#define XFS_DA_OP_OKNOENT   0x0008 /* lookup/add op, ENOENT ok, else die */
 
#define XFS_DA_OP_CILOOKUP   0x0010 /* lookup to return CI name if found */
 
#define XFS_DA_OP_FLAGS
 
#define XFS_DA_LOGOFF(BASE, ADDR)   ((char *)(ADDR) - (char *)(BASE))
 
#define XFS_DA_LOGRANGE(BASE, ADDR, SIZE)
 

Typedefs

typedef struct xfs_da_blkinfo xfs_da_blkinfo_t
 
typedef struct xfs_da_intnode xfs_da_intnode_t
 
typedef struct xfs_da_node_hdr xfs_da_node_hdr_t
 
typedef struct xfs_da_node_entry xfs_da_node_entry_t
 
typedef struct xfs_da_args xfs_da_args_t
 
typedef struct xfs_da_state_blk xfs_da_state_blk_t
 
typedef struct xfs_da_state_path xfs_da_state_path_t
 
typedef struct xfs_da_state xfs_da_state_t
 

Enumerations

enum  xfs_dacmp { XFS_CMP_DIFFERENT, XFS_CMP_EXACT, XFS_CMP_CASE }
 

Functions

int xfs_da_node_create (xfs_da_args_t *args, xfs_dablk_t blkno, int level, struct xfs_buf **bpp, int whichfork)
 
int xfs_da_split (xfs_da_state_t *state)
 
int xfs_da_join (xfs_da_state_t *state)
 
void xfs_da_fixhashpath (xfs_da_state_t *state, xfs_da_state_path_t *path_to_to_fix)
 
int xfs_da_node_lookup_int (xfs_da_state_t *state, int *result)
 
int xfs_da_path_shift (xfs_da_state_t *state, xfs_da_state_path_t *path, int forward, int release, int *result)
 
int xfs_da_blk_link (xfs_da_state_t *state, xfs_da_state_blk_t *old_blk, xfs_da_state_blk_t *new_blk)
 
int xfs_da_grow_inode (xfs_da_args_t *args, xfs_dablk_t *new_blkno)
 
int xfs_da_grow_inode_int (struct xfs_da_args *args, xfs_fileoff_t *bno, int count)
 
int xfs_da_get_buf (struct xfs_trans *trans, struct xfs_inode *dp, xfs_dablk_t bno, xfs_daddr_t mappedbno, struct xfs_buf **bp, int whichfork)
 
int xfs_da_read_buf (struct xfs_trans *trans, struct xfs_inode *dp, xfs_dablk_t bno, xfs_daddr_t mappedbno, struct xfs_buf **bpp, int whichfork)
 
xfs_daddr_t xfs_da_reada_buf (struct xfs_trans *trans, struct xfs_inode *dp, xfs_dablk_t bno, int whichfork)
 
int xfs_da_shrink_inode (xfs_da_args_t *args, xfs_dablk_t dead_blkno, struct xfs_buf *dead_buf)
 
uint xfs_da_hashname (const __uint8_t *name_string, int name_length)
 
enum xfs_dacmp xfs_da_compname (struct xfs_da_args *args, const unsigned char *name, int len)
 
xfs_da_state_txfs_da_state_alloc (void)
 
void xfs_da_state_free (xfs_da_state_t *state)
 

Variables

struct kmem_zonexfs_da_state_zone
 
struct xfs_nameops xfs_default_nameops
 

Macro Definition Documentation

#define XFS_ATTR_LEAF_MAGIC   0xfbee /* magic number: attribute leaf blks */

Definition at line 39 of file xfs_da_btree.h.

#define XFS_DA_LOGOFF (   BASE,
  ADDR 
)    ((char *)(ADDR) - (char *)(BASE))

Definition at line 173 of file xfs_da_btree.h.

#define XFS_DA_LOGRANGE (   BASE,
  ADDR,
  SIZE 
)
Value:

Definition at line 174 of file xfs_da_btree.h.

#define XFS_DA_NODE_MAGIC   0xfebe /* magic number: non-leaf blocks */

Definition at line 38 of file xfs_da_btree.h.

#define XFS_DA_NODE_MAXDEPTH   5 /* max depth of Btree */

Definition at line 59 of file xfs_da_btree.h.

#define XFS_DA_OP_ADDNAME   0x0004 /* this is an add operation */

Definition at line 124 of file xfs_da_btree.h.

#define XFS_DA_OP_CILOOKUP   0x0010 /* lookup to return CI name if found */

Definition at line 126 of file xfs_da_btree.h.

#define XFS_DA_OP_FLAGS
Value:
{ XFS_DA_OP_JUSTCHECK, "JUSTCHECK" }, \
{ XFS_DA_OP_RENAME, "RENAME" }, \
{ XFS_DA_OP_ADDNAME, "ADDNAME" }, \
{ XFS_DA_OP_OKNOENT, "OKNOENT" }, \
{ XFS_DA_OP_CILOOKUP, "CILOOKUP" }

Definition at line 128 of file xfs_da_btree.h.

#define XFS_DA_OP_JUSTCHECK   0x0001 /* check for ok with no space */

Definition at line 122 of file xfs_da_btree.h.

#define XFS_DA_OP_OKNOENT   0x0008 /* lookup/add op, ENOENT ok, else die */

Definition at line 125 of file xfs_da_btree.h.

#define XFS_DA_OP_RENAME   0x0002 /* this is an atomic rename op */

Definition at line 123 of file xfs_da_btree.h.

#define XFS_DIR2_LEAF1_MAGIC   0xd2f1 /* magic number: v2 dirlf single blks */

Definition at line 40 of file xfs_da_btree.h.

#define XFS_DIR2_LEAFN_MAGIC   0xd2ff /* magic number: v2 dirlf multi blks */

Definition at line 41 of file xfs_da_btree.h.

#define XFS_LBSIZE (   mp)    (mp)->m_sb.sb_blocksize

Definition at line 75 of file xfs_da_btree.h.

Typedef Documentation

typedef struct xfs_da_node_entry xfs_da_node_entry_t

Definition at line 73 of file xfs_da_btree.h.

typedef struct xfs_da_node_hdr xfs_da_node_hdr_t

Definition at line 72 of file xfs_da_btree.h.

Enumeration Type Documentation

enum xfs_dacmp
Enumerator:
XFS_CMP_DIFFERENT 
XFS_CMP_EXACT 
XFS_CMP_CASE 

Definition at line 84 of file xfs_da_btree.h.

Function Documentation

int xfs_da_blk_link ( xfs_da_state_t state,
xfs_da_state_blk_t old_blk,
xfs_da_state_blk_t new_blk 
)

Definition at line 1199 of file xfs_da_btree.c.

enum xfs_dacmp xfs_da_compname ( struct xfs_da_args args,
const unsigned char name,
int  len 
)

Definition at line 1546 of file xfs_da_btree.c.

void xfs_da_fixhashpath ( xfs_da_state_t state,
xfs_da_state_path_t path_to_to_fix 
)

Definition at line 895 of file xfs_da_btree.c.

int xfs_da_get_buf ( struct xfs_trans *  trans,
struct xfs_inode *  dp,
xfs_dablk_t  bno,
xfs_daddr_t  mappedbno,
struct xfs_buf **  bp,
int  whichfork 
)

Definition at line 2083 of file xfs_da_btree.c.

int xfs_da_grow_inode ( xfs_da_args_t args,
xfs_dablk_t new_blkno 
)

Definition at line 1658 of file xfs_da_btree.c.

int xfs_da_grow_inode_int ( struct xfs_da_args args,
xfs_fileoff_t bno,
int  count 
)

Definition at line 1568 of file xfs_da_btree.c.

uint xfs_da_hashname ( const __uint8_t *  name_string,
int  name_length 
)

Definition at line 1518 of file xfs_da_btree.c.

int xfs_da_join ( xfs_da_state_t state)

Definition at line 616 of file xfs_da_btree.c.

int xfs_da_node_create ( xfs_da_args_t args,
xfs_dablk_t  blkno,
int  level,
struct xfs_buf **  bpp,
int  whichfork 
)

Definition at line 102 of file xfs_da_btree.c.

int xfs_da_node_lookup_int ( xfs_da_state_t state,
int result 
)

Definition at line 1057 of file xfs_da_btree.c.

int xfs_da_path_shift ( xfs_da_state_t state,
xfs_da_state_path_t path,
int  forward,
int  release,
int result 
)

Definition at line 1410 of file xfs_da_btree.c.

int xfs_da_read_buf ( struct xfs_trans *  trans,
struct xfs_inode *  dp,
xfs_dablk_t  bno,
xfs_daddr_t  mappedbno,
struct xfs_buf **  bpp,
int  whichfork 
)

Definition at line 2130 of file xfs_da_btree.c.

xfs_daddr_t xfs_da_reada_buf ( struct xfs_trans *  trans,
struct xfs_inode *  dp,
xfs_dablk_t  bno,
int  whichfork 
)

Definition at line 2210 of file xfs_da_btree.c.

int xfs_da_shrink_inode ( xfs_da_args_t args,
xfs_dablk_t  dead_blkno,
struct xfs_buf dead_buf 
)

Definition at line 1886 of file xfs_da_btree.c.

int xfs_da_split ( xfs_da_state_t state)

Definition at line 137 of file xfs_da_btree.c.

xfs_da_state_t* xfs_da_state_alloc ( void  )

Definition at line 2252 of file xfs_da_btree.c.

void xfs_da_state_free ( xfs_da_state_t state)

Definition at line 2274 of file xfs_da_btree.c.

Variable Documentation

struct kmem_zone* xfs_da_state_zone

Definition at line 2245 of file xfs_da_btree.c.

struct xfs_nameops xfs_default_nameops

Definition at line 1562 of file xfs_da_btree.c.