xfs_file_splice_read: possible circular locking dependency detected

Linus Torvalds torvalds at linux-foundation.org
Sat Sep 17 15:15:29 CDT 2016


On Sat, Sep 17, 2016 at 12:00 PM, Al Viro <viro at zeniv.linux.org.uk> wrote:
>
> [ edited out steps 1-6]

So that all sounds very much like a big improvement. Not that I think
removing splice_pipe_desc is such a big deal per se, but on the whole
the less the actual low-level iterator does, and the more we do at a
higher level, the happier I am. The fact that you say you can remove
it does make it sound like you got rid of the right amount of
complexity, though. The reason that whole thing exists is exactly
because otherwise the splice callbacks would look too damn hair for
words.

If we get rid of all the SPLICE_F_NONBLOCK, sighandling, pipe_wait()
and fasync crap at the low level, I'll already be much happier. I hate
how complex that code is, and how the filesystems call into it as a
helper etc. Doing just the iterator in the deep corners of splice
sounds like absolutely the right thing to do.

So reading your outline I say "wonderful".

Of course, maybe I'll change my mind when I actually see your patches ;^p

             Linus



More information about the xfs mailing list