diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-06-11 14:31:05 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-06-11 14:31:05 -0400 |
| commit | 5212c555be332fc95982077e6cdc7bb6cb5fff5f (patch) | |
| tree | 44907e3427949462dcc54ae762cc49ae8e9571f0 /include/linux | |
| parent | 845a2fdcbd5bc5b9f652201ee95c825827a1d521 (diff) | |
| parent | 620a324b744a7d66c3c45a83042f8e7fc9fc5a04 (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.h | 30 |
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 | ||
| 19 | struct 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 | ||
| 41 | struct 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 |
