Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
dm-kcopyd.c File Reference
#include <linux/types.h>
#include <linux/atomic.h>
#include <linux/blkdev.h>
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/list.h>
#include <linux/mempool.h>
#include <linux/module.h>
#include <linux/pagemap.h>
#include <linux/slab.h>
#include <linux/vmalloc.h>
#include <linux/workqueue.h>
#include <linux/mutex.h>
#include <linux/device-mapper.h>
#include <linux/dm-kcopyd.h>
#include "dm.h"

Go to the source code of this file.

Data Structures

struct  dm_kcopyd_client
 
struct  kcopyd_job
 

Macros

#define SUB_JOB_SIZE   128
 
#define SPLIT_COUNT   8
 
#define MIN_JOBS   8
 
#define RESERVE_PAGES   (DIV_ROUND_UP(SUB_JOB_SIZE << SECTOR_SHIFT, PAGE_SIZE))
 

Functions

int __init dm_kcopyd_init (void)
 
void dm_kcopyd_exit (void)
 
int dm_kcopyd_copy (struct dm_kcopyd_client *kc, struct dm_io_region *from, unsigned int num_dests, struct dm_io_region *dests, unsigned int flags, dm_kcopyd_notify_fn fn, void *context)
 
 EXPORT_SYMBOL (dm_kcopyd_copy)
 
int dm_kcopyd_zero (struct dm_kcopyd_client *kc, unsigned num_dests, struct dm_io_region *dests, unsigned flags, dm_kcopyd_notify_fn fn, void *context)
 
 EXPORT_SYMBOL (dm_kcopyd_zero)
 
voiddm_kcopyd_prepare_callback (struct dm_kcopyd_client *kc, dm_kcopyd_notify_fn fn, void *context)
 
 EXPORT_SYMBOL (dm_kcopyd_prepare_callback)
 
void dm_kcopyd_do_callback (void *j, int read_err, unsigned long write_err)
 
 EXPORT_SYMBOL (dm_kcopyd_do_callback)
 
struct dm_kcopyd_clientdm_kcopyd_client_create (void)
 
 EXPORT_SYMBOL (dm_kcopyd_client_create)
 
void dm_kcopyd_client_destroy (struct dm_kcopyd_client *kc)
 
 EXPORT_SYMBOL (dm_kcopyd_client_destroy)
 

Macro Definition Documentation

#define MIN_JOBS   8

Definition at line 32 of file dm-kcopyd.c.

#define RESERVE_PAGES   (DIV_ROUND_UP(SUB_JOB_SIZE << SECTOR_SHIFT, PAGE_SIZE))

Definition at line 33 of file dm-kcopyd.c.

#define SPLIT_COUNT   8

Definition at line 31 of file dm-kcopyd.c.

#define SUB_JOB_SIZE   128

Definition at line 30 of file dm-kcopyd.c.

Function Documentation

struct dm_kcopyd_client* dm_kcopyd_client_create ( void  )
read

Definition at line 688 of file dm-kcopyd.c.

void dm_kcopyd_client_destroy ( struct dm_kcopyd_client kc)

Definition at line 742 of file dm-kcopyd.c.

int dm_kcopyd_copy ( struct dm_kcopyd_client kc,
struct dm_io_region *  from,
unsigned int  num_dests,
struct dm_io_region *  dests,
unsigned int  flags,
dm_kcopyd_notify_fn  fn,
void context 
)

Definition at line 583 of file dm-kcopyd.c.

void dm_kcopyd_do_callback ( void j,
int  read_err,
unsigned long  write_err 
)

Definition at line 660 of file dm-kcopyd.c.

void dm_kcopyd_exit ( void  )

Definition at line 265 of file dm-kcopyd.c.

int __init dm_kcopyd_init ( void  )

Definition at line 251 of file dm-kcopyd.c.

void* dm_kcopyd_prepare_callback ( struct dm_kcopyd_client kc,
dm_kcopyd_notify_fn  fn,
void context 
)

Definition at line 641 of file dm-kcopyd.c.

int dm_kcopyd_zero ( struct dm_kcopyd_client kc,
unsigned  num_dests,
struct dm_io_region *  dests,
unsigned  flags,
dm_kcopyd_notify_fn  fn,
void context 
)

Definition at line 633 of file dm-kcopyd.c.

EXPORT_SYMBOL ( dm_kcopyd_copy  )
EXPORT_SYMBOL ( dm_kcopyd_zero  )
EXPORT_SYMBOL ( dm_kcopyd_prepare_callback  )
EXPORT_SYMBOL ( dm_kcopyd_do_callback  )
EXPORT_SYMBOL ( dm_kcopyd_client_create  )
EXPORT_SYMBOL ( dm_kcopyd_client_destroy  )