Messages in this thread | | | Date | Mon, 10 Apr 2017 20:28:00 +0100 | From | Al Viro <> | Subject | Re: iov_iter_pipe warning. |
| |
On Tue, Mar 21, 2017 at 04:59:01PM -0400, Dave Jones wrote: > WARNING: CPU: 0 PID: 9290 at lib/iov_iter.c:836 iov_iter_pipe+0x71/0x80 > CPU: 0 PID: 9290 Comm: trinity-c7 Not tainted 4.11.0-rc3-think+ #3 > Call Trace: > dump_stack+0x68/0x93 > __warn+0xcb/0xf0 > warn_slowpath_null+0x1d/0x20 > iov_iter_pipe+0x71/0x80 > generic_file_splice_read+0x37/0x140 > do_splice_to+0x79/0x90 > splice_direct_to_actor+0xb8/0x220 > ? generic_pipe_buf_nosteal+0x10/0x10 > do_splice_direct+0x9e/0xd0 > do_sendfile+0x1d7/0x3c0 > SyS_sendfile64+0x73/0xe0 > do_syscall_64+0x66/0x1d0
Cute... We have ->splice_read() called in attempt to shove something into a full internal pipe. How do you achieve that situation? actor() callback claiming to have drained more than it actually had to?
Do you have a reliable reproducer?
| |