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

Go to the source code of this file.

Macros

#define OCFS2_LOCAL_ALLOC(dinode)   (&((dinode)->id2.i_lab))
 
#define OCFS2_LA_MAX_DEFAULT_MB   256
 
#define OCFS2_LA_OLD_DEFAULT   8
 
#define OCFS2_LA_ENABLE_INTERVAL   (30 * HZ)
 

Enumerations

enum  ocfs2_la_event { OCFS2_LA_EVENT_SLIDE, OCFS2_LA_EVENT_FRAGMENTED, OCFS2_LA_EVENT_ENOSPC }
 

Functions

unsigned int ocfs2_la_default_mb (struct ocfs2_super *osb)
 
void ocfs2_la_set_sizes (struct ocfs2_super *osb, int requested_mb)
 
void ocfs2_local_alloc_seen_free_bits (struct ocfs2_super *osb, unsigned int num_clusters)
 
void ocfs2_la_enable_worker (struct work_struct *work)
 
int ocfs2_alloc_should_use_local (struct ocfs2_super *osb, u64 bits)
 
int ocfs2_load_local_alloc (struct ocfs2_super *osb)
 
void ocfs2_shutdown_local_alloc (struct ocfs2_super *osb)
 
int ocfs2_begin_local_alloc_recovery (struct ocfs2_super *osb, int slot_num, struct ocfs2_dinode **alloc_copy)
 
int ocfs2_complete_local_alloc_recovery (struct ocfs2_super *osb, struct ocfs2_dinode *alloc)
 
int ocfs2_reserve_local_alloc_bits (struct ocfs2_super *osb, u32 bits_wanted, struct ocfs2_alloc_context *ac)
 
int ocfs2_claim_local_alloc_bits (struct ocfs2_super *osb, handle_t *handle, struct ocfs2_alloc_context *ac, u32 bits_wanted, u32 *bit_off, u32 *num_bits)
 

Macro Definition Documentation

#define OCFS2_LA_ENABLE_INTERVAL   (30 * HZ)

Definition at line 1003 of file localalloc.c.

#define OCFS2_LA_MAX_DEFAULT_MB   256

Definition at line 115 of file localalloc.c.

#define OCFS2_LA_OLD_DEFAULT   8

Definition at line 116 of file localalloc.c.

#define OCFS2_LOCAL_ALLOC (   dinode)    (&((dinode)->id2.i_lab))

Definition at line 49 of file localalloc.c.

Enumeration Type Documentation

Enumerator:
OCFS2_LA_EVENT_SLIDE 
OCFS2_LA_EVENT_FRAGMENTED 
OCFS2_LA_EVENT_ENOSPC 

Definition at line 992 of file localalloc.c.

Function Documentation

int ocfs2_alloc_should_use_local ( struct ocfs2_super osb,
u64  bits 
)

Definition at line 258 of file localalloc.c.

int ocfs2_begin_local_alloc_recovery ( struct ocfs2_super osb,
int  slot_num,
struct ocfs2_dinode **  alloc_copy 
)

Definition at line 490 of file localalloc.c.

int ocfs2_claim_local_alloc_bits ( struct ocfs2_super osb,
handle_t *  handle,
struct ocfs2_alloc_context ac,
u32  bits_wanted,
u32 bit_off,
u32 num_bits 
)

Definition at line 729 of file localalloc.c.

int ocfs2_complete_local_alloc_recovery ( struct ocfs2_super osb,
struct ocfs2_dinode alloc 
)

Definition at line 560 of file localalloc.c.

unsigned int ocfs2_la_default_mb ( struct ocfs2_super osb)

Definition at line 117 of file localalloc.c.

void ocfs2_la_enable_worker ( struct work_struct work)

Definition at line 241 of file localalloc.c.

void ocfs2_la_set_sizes ( struct ocfs2_super osb,
int  requested_mb 
)

Definition at line 195 of file localalloc.c.

int ocfs2_load_local_alloc ( struct ocfs2_super osb)

Definition at line 284 of file localalloc.c.

void ocfs2_local_alloc_seen_free_bits ( struct ocfs2_super osb,
unsigned int  num_clusters 
)

Definition at line 228 of file localalloc.c.

int ocfs2_reserve_local_alloc_bits ( struct ocfs2_super osb,
u32  bits_wanted,
struct ocfs2_alloc_context ac 
)

Definition at line 628 of file localalloc.c.

void ocfs2_shutdown_local_alloc ( struct ocfs2_super osb)

Definition at line 378 of file localalloc.c.