page_io.c (eb5bc2a213f96bd43b5f00a625acb0c669613645) page_io.c (66ee59af630fd8d5f4f56fb28162857e629aa0ab)
1/*
2 * linux/mm/page_io.c
3 *
4 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
5 *
6 * Swap reorganised 29.12.95,
7 * Asynchronous swapping added 30.12.95. Stephen Tweedie
8 * Removed race in async swapping. 14.4.1996. Bruno Haible

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

269 .bv_len = PAGE_SIZE,
270 .bv_offset = 0
271 };
272 struct iov_iter from;
273
274 iov_iter_bvec(&from, ITER_BVEC | WRITE, &bv, 1, PAGE_SIZE);
275 init_sync_kiocb(&kiocb, swap_file);
276 kiocb.ki_pos = page_file_offset(page);
1/*
2 * linux/mm/page_io.c
3 *
4 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
5 *
6 * Swap reorganised 29.12.95,
7 * Asynchronous swapping added 30.12.95. Stephen Tweedie
8 * Removed race in async swapping. 14.4.1996. Bruno Haible

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

269 .bv_len = PAGE_SIZE,
270 .bv_offset = 0
271 };
272 struct iov_iter from;
273
274 iov_iter_bvec(&from, ITER_BVEC | WRITE, &bv, 1, PAGE_SIZE);
275 init_sync_kiocb(&kiocb, swap_file);
276 kiocb.ki_pos = page_file_offset(page);
277 kiocb.ki_nbytes = PAGE_SIZE;
278
279 set_page_writeback(page);
280 unlock_page(page);
281 ret = mapping->a_ops->direct_IO(ITER_BVEC | WRITE,
282 &kiocb, &from,
283 kiocb.ki_pos);
284 if (ret == PAGE_SIZE) {
285 count_vm_event(PSWPOUT);

--- 99 unchanged lines hidden ---
277
278 set_page_writeback(page);
279 unlock_page(page);
280 ret = mapping->a_ops->direct_IO(ITER_BVEC | WRITE,
281 &kiocb, &from,
282 kiocb.ki_pos);
283 if (ret == PAGE_SIZE) {
284 count_vm_event(PSWPOUT);

--- 99 unchanged lines hidden ---