Displaying 2 results from an estimated 2 matches for "dio_send_cur_pag".
Did you mean:
dio_send_cur_page
2010 Sep 02
3
[patch] O_DIRECT: fix the splitting up of contiguous I/O
...gt;
> Signed-off-by: Jeff Moyer <jmoyer at redhat.com>
> Acked-by: Josef Bacik <jbacik at redhat.com>
>
> diff --git a/fs/direct-io.c b/fs/direct-io.c
> index 7600aac..445901c 100644
> --- a/fs/direct-io.c
> +++ b/fs/direct-io.c
> @@ -632,7 +632,7 @@ static int dio_send_cur_page(struct dio *dio)
> int ret = 0;
>
> if (dio->bio) {
> - loff_t cur_offset = dio->block_in_file << dio->blkbits;
> + loff_t cur_offset = dio->cur_page_fs_offset;
> loff_t bio_next_offset = dio->logical_offset_in_bio +
> dio->bio->bi_siz...
2010 Nov 02
2
[RFC][PATCH] direct-io: btrfs: avoid splitting dio requests for non-btrfs filesystems
...int boundary; /* prev block is at a boundary */
+ int separate_meta_reads; /* separate in I/O submission */
int reap_counter; /* rate limit reaping */
get_block_t *get_block; /* block mapping function */
dio_iodone_t *end_io; /* IO completion function */
@@ -659,7 +661,7 @@ static int dio_send_cur_page(struct dio *dio)
* Submit now if the underlying fs is about to perform a
* metadata read
*/
- else if (dio->boundary)
+ else if (dio->separate_meta_reads && dio->boundary)
dio_bio_submit(dio);
}
@@ -1245,6 +1247,11 @@ __blockdev_direct_IO(int rw, struct kioc...