mbox series

[RFC,0/3] block: qiov_offset parameter for io

Message ID 20190521084522.15050-1-vsementsov@virtuozzo.com
Headers show
Series block: qiov_offset parameter for io | expand

Message

Vladimir Sementsov-Ogievskiy May 21, 2019, 8:45 a.m. UTC
Hi all!

Here is idea of adding qiov_offset parameter to io path, to avoid
a lot of places with same pattern of creating local_qiov or hd_qiov
variables. Here is only read path for qcow2, if we like it, I'll
make v2 with both read and write paths for qcow2.

Vladimir Sementsov-Ogievskiy (3):
  block/io: introduce bdrv_co_preadv_part
  block/qcow2: refactor qcow2_co_preadv to use buffer-based io
  block/qcow2: implement .bdrv_co_preadv_part

 include/block/block_int.h |  6 +++
 block/io.c                | 87 ++++++++++++++++++++++++++-------------
 block/qcow2.c             | 67 +++++++++++++++---------------
 3 files changed, 97 insertions(+), 63 deletions(-)

Comments

Vladimir Sementsov-Ogievskiy May 21, 2019, 8:48 a.m. UTC | #1
21.05.2019 11:45, Vladimir Sementsov-Ogievskiy wrote:
> Hi all!
> 
> Here is idea of adding qiov_offset parameter to io path, to avoid
> a lot of places with same pattern of creating local_qiov or hd_qiov
> variables. Here is only read path for qcow2, if we like it, I'll
> make v2 with both read and write paths for qcow2.
> 

Based on Max's block tree
Based-on: https://github.com/XanClic/qemu block
Stefan Hajnoczi May 23, 2019, 9:43 a.m. UTC | #2
On Tue, May 21, 2019 at 11:45:19AM +0300, Vladimir Sementsov-Ogievskiy wrote:
> Hi all!
> 
> Here is idea of adding qiov_offset parameter to io path, to avoid
> a lot of places with same pattern of creating local_qiov or hd_qiov
> variables. Here is only read path for qcow2, if we like it, I'll
> make v2 with both read and write paths for qcow2.
> 
> Vladimir Sementsov-Ogievskiy (3):
>   block/io: introduce bdrv_co_preadv_part
>   block/qcow2: refactor qcow2_co_preadv to use buffer-based io
>   block/qcow2: implement .bdrv_co_preadv_part
> 
>  include/block/block_int.h |  6 +++
>  block/io.c                | 87 ++++++++++++++++++++++++++-------------
>  block/qcow2.c             | 67 +++++++++++++++---------------
>  3 files changed, 97 insertions(+), 63 deletions(-)

I like it!

Stefan