Jens Axboe
5274f052e7
[PATCH] Introduce sys_splice() system call
...
This adds support for the sys_splice system call. Using a pipe as a
transport, it can connect to files or sockets (latter as output only).
From the splice.c comments:
"splice": joining two ropes together by interweaving their strands.
This is the "extended pipe" functionality, where a pipe is used as
an arbitrary in-memory buffer. Think of a pipe as a small kernel
buffer that you can use to transfer data from one end to the other.
The traditional unix read/write is extended with a "splice()" operation
that transfers data buffers to or from a pipe buffer.
Named by Larry McVoy, original implementation from Linus, extended by
Jens to support splicing to files and fixing the initial implementation
bugs.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-30 12:28:18 -08:00
..
2006-01-06 08:33:37 -08:00
2006-03-28 09:16:01 -08:00
2006-03-23 07:38:04 -08:00
2005-09-05 00:06:10 -07:00
2005-06-23 09:45:09 -07:00
2005-10-28 16:47:49 -07:00
2006-03-23 07:38:05 -08:00
2006-03-23 07:38:05 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-22 07:53:54 -08:00
2005-09-05 00:06:11 -07:00
2006-03-23 07:38:04 -08:00
2006-03-08 18:10:31 -08:00
2005-09-05 00:06:10 -07:00
2006-03-23 07:38:05 -08:00
2006-03-23 07:38:17 -08:00
2005-09-07 16:57:21 -07:00
2006-03-26 08:57:12 -08:00
2005-04-16 15:20:36 -07:00
2005-05-01 08:59:01 -07:00
2006-01-06 08:33:34 -08:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:10 -08:00
2006-01-06 08:33:36 -08:00
2005-08-29 16:02:48 -07:00
2005-06-25 16:24:29 -07:00
2006-03-23 07:38:04 -08:00
2005-04-16 15:20:36 -07:00
2006-01-14 18:27:15 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-02-24 14:31:38 -08:00
2005-09-10 10:06:34 -07:00
2006-01-11 19:04:56 -08:00
2005-04-16 15:20:36 -07:00
2006-03-25 09:10:55 -08:00
2005-05-01 08:58:51 -07:00
2006-01-18 19:20:31 -08:00
2005-11-07 07:53:41 -08:00
2005-07-26 14:35:42 -07:00
2005-04-16 15:20:36 -07:00
2005-09-07 16:57:38 -07:00
2005-08-24 12:08:54 -04:00
2005-05-05 16:36:47 -07:00
2006-03-27 08:44:49 -08:00
2005-06-23 09:45:09 -07:00
2005-04-16 15:20:36 -07:00
2005-06-25 16:24:53 -07:00
2005-05-01 08:58:50 -07:00
2005-10-31 19:16:17 -08:00
2006-01-12 09:08:51 -08:00
2005-06-30 08:45:10 -07:00
2005-04-16 15:20:36 -07:00
2005-11-10 00:10:37 +01:00
2005-08-24 12:08:54 -04:00
2006-03-24 07:33:19 -08:00
2006-01-10 08:01:34 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-01-08 20:14:11 -08:00
2005-04-16 15:20:36 -07:00
2006-03-27 08:44:50 -08:00
2006-01-10 08:01:27 -08:00
2005-04-16 15:20:36 -07:00
2006-03-26 08:57:04 -08:00
2005-04-16 15:20:36 -07:00
2005-05-26 16:16:16 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-02-15 15:32:22 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-27 08:44:44 -08:00
2006-01-06 08:33:38 -08:00
2006-01-06 08:33:39 -08:00
2006-03-23 07:38:04 -08:00
2005-04-16 15:20:36 -07:00
2005-11-10 16:09:18 -08:00
2005-09-05 00:06:12 -07:00
2006-03-23 07:38:06 -08:00
2006-03-23 07:38:04 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-09-12 10:49:57 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-27 08:44:44 -08:00
2006-01-02 08:38:38 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-08-14 18:21:30 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:05 -08:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:05 -08:00
2006-03-22 07:54:03 -08:00
2006-03-25 08:22:56 -08:00
2005-04-16 15:20:36 -07:00
2006-03-28 09:16:06 -08:00
2006-01-08 20:14:04 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:04 -08:00
2005-10-29 21:40:35 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-01-06 08:33:34 -08:00
2006-03-23 07:38:04 -08:00
2005-04-16 15:20:36 -07:00
2005-06-29 18:45:19 +01:00
2006-03-27 08:44:48 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-01-18 19:20:29 -08:00
2005-11-10 16:09:18 -08:00
2005-08-29 15:31:35 -07:00
2005-04-16 15:20:36 -07:00
2005-06-23 09:45:05 -07:00
2005-09-10 10:06:21 -07:00
2006-03-23 07:38:06 -08:00
2005-04-16 15:20:36 -07:00
2006-03-26 08:57:00 -08:00
2005-04-16 15:20:36 -07:00
2006-01-14 18:27:15 -08:00
2005-04-16 15:24:46 -07:00
2006-03-24 07:33:21 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-02-17 08:55:21 -08:00
2005-09-05 00:06:18 -07:00
2005-06-23 09:45:11 -07:00
2005-04-16 15:20:36 -07:00
2005-06-27 15:11:44 -07:00
2006-03-27 08:44:43 -08:00
2006-03-26 08:57:00 -08:00
2006-03-23 07:38:04 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-30 12:28:18 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-01-08 20:14:11 -08:00
2005-04-16 15:20:36 -07:00
2005-09-05 00:06:11 -07:00