Re: [rfc patch 4/4] splice: use do_generic_file_read()

From: Jens Axboe
Date: Tue Jun 24 2008 - 04:06:21 EST


On Sat, Jun 21 2008, Miklos Szeredi wrote:
> From: Miklos Szeredi <mszeredi@xxxxxxx>
>
> __generic_file_splice_read() duplicates a lot of stuff common with the
> generic page cache reading. So reuse that code instead to simplify
> the page cache splice code.
>
> This also fixes some corner cases which weren't properly handled in
> the splice code because of complexity issues. In particular it fixes
> a problem when the filesystem (e.g. fuse) invalidates pages during the
> splice operation.
>
> There might be some slight fall in performance due to the removal of
> the gang lookup for pages. However I'm not sure if this is
> significant enough to warrant the extra complication.

This makes everything sync, it's a no go. Why don't we look into fixing
the invalidate problem that fuse sees (can you elaborate on that?)?

I tried to do a quick performance test with your patches for comparison
in the cached case, but it crashes immediately in spd_release_page()


--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/