Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
write.c File Reference
#include <linux/types.h>
#include <linux/slab.h>
#include <linux/mm.h>
#include <linux/pagemap.h>
#include <linux/file.h>
#include <linux/writeback.h>
#include <linux/swap.h>
#include <linux/migrate.h>
#include <linux/sunrpc/clnt.h>
#include <linux/nfs_fs.h>
#include <linux/nfs_mount.h>
#include <linux/nfs_page.h>
#include <linux/backing-dev.h>
#include <linux/export.h>
#include <asm/uaccess.h>
#include "delegation.h"
#include "internal.h"
#include "iostat.h"
#include "nfs4_fs.h"
#include "fscache.h"
#include "pnfs.h"

Go to the source code of this file.

Macros

#define NFSDBG_FACILITY   NFSDBG_PAGECACHE
 
#define MIN_POOL_WRITE   (32)
 
#define MIN_POOL_COMMIT   (4)
 
#define NFS_CONGESTION_ON_THRESH   (nfs_congestion_kb >> (PAGE_SHIFT-10))
 
#define NFS_CONGESTION_OFF_THRESH   (NFS_CONGESTION_ON_THRESH - (NFS_CONGESTION_ON_THRESH >> 2))
 

Functions

struct nfs_commit_datanfs_commitdata_alloc (void)
 
 EXPORT_SYMBOL_GPL (nfs_commitdata_alloc)
 
void nfs_commit_free (struct nfs_commit_data *p)
 
 EXPORT_SYMBOL_GPL (nfs_commit_free)
 
struct nfs_write_headernfs_writehdr_alloc (void)
 
 EXPORT_SYMBOL_GPL (nfs_writehdr_alloc)
 
void nfs_writehdr_free (struct nfs_pgio_header *hdr)
 
 EXPORT_SYMBOL_GPL (nfs_writehdr_free)
 
void nfs_writedata_release (struct nfs_write_data *wdata)
 
 EXPORT_SYMBOL_GPL (nfs_writedata_release)
 
int nfs_writepage (struct page *page, struct writeback_control *wbc)
 
int nfs_writepages (struct address_space *mapping, struct writeback_control *wbc)
 
void nfs_init_cinfo (struct nfs_commit_info *cinfo, struct inode *inode, struct nfs_direct_req *dreq)
 
void nfs_mark_request_commit (struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo)
 
int nfs_scan_commit (struct inode *inode, struct list_head *dst, struct nfs_commit_info *cinfo)
 
int nfs_flush_incompatible (struct file *file, struct page *page)
 
int nfs_updatepage (struct file *file, struct page *page, unsigned int offset, unsigned int count)
 
int nfs_initiate_write (struct rpc_clnt *clnt, struct nfs_write_data *data, const struct rpc_call_ops *call_ops, int how, int flags)
 
 EXPORT_SYMBOL_GPL (nfs_initiate_write)
 
int nfs_generic_flush (struct nfs_pageio_descriptor *desc, struct nfs_pgio_header *hdr)
 
 EXPORT_SYMBOL_GPL (nfs_generic_flush)
 
void nfs_pageio_init_write (struct nfs_pageio_descriptor *pgio, struct inode *inode, int ioflags, const struct nfs_pgio_completion_ops *compl_ops)
 
 EXPORT_SYMBOL_GPL (nfs_pageio_init_write)
 
void nfs_pageio_reset_write_mds (struct nfs_pageio_descriptor *pgio)
 
 EXPORT_SYMBOL_GPL (nfs_pageio_reset_write_mds)
 
void nfs_write_prepare (struct rpc_task *task, void *calldata)
 
void nfs_commit_prepare (struct rpc_task *task, void *calldata)
 
void nfs_writeback_done (struct rpc_task *task, struct nfs_write_data *data)
 
int nfs_write_inode (struct inode *inode, struct writeback_control *wbc)
 
 EXPORT_SYMBOL_GPL (nfs_write_inode)
 
int nfs_wb_all (struct inode *inode)
 
 EXPORT_SYMBOL_GPL (nfs_wb_all)
 
int nfs_wb_page_cancel (struct inode *inode, struct page *page)
 
int nfs_wb_page (struct inode *inode, struct page *page)
 
int __init nfs_init_writepagecache (void)
 
void nfs_destroy_writepagecache (void)
 

Variables

int nfs_congestion_kb
 

Macro Definition Documentation

#define MIN_POOL_COMMIT   (4)

Definition at line 37 of file write.c.

#define MIN_POOL_WRITE   (32)

Definition at line 36 of file write.c.

#define NFS_CONGESTION_OFF_THRESH   (NFS_CONGESTION_ON_THRESH - (NFS_CONGESTION_ON_THRESH >> 2))

Definition at line 239 of file write.c.

#define NFS_CONGESTION_ON_THRESH   (nfs_congestion_kb >> (PAGE_SHIFT-10))

Definition at line 238 of file write.c.

#define NFSDBG_FACILITY   NFSDBG_PAGECACHE

Definition at line 34 of file write.c.

Function Documentation

EXPORT_SYMBOL_GPL ( nfs_commitdata_alloc  )
EXPORT_SYMBOL_GPL ( nfs_commit_free  )
EXPORT_SYMBOL_GPL ( nfs_writehdr_alloc  )
EXPORT_SYMBOL_GPL ( nfs_writehdr_free  )
EXPORT_SYMBOL_GPL ( nfs_writedata_release  )
EXPORT_SYMBOL_GPL ( nfs_initiate_write  )
EXPORT_SYMBOL_GPL ( nfs_generic_flush  )
EXPORT_SYMBOL_GPL ( nfs_pageio_init_write  )
EXPORT_SYMBOL_GPL ( nfs_pageio_reset_write_mds  )
EXPORT_SYMBOL_GPL ( nfs_write_inode  )
EXPORT_SYMBOL_GPL ( nfs_wb_all  )
void nfs_commit_free ( struct nfs_commit_data p)

Definition at line 65 of file write.c.

void nfs_commit_prepare ( struct rpc_task task,
void calldata 
)

Definition at line 1258 of file write.c.

struct nfs_commit_data* nfs_commitdata_alloc ( void  )
read

Definition at line 53 of file write.c.

void nfs_destroy_writepagecache ( void  )

Definition at line 1867 of file write.c.

int nfs_flush_incompatible ( struct file file,
struct page page 
)

Definition at line 846 of file write.c.

int nfs_generic_flush ( struct nfs_pageio_descriptor desc,
struct nfs_pgio_header hdr 
)

Definition at line 1197 of file write.c.

void nfs_init_cinfo ( struct nfs_commit_info cinfo,
struct inode inode,
struct nfs_direct_req dreq 
)

Definition at line 599 of file write.c.

int __init nfs_init_writepagecache ( void  )

Definition at line 1810 of file write.c.

int nfs_initiate_write ( struct rpc_clnt clnt,
struct nfs_write_data data,
const struct rpc_call_ops call_ops,
int  how,
int  flags 
)

Definition at line 947 of file write.c.

void nfs_mark_request_commit ( struct nfs_page req,
struct pnfs_layout_segment lseg,
struct nfs_commit_info cinfo 
)

Definition at line 606 of file write.c.

void nfs_pageio_init_write ( struct nfs_pageio_descriptor pgio,
struct inode inode,
int  ioflags,
const struct nfs_pgio_completion_ops compl_ops 
)

Definition at line 1235 of file write.c.

void nfs_pageio_reset_write_mds ( struct nfs_pageio_descriptor pgio)

Definition at line 1244 of file write.c.

int nfs_scan_commit ( struct inode inode,
struct list_head dst,
struct nfs_commit_info cinfo 
)

Definition at line 726 of file write.c.

int nfs_updatepage ( struct file file,
struct page page,
unsigned int  offset,
unsigned int  count 
)

Definition at line 899 of file write.c.

int nfs_wb_all ( struct inode inode)

Definition at line 1712 of file write.c.

int nfs_wb_page ( struct inode inode,
struct page page 
)

Definition at line 1758 of file write.c.

int nfs_wb_page_cancel ( struct inode inode,
struct page page 
)

Definition at line 1725 of file write.c.

int nfs_write_inode ( struct inode inode,
struct writeback_control wbc 
)

Definition at line 1703 of file write.c.

void nfs_write_prepare ( struct rpc_task task,
void calldata 
)

Definition at line 1252 of file write.c.

void nfs_writeback_done ( struct rpc_task task,
struct nfs_write_data data 
)

Definition at line 1308 of file write.c.

void nfs_writedata_release ( struct nfs_write_data wdata)

Definition at line 121 of file write.c.

struct nfs_write_header* nfs_writehdr_alloc ( void  )
read

Definition at line 71 of file write.c.

void nfs_writehdr_free ( struct nfs_pgio_header hdr)

Definition at line 114 of file write.c.

int nfs_writepage ( struct page page,
struct writeback_control wbc 
)

Definition at line 368 of file write.c.

int nfs_writepages ( struct address_space mapping,
struct writeback_control wbc 
)

Definition at line 386 of file write.c.

Variable Documentation

int nfs_congestion_kb

Definition at line 236 of file write.c.