Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
direct-io.c File Reference
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/types.h>
#include <linux/fs.h>
#include <linux/mm.h>
#include <linux/slab.h>
#include <linux/highmem.h>
#include <linux/pagemap.h>
#include <linux/task_io_accounting_ops.h>
#include <linux/bio.h>
#include <linux/wait.h>
#include <linux/err.h>
#include <linux/blkdev.h>
#include <linux/buffer_head.h>
#include <linux/rwsem.h>
#include <linux/uio.h>
#include <linux/atomic.h>
#include <linux/prefetch.h>

Go to the source code of this file.

Data Structures

struct  dio_submit
 
struct  dio
 

Macros

#define DIO_PAGES   64
 

Functions

void dio_end_io (struct bio *bio, int error)
 
 EXPORT_SYMBOL_GPL (dio_end_io)
 
ssize_t __blockdev_direct_IO (int rw, struct kiocb *iocb, struct inode *inode, struct block_device *bdev, const struct iovec *iov, loff_t offset, unsigned long nr_segs, get_block_t get_block, dio_iodone_t end_io, dio_submit_t submit_io, int flags)
 
 EXPORT_SYMBOL (__blockdev_direct_IO)
 

Variables

struct dio ____cacheline_aligned_in_smp
 

Macro Definition Documentation

#define DIO_PAGES   64

Definition at line 45 of file direct-io.c.

Function Documentation

ssize_t __blockdev_direct_IO ( int  rw,
struct kiocb iocb,
struct inode inode,
struct block_device bdev,
const struct iovec iov,
loff_t  offset,
unsigned long  nr_segs,
get_block_t  get_block,
dio_iodone_t  end_io,
dio_submit_t  submit_io,
int  flags 
)

Definition at line 1285 of file direct-io.c.

void dio_end_io ( struct bio *  bio,
int  error 
)

dio_end_io - handle the end io action for the given bio : The direct io bio thats being completed : Error if there was one

This is meant to be called by any filesystem that uses their own dio_submit_t so that the DIO specific endio actions are dealt with after the filesystem has done it's completion work.

Definition at line 326 of file direct-io.c.

EXPORT_SYMBOL ( __blockdev_direct_IO  )
EXPORT_SYMBOL_GPL ( dio_end_io  )

Variable Documentation

struct dio ____cacheline_aligned_in_smp