goto out;
        }
 
-       /*
-        * We get here with the page locked. If the page is also
-        * uptodate, we don't need to do more. If it isn't, we
-        * may need to bring it in if we are not going to overwrite
-        * the full page.
-        */
-       if (!PageUptodate(page)) {
-               if (this_len < PAGE_CACHE_SIZE) {
-                       ret = mapping->a_ops->readpage(file, page);
-                       if (unlikely(ret))
-                               goto out;
-
-                       lock_page(page);
-
-                       if (!PageUptodate(page)) {
-                               /*
-                                * Page got invalidated, repeat.
-                                */
-                               if (!page->mapping) {
-                                       unlock_page(page);
-                                       page_cache_release(page);
-                                       goto find_page;
-                               }
-                               ret = -EIO;
-                               goto out;
-                       }
-               } else
-                       SetPageUptodate(page);
-       }
-
        ret = mapping->a_ops->prepare_write(file, page, offset, offset+this_len);
        if (unlikely(ret)) {
                loff_t isize = i_size_read(mapping->host);