aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/splice.c30
1 files changed, 0 insertions, 30 deletions
diff --git a/fs/splice.c b/fs/splice.c
index badc78ff1246..ae50208e3e6c 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -593,36 +593,6 @@ find_page:
593 goto out; 593 goto out;
594 } 594 }
595 595
596 /*
597 * We get here with the page locked. If the page is also
598 * uptodate, we don't need to do more. If it isn't, we
599 * may need to bring it in if we are not going to overwrite
600 * the full page.
601 */
602 if (!PageUptodate(page)) {
603 if (this_len < PAGE_CACHE_SIZE) {
604 ret = mapping->a_ops->readpage(file, page);
605 if (unlikely(ret))
606 goto out;
607
608 lock_page(page);
609
610 if (!PageUptodate(page)) {
611 /*
612 * Page got invalidated, repeat.
613 */
614 if (!page->mapping) {
615 unlock_page(page);
616 page_cache_release(page);
617 goto find_page;
618 }
619 ret = -EIO;
620 goto out;
621 }
622 } else
623 SetPageUptodate(page);
624 }
625
626 ret = mapping->a_ops->prepare_write(file, page, offset, offset+this_len); 596 ret = mapping->a_ops->prepare_write(file, page, offset, offset+this_len);
627 if (unlikely(ret)) { 597 if (unlikely(ret)) {
628 loff_t isize = i_size_read(mapping->host); 598 loff_t isize = i_size_read(mapping->host);