aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-11 14:31:05 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-11 14:31:05 -0400
commit5212c555be332fc95982077e6cdc7bb6cb5fff5f (patch)
tree44907e3427949462dcc54ae762cc49ae8e9571f0 /include/linux
parent845a2fdcbd5bc5b9f652201ee95c825827a1d521 (diff)
parent620a324b744a7d66c3c45a83042f8e7fc9fc5a04 (diff)
Merge branch 'splice-2.6.22' of git://git.kernel.dk/data/git/linux-2.6-block
* 'splice-2.6.22' of git://git.kernel.dk/data/git/linux-2.6-block: splice: __generic_file_splice_read: fix read/truncate race splice: __generic_file_splice_read: fix i_size_read() length checks splice: move balance_dirty_pages_ratelimited() outside of splice actor pipe: move pipe_inode_info structure decleration up before it's used splice: remove do_splice_direct() symbol export splice: move inode size check into generic_file_splice_read()
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/pipe_fs_i.h30
1 files changed, 15 insertions, 15 deletions
diff --git a/include/linux/pipe_fs_i.h b/include/linux/pipe_fs_i.h
index 8bcbc54e1b48..c8884f971228 100644
--- a/include/linux/pipe_fs_i.h
+++ b/include/linux/pipe_fs_i.h
@@ -16,6 +16,21 @@ struct pipe_buffer {
16 unsigned int flags; 16 unsigned int flags;
17}; 17};
18 18
19struct pipe_inode_info {
20 wait_queue_head_t wait;
21 unsigned int nrbufs, curbuf;
22 struct page *tmp_page;
23 unsigned int readers;
24 unsigned int writers;
25 unsigned int waiting_writers;
26 unsigned int r_counter;
27 unsigned int w_counter;
28 struct fasync_struct *fasync_readers;
29 struct fasync_struct *fasync_writers;
30 struct inode *inode;
31 struct pipe_buffer bufs[PIPE_BUFFERS];
32};
33
19/* 34/*
20 * Note on the nesting of these functions: 35 * Note on the nesting of these functions:
21 * 36 *
@@ -38,21 +53,6 @@ struct pipe_buf_operations {
38 void (*get)(struct pipe_inode_info *, struct pipe_buffer *); 53 void (*get)(struct pipe_inode_info *, struct pipe_buffer *);
39}; 54};
40 55
41struct pipe_inode_info {
42 wait_queue_head_t wait;
43 unsigned int nrbufs, curbuf;
44 struct page *tmp_page;
45 unsigned int readers;
46 unsigned int writers;
47 unsigned int waiting_writers;
48 unsigned int r_counter;
49 unsigned int w_counter;
50 struct fasync_struct *fasync_readers;
51 struct fasync_struct *fasync_writers;
52 struct inode *inode;
53 struct pipe_buffer bufs[PIPE_BUFFERS];
54};
55
56/* Differs from PIPE_BUF in that PIPE_SIZE is the length of the actual 56/* Differs from PIPE_BUF in that PIPE_SIZE is the length of the actual
57 memory allocation, whereas PIPE_BUF makes atomicity guarantees. */ 57 memory allocation, whereas PIPE_BUF makes atomicity guarantees. */
58#define PIPE_SIZE PAGE_SIZE 58#define PIPE_SIZE PAGE_SIZE