/linux-6.6.21/include/linux/ |
D | pipe_fs_i.h | 58 struct pipe_inode_info { struct 103 int (*confirm)(struct pipe_inode_info *, struct pipe_buffer *); argument 109 void (*release)(struct pipe_inode_info *, struct pipe_buffer *); 119 bool (*try_steal)(struct pipe_inode_info *, struct pipe_buffer *); 124 bool (*get)(struct pipe_inode_info *, struct pipe_buffer *); 134 static inline bool pipe_has_watch_queue(const struct pipe_inode_info *pipe) in pipe_has_watch_queue() 180 static inline struct pipe_buffer *pipe_buf(const struct pipe_inode_info *pipe, in pipe_buf() 190 static inline struct pipe_buffer *pipe_head_buf(const struct pipe_inode_info *pipe) in pipe_head_buf() 202 static inline __must_check bool pipe_buf_get(struct pipe_inode_info *pipe, in pipe_buf_get() 213 static inline void pipe_buf_release(struct pipe_inode_info *pipe, in pipe_buf_release() [all …]
|
D | splice.h | 66 typedef int (splice_actor)(struct pipe_inode_info *, struct pipe_buffer *, 68 typedef int (splice_direct_actor)(struct pipe_inode_info *, 71 extern ssize_t splice_from_pipe(struct pipe_inode_info *, struct file *, 74 extern ssize_t __splice_from_pipe(struct pipe_inode_info *, 76 extern ssize_t splice_to_pipe(struct pipe_inode_info *, 78 extern ssize_t add_to_pipe(struct pipe_inode_info *, 81 struct pipe_inode_info *pipe, size_t len, 91 extern ssize_t splice_to_socket(struct pipe_inode_info *pipe, struct file *out, 97 extern int splice_grow_spd(const struct pipe_inode_info *, struct splice_pipe_desc *);
|
D | watch_queue.h | 41 struct pipe_inode_info *pipe; /* Pipe we use as a buffer, NULL if queue closed */ 88 extern long watch_queue_set_size(struct pipe_inode_info *, unsigned int); 89 extern long watch_queue_set_filter(struct pipe_inode_info *, 91 extern int watch_queue_init(struct pipe_inode_info *); 126 static inline int watch_queue_init(struct pipe_inode_info *pipe) in watch_queue_init()
|
D | net.h | 30 struct pipe_inode_info; 211 struct pipe_inode_info *pipe, size_t len, unsigned int flags);
|
D | fs.h | 60 struct pipe_inode_info; 729 struct pipe_inode_info *i_pipe; 1937 ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int); 1938 ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int); 2979 struct pipe_inode_info *pipe, 2982 struct pipe_inode_info *pipe, 2984 extern ssize_t iter_file_splice_write(struct pipe_inode_info *,
|
D | sched.h | 59 struct pipe_inode_info; 1329 struct pipe_inode_info *splice_pipe;
|
/linux-6.6.21/fs/ |
D | pipe.c | 79 static void pipe_lock_nested(struct pipe_inode_info *pipe, int subclass) in pipe_lock_nested() 85 void pipe_lock(struct pipe_inode_info *pipe) in pipe_lock() 94 void pipe_unlock(struct pipe_inode_info *pipe) in pipe_unlock() 101 static inline void __pipe_lock(struct pipe_inode_info *pipe) in __pipe_lock() 106 static inline void __pipe_unlock(struct pipe_inode_info *pipe) in __pipe_unlock() 111 void pipe_double_lock(struct pipe_inode_info *pipe1, in pipe_double_lock() 112 struct pipe_inode_info *pipe2) in pipe_double_lock() 125 static void anon_pipe_buf_release(struct pipe_inode_info *pipe, in anon_pipe_buf_release() 141 static bool anon_pipe_buf_try_steal(struct pipe_inode_info *pipe, in anon_pipe_buf_try_steal() 165 bool generic_pipe_buf_try_steal(struct pipe_inode_info *pipe, in generic_pipe_buf_try_steal() [all …]
|
D | splice.c | 64 static bool page_cache_pipe_buf_try_steal(struct pipe_inode_info *pipe, in page_cache_pipe_buf_try_steal() 108 static void page_cache_pipe_buf_release(struct pipe_inode_info *pipe, in page_cache_pipe_buf_release() 119 static int page_cache_pipe_buf_confirm(struct pipe_inode_info *pipe, in page_cache_pipe_buf_confirm() 162 static bool user_page_pipe_buf_try_steal(struct pipe_inode_info *pipe, in user_page_pipe_buf_try_steal() 178 static void wakeup_pipe_readers(struct pipe_inode_info *pipe) in wakeup_pipe_readers() 197 ssize_t splice_to_pipe(struct pipe_inode_info *pipe, in splice_to_pipe() 245 ssize_t add_to_pipe(struct pipe_inode_info *pipe, struct pipe_buffer *buf) in add_to_pipe() 271 int splice_grow_spd(const struct pipe_inode_info *pipe, struct splice_pipe_desc *spd) in splice_grow_spd() 321 struct pipe_inode_info *pipe, in copy_splice_read() 416 static void wakeup_pipe_writers(struct pipe_inode_info *pipe) in wakeup_pipe_writers() [all …]
|
D | internal.h | 17 struct pipe_inode_info; 239 struct pipe_inode_info *opipe,
|
/linux-6.6.21/kernel/ |
D | watch_queue.c | 57 static void watch_queue_pipe_buf_release(struct pipe_inode_info *pipe, in watch_queue_pipe_buf_release() 101 struct pipe_inode_info *pipe = wqueue->pipe; in post_one_notification() 238 long watch_queue_set_size(struct pipe_inode_info *pipe, unsigned int nr_notes) in watch_queue_set_size() 307 long watch_queue_set_filter(struct pipe_inode_info *pipe, in watch_queue_set_filter() 664 struct pipe_inode_info *pipe; in get_watch_queue() 685 int watch_queue_init(struct pipe_inode_info *pipe) in watch_queue_init()
|
D | relay.c | 1086 static void relay_pipe_buf_release(struct pipe_inode_info *pipe, in relay_pipe_buf_release() 1110 struct pipe_inode_info *pipe, in subbuf_splice_actor() 1202 struct pipe_inode_info *pipe, in relay_file_splice_read()
|
/linux-6.6.21/net/smc/ |
D | smc_rx.h | 23 struct pipe_inode_info *pipe, size_t len, int flags);
|
D | smc_rx.c | 114 static void smc_rx_pipe_buf_release(struct pipe_inode_info *pipe, in smc_rx_pipe_buf_release() 149 static int smc_rx_splice(struct pipe_inode_info *pipe, char *src, size_t len, in smc_rx_splice() 345 struct pipe_inode_info *pipe, size_t len, int flags) in smc_rx_recvmsg()
|
/linux-6.6.21/drivers/char/ |
D | mem.c | 464 static int pipe_to_null(struct pipe_inode_info *info, struct pipe_buffer *buf, in pipe_to_null() 470 static ssize_t splice_write_null(struct pipe_inode_info *pipe, struct file *out, in splice_write_null()
|
/linux-6.6.21/fs/afs/ |
D | file.c | 29 struct pipe_inode_info *pipe, 595 struct pipe_inode_info *pipe, in afs_file_splice_read()
|
/linux-6.6.21/fs/overlayfs/ |
D | file.c | 438 struct pipe_inode_info *pipe, size_t len, in ovl_splice_read() 466 static ssize_t ovl_splice_write(struct pipe_inode_info *pipe, struct file *out, in ovl_splice_write()
|
/linux-6.6.21/net/tls/ |
D | tls.h | 161 struct pipe_inode_info *pipe,
|
/linux-6.6.21/fs/ecryptfs/ |
D | file.c | 58 struct pipe_inode_info *pipe, in ecryptfs_splice_read_update_atime()
|
/linux-6.6.21/fs/coda/ |
D | file.c | 100 struct pipe_inode_info *pipe, in coda_file_splice_read()
|
/linux-6.6.21/fs/orangefs/ |
D | file.c | 341 struct pipe_inode_info *pipe, in orangefs_file_splice_read()
|
/linux-6.6.21/fs/9p/ |
D | vfs_file.c | 386 struct pipe_inode_info *pipe, in v9fs_file_splice_read()
|
/linux-6.6.21/fs/fuse/ |
D | dev.c | 650 struct pipe_inode_info *pipe; 1371 struct pipe_inode_info *pipe, in fuse_dev_splice_read() 1963 static ssize_t fuse_dev_splice_write(struct pipe_inode_info *pipe, in fuse_dev_splice_write()
|
/linux-6.6.21/fs/zonefs/ |
D | file.c | 674 struct pipe_inode_info *pipe, in zonefs_file_splice_read()
|
/linux-6.6.21/fs/nfs/ |
D | file.c | 182 nfs_file_splice_read(struct file *in, loff_t *ppos, struct pipe_inode_info *pipe, in nfs_file_splice_read()
|
/linux-6.6.21/mm/ |
D | shmem.c | 2888 static bool zero_pipe_buf_get(struct pipe_inode_info *pipe, in zero_pipe_buf_get() 2894 static void zero_pipe_buf_release(struct pipe_inode_info *pipe, in zero_pipe_buf_release() 2899 static bool zero_pipe_buf_try_steal(struct pipe_inode_info *pipe, in zero_pipe_buf_try_steal() 2911 static size_t splice_zeropage_into_pipe(struct pipe_inode_info *pipe, in splice_zeropage_into_pipe() 2934 struct pipe_inode_info *pipe, in shmem_file_splice_read()
|