Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
dir.c File Reference
#include <linux/fs.h>
#include <linux/types.h>
#include <linux/slab.h>
#include <linux/highmem.h>
#include <linux/quotaops.h>
#include <linux/sort.h>
#include <cluster/masklog.h>
#include "ocfs2.h"
#include "alloc.h"
#include "blockcheck.h"
#include "dir.h"
#include "dlmglue.h"
#include "extent_map.h"
#include "file.h"
#include "inode.h"
#include "journal.h"
#include "namei.h"
#include "suballoc.h"
#include "super.h"
#include "sysfile.h"
#include "uptodate.h"
#include "ocfs2_trace.h"
#include "buffer_head_io.h"

Go to the source code of this file.

Data Structures

struct  ocfs2_empty_dir_priv
 

Macros

#define NAMEI_RA_CHUNKS   2
 
#define NAMEI_RA_BLOCKS   4
 
#define NAMEI_RA_SIZE   (NAMEI_RA_CHUNKS * NAMEI_RA_BLOCKS)
 
#define NAMEI_RA_INDEX(c, b)   (((c) * NAMEI_RA_BLOCKS) + (b))
 
#define ocfs2_trailer_from_bh(_bh, _sb)   ((struct ocfs2_dir_block_trailer *) ((_bh)->b_data + ocfs2_dir_trailer_blk_off((_sb))))
 
#define DELTA   0x9E3779B9
 

Functions

struct ocfs2_dir_block_trailerocfs2_dir_trailer_from_size (int blocksize, void *data)
 
void ocfs2_free_dir_lookup_result (struct ocfs2_dir_lookup_result *res)
 
int ocfs2_find_entry (const char *name, int namelen, struct inode *dir, struct ocfs2_dir_lookup_result *lookup)
 
int ocfs2_update_entry (struct inode *dir, handle_t *handle, struct ocfs2_dir_lookup_result *res, struct inode *new_entry_inode)
 
int ocfs2_delete_entry (handle_t *handle, struct inode *dir, struct ocfs2_dir_lookup_result *res)
 
int __ocfs2_add_entry (handle_t *handle, struct inode *dir, const char *name, int namelen, struct inode *inode, u64 blkno, struct buffer_head *parent_fe_bh, struct ocfs2_dir_lookup_result *lookup)
 
int ocfs2_dir_foreach (struct inode *inode, loff_t *f_pos, void *priv, filldir_t filldir)
 
int ocfs2_readdir (struct file *filp, void *dirent, filldir_t filldir)
 
int ocfs2_find_files_on_disk (const char *name, int namelen, u64 *blkno, struct inode *inode, struct ocfs2_dir_lookup_result *lookup)
 
int ocfs2_lookup_ino_from_name (struct inode *dir, const char *name, int namelen, u64 *blkno)
 
int ocfs2_check_dir_for_entry (struct inode *dir, const char *name, int namelen)
 
int ocfs2_empty_dir (struct inode *inode)
 
int ocfs2_fill_new_dir (struct ocfs2_super *osb, handle_t *handle, struct inode *parent, struct inode *inode, struct buffer_head *fe_bh, struct ocfs2_alloc_context *data_ac, struct ocfs2_alloc_context *meta_ac)
 
int ocfs2_prepare_dir_for_insert (struct ocfs2_super *osb, struct inode *dir, struct buffer_head *parent_fe_bh, const char *name, int namelen, struct ocfs2_dir_lookup_result *lookup)
 
int ocfs2_dx_dir_truncate (struct inode *dir, struct buffer_head *di_bh)
 

Macro Definition Documentation

#define DELTA   0x9E3779B9

Definition at line 225 of file dir.c.

#define NAMEI_RA_BLOCKS   4

Definition at line 68 of file dir.c.

#define NAMEI_RA_CHUNKS   2

Definition at line 67 of file dir.c.

#define NAMEI_RA_INDEX (   c,
  b 
)    (((c) * NAMEI_RA_BLOCKS) + (b))

Definition at line 70 of file dir.c.

#define NAMEI_RA_SIZE   (NAMEI_RA_CHUNKS * NAMEI_RA_BLOCKS)

Definition at line 69 of file dir.c.

#define ocfs2_trailer_from_bh (   _bh,
  _sb 
)    ((struct ocfs2_dir_block_trailer *) ((_bh)->b_data + ocfs2_dir_trailer_blk_off((_sb))))

Definition at line 120 of file dir.c.

Function Documentation

int __ocfs2_add_entry ( handle_t *  handle,
struct inode dir,
const char name,
int  namelen,
struct inode inode,
u64  blkno,
struct buffer_head *  parent_fe_bh,
struct ocfs2_dir_lookup_result lookup 
)

Definition at line 1609 of file dir.c.

int ocfs2_check_dir_for_entry ( struct inode dir,
const char name,
int  namelen 
)

Definition at line 2100 of file dir.c.

int ocfs2_delete_entry ( handle_t *  handle,
struct inode dir,
struct ocfs2_dir_lookup_result res 
)

Definition at line 1415 of file dir.c.

int ocfs2_dir_foreach ( struct inode inode,
loff_t *  f_pos,
void priv,
filldir_t  filldir 
)

Definition at line 1992 of file dir.c.

struct ocfs2_dir_block_trailer* ocfs2_dir_trailer_from_size ( int  blocksize,
void data 
)
read

Definition at line 124 of file dir.c.

int ocfs2_dx_dir_truncate ( struct inode dir,
struct buffer_head *  di_bh 
)

Definition at line 4486 of file dir.c.

int ocfs2_empty_dir ( struct inode inode)

Definition at line 2205 of file dir.c.

int ocfs2_fill_new_dir ( struct ocfs2_super osb,
handle_t *  handle,
struct inode parent,
struct inode inode,
struct buffer_head *  fe_bh,
struct ocfs2_alloc_context data_ac,
struct ocfs2_alloc_context meta_ac 
)

Definition at line 2655 of file dir.c.

int ocfs2_find_entry ( const char name,
int  namelen,
struct inode dir,
struct ocfs2_dir_lookup_result lookup 
)

Definition at line 1087 of file dir.c.

int ocfs2_find_files_on_disk ( const char name,
int  namelen,
u64 blkno,
struct inode inode,
struct ocfs2_dir_lookup_result lookup 
)

Definition at line 2054 of file dir.c.

void ocfs2_free_dir_lookup_result ( struct ocfs2_dir_lookup_result res)

Definition at line 202 of file dir.c.

int ocfs2_lookup_ino_from_name ( struct inode dir,
const char name,
int  namelen,
u64 blkno 
)

Definition at line 2081 of file dir.c.

int ocfs2_prepare_dir_for_insert ( struct ocfs2_super osb,
struct inode dir,
struct buffer_head *  parent_fe_bh,
const char name,
int  namelen,
struct ocfs2_dir_lookup_result lookup 
)

Definition at line 4329 of file dir.c.

int ocfs2_readdir ( struct file filp,
void dirent,
filldir_t  filldir 
)

Definition at line 2015 of file dir.c.

int ocfs2_update_entry ( struct inode dir,
handle_t *  handle,
struct ocfs2_dir_lookup_result res,
struct inode new_entry_inode 
)

Definition at line 1117 of file dir.c.