]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/pipe_fs_i.h
Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
[linux-2.6-omap-h63xx.git] / include / linux / pipe_fs_i.h
index ea4f7cd7bfd85425c96a1d17faa358a2d7cb509f..c8884f9712285b25cc88ff7518c2e0b79e0bcb39 100644 (file)
 struct pipe_buffer {
        struct page *page;
        unsigned int offset, len;
-       struct pipe_buf_operations *ops;
+       const struct pipe_buf_operations *ops;
        unsigned int flags;
 };
 
+struct pipe_inode_info {
+       wait_queue_head_t wait;
+       unsigned int nrbufs, curbuf;
+       struct page *tmp_page;
+       unsigned int readers;
+       unsigned int writers;
+       unsigned int waiting_writers;
+       unsigned int r_counter;
+       unsigned int w_counter;
+       struct fasync_struct *fasync_readers;
+       struct fasync_struct *fasync_writers;
+       struct inode *inode;
+       struct pipe_buffer bufs[PIPE_BUFFERS];
+};
+
 /*
  * Note on the nesting of these functions:
  *
@@ -38,22 +53,6 @@ struct pipe_buf_operations {
        void (*get)(struct pipe_inode_info *, struct pipe_buffer *);
 };
 
-struct pipe_inode_info {
-       wait_queue_head_t wait;
-       unsigned int nrbufs, curbuf;
-       struct pipe_buffer bufs[PIPE_BUFFERS];
-       struct page *tmp_page;
-       unsigned int start;
-       unsigned int readers;
-       unsigned int writers;
-       unsigned int waiting_writers;
-       unsigned int r_counter;
-       unsigned int w_counter;
-       struct fasync_struct *fasync_readers;
-       struct fasync_struct *fasync_writers;
-       struct inode *inode;
-};
-
 /* Differs from PIPE_BUF in that PIPE_SIZE is the length of the actual
    memory allocation, whereas PIPE_BUF makes atomicity guarantees.  */
 #define PIPE_SIZE              PAGE_SIZE
@@ -100,4 +99,8 @@ extern ssize_t splice_from_pipe(struct pipe_inode_info *, struct file *,
                                loff_t *, size_t, unsigned int,
                                splice_actor *);
 
+extern ssize_t __splice_from_pipe(struct pipe_inode_info *, struct file *,
+                                 loff_t *, size_t, unsigned int,
+                                 splice_actor *);
+
 #endif