file.c (e752ab11dcb48353727ea26eefd740155e028865) file.c (c20bc9c6d8eb13ab1c3f8e5f8ad91466ae717d7f)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 *
4 * Copyright (C) 2019-2021 Paragon Software GmbH, All rights reserved.
5 *
6 * Regular file handling primitives for NTFS-based filesystems.
7 *
8 */

--- 209 unchanged lines hidden (view full) ---

218 continue;
219 }
220
221 /* Ok, it's mapped. Make sure it's up-to-date. */
222 if (PageUptodate(page))
223 set_buffer_uptodate(bh);
224
225 if (!buffer_uptodate(bh)) {
1// SPDX-License-Identifier: GPL-2.0
2/*
3 *
4 * Copyright (C) 2019-2021 Paragon Software GmbH, All rights reserved.
5 *
6 * Regular file handling primitives for NTFS-based filesystems.
7 *
8 */

--- 209 unchanged lines hidden (view full) ---

218 continue;
219 }
220
221 /* Ok, it's mapped. Make sure it's up-to-date. */
222 if (PageUptodate(page))
223 set_buffer_uptodate(bh);
224
225 if (!buffer_uptodate(bh)) {
226 lock_buffer(bh);
227 bh->b_end_io = end_buffer_read_sync;
228 get_bh(bh);
229 submit_bh(REQ_OP_READ, bh);
230
231 wait_on_buffer(bh);
232 if (!buffer_uptodate(bh)) {
226 err = bh_read(bh, 0);
227 if (err < 0) {
233 unlock_page(page);
234 put_page(page);
228 unlock_page(page);
229 put_page(page);
235 err = -EIO;
236 goto out;
237 }
238 }
239
240 mark_buffer_dirty(bh);
241
242 } while (bh_off = bh_next, iblock += 1,
243 head != (bh = bh->b_this_page));

--- 941 unchanged lines hidden ---
230 goto out;
231 }
232 }
233
234 mark_buffer_dirty(bh);
235
236 } while (bh_off = bh_next, iblock += 1,
237 head != (bh = bh->b_this_page));

--- 941 unchanged lines hidden ---