Jens Axboe
aadd06e5c5
[PATCH] splice: fix problems with sys_tee()
...
Several issues noticed/fixed:
- We cannot reliably block in link_pipe() while holding both input and output
mutexes. So do preparatory checks before locking down both mutexes and doing
the link.
- The ipipe->nrbufs vs i check was bad, because we could have dropped the
ipipe lock in-between. This causes us to potentially look at unknown
buffers if we were racing with someone else reading this pipe.
Signed-off-by: Jens Axboe <axboe@suse.de>
2006-07-10 11:00:01 +02:00
..
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-06-28 14:59:04 -07:00
2006-06-28 14:59:04 -07:00
2006-06-30 18:23:04 +02:00
2006-06-28 14:59:04 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-06-29 14:43:01 -07:00
2006-06-28 14:59:04 -07:00
2006-06-30 19:25:36 +02:00
2006-06-28 14:59:04 -07:00
2006-07-03 15:27:08 -07:00
2006-07-03 15:27:08 -07:00
2006-06-28 14:59:04 -07:00
2006-06-28 14:59:04 -07:00
2006-06-28 14:59:04 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-06-28 14:59:04 -07:00
2006-06-28 14:59:04 -07:00
2006-06-28 14:59:04 -07:00
2006-06-30 19:25:36 +02:00
2006-06-27 17:32:38 -07:00
2006-06-30 19:25:36 +02:00
2006-07-03 21:29:08 -07:00
2006-06-30 19:25:36 +02:00
2006-07-05 13:13:18 -04:00
2006-06-28 14:59:04 -07:00
2006-06-30 15:39:30 -07:00
2006-07-05 13:19:25 -04:00
2006-06-30 15:39:30 -07:00
2006-06-30 19:25:36 +02:00
2006-07-03 15:27:08 -07:00
2006-06-29 16:13:35 -07:00
2006-06-30 19:25:36 +02:00
2006-07-03 22:37:13 -07:00
2006-06-30 19:25:36 +02:00
2006-06-28 14:59:04 -07:00
2006-07-03 15:27:08 -07:00
2006-06-28 14:59:04 -07:00
2006-06-30 19:25:36 +02:00
2006-06-28 14:59:04 -07:00
2006-06-28 14:59:04 -07:00
2006-06-30 19:25:36 +02:00
2006-07-03 15:27:08 -07:00
2006-06-30 19:25:36 +02:00
2006-07-03 15:26:59 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-07-03 15:27:10 -07:00
2006-06-30 15:39:30 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-06-26 10:48:16 -07:00
2006-07-03 15:27:06 -07:00
2006-06-30 19:25:36 +02:00
2006-07-03 15:27:06 -07:00
2006-07-03 15:27:11 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-06-30 11:25:36 -07:00
2006-06-30 15:39:30 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 11:25:37 -07:00
2006-06-29 14:56:12 -07:00
2006-07-05 13:13:18 -04:00
2006-06-26 12:25:05 -07:00
2006-07-03 15:27:06 -07:00
2006-06-30 19:25:36 +02:00
2006-06-30 19:25:36 +02:00
2006-07-10 11:00:01 +02:00
2006-06-30 19:25:36 +02:00
2006-07-03 15:27:09 -07:00