[Qemu-devel] [PATCH 0/2] block: make .bdrv_create() a coroutine_fn

Stefan Hajnoczi posted 2 patches 6 years, 9 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170705102231.20711-1-stefanha@redhat.com
Test FreeBSD passed
Test checkpatch passed
Test docker failed
Test s390x passed
include/block/block_int.h |  3 ++-
block.c                   |  4 ++--
block/crypto.c            |  8 ++++----
block/file-posix.c        | 15 ++++++++-------
block/file-win32.c        |  3 ++-
block/gluster.c           | 12 ++++++------
block/iscsi.c             |  7 ++++---
block/nfs.c               |  5 +++--
block/parallels.c         |  6 ++++--
block/qcow.c              |  5 +++--
block/qcow2.c             | 22 ++++++++++++----------
block/qed.c               |  6 ++++--
block/raw-format.c        |  5 +++--
block/rbd.c               |  6 ++++--
block/sheepdog.c          | 10 +++++-----
block/ssh.c               |  5 +++--
block/vdi.c               |  5 +++--
block/vhdx.c              |  5 +++--
block/vmdk.c              |  5 +++--
block/vpc.c               |  5 +++--
20 files changed, 81 insertions(+), 61 deletions(-)
[Qemu-devel] [PATCH 0/2] block: make .bdrv_create() a coroutine_fn
Posted by Stefan Hajnoczi 6 years, 9 months ago
The BlockDriver->bdrv_create() function is always called from coroutine
context.  These patches rename it and clean up qcow2 code that is currently
calling CoMutex functions outside coroutine_fn.

Stefan Hajnoczi (2):
  block: rename .bdrv_create() to .bdrv_co_create()
  qcow2: make qcow2_co_create2() a coroutine_fn

 include/block/block_int.h |  3 ++-
 block.c                   |  4 ++--
 block/crypto.c            |  8 ++++----
 block/file-posix.c        | 15 ++++++++-------
 block/file-win32.c        |  3 ++-
 block/gluster.c           | 12 ++++++------
 block/iscsi.c             |  7 ++++---
 block/nfs.c               |  5 +++--
 block/parallels.c         |  6 ++++--
 block/qcow.c              |  5 +++--
 block/qcow2.c             | 22 ++++++++++++----------
 block/qed.c               |  6 ++++--
 block/raw-format.c        |  5 +++--
 block/rbd.c               |  6 ++++--
 block/sheepdog.c          | 10 +++++-----
 block/ssh.c               |  5 +++--
 block/vdi.c               |  5 +++--
 block/vhdx.c              |  5 +++--
 block/vmdk.c              |  5 +++--
 block/vpc.c               |  5 +++--
 20 files changed, 81 insertions(+), 61 deletions(-)

-- 
2.9.4


Re: [Qemu-devel] [PATCH 0/2] block: make .bdrv_create() a coroutine_fn
Posted by Marc-André Lureau 6 years, 9 months ago

----- Original Message -----
> The BlockDriver->bdrv_create() function is always called from coroutine
> context.  These patches rename it and clean up qcow2 code that is currently
> calling CoMutex functions outside coroutine_fn.
> 
> Stefan Hajnoczi (2):
>   block: rename .bdrv_create() to .bdrv_co_create()
>   qcow2: make qcow2_co_create2() a coroutine_fn
> 

I came to the same changes with my series, so
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>

>  include/block/block_int.h |  3 ++-
>  block.c                   |  4 ++--
>  block/crypto.c            |  8 ++++----
>  block/file-posix.c        | 15 ++++++++-------
>  block/file-win32.c        |  3 ++-
>  block/gluster.c           | 12 ++++++------
>  block/iscsi.c             |  7 ++++---
>  block/nfs.c               |  5 +++--
>  block/parallels.c         |  6 ++++--
>  block/qcow.c              |  5 +++--
>  block/qcow2.c             | 22 ++++++++++++----------
>  block/qed.c               |  6 ++++--
>  block/raw-format.c        |  5 +++--
>  block/rbd.c               |  6 ++++--
>  block/sheepdog.c          | 10 +++++-----
>  block/ssh.c               |  5 +++--
>  block/vdi.c               |  5 +++--
>  block/vhdx.c              |  5 +++--
>  block/vmdk.c              |  5 +++--
>  block/vpc.c               |  5 +++--
>  20 files changed, 81 insertions(+), 61 deletions(-)
> 
> --
> 2.9.4
> 
> 

Re: [Qemu-devel] [Qemu-block] [PATCH 0/2] block: make .bdrv_create() a coroutine_fn
Posted by Stefan Hajnoczi 6 years, 9 months ago
On Wed, Jul 05, 2017 at 06:26:05AM -0400, Marc-André Lureau wrote:
> 
> 
> ----- Original Message -----
> > The BlockDriver->bdrv_create() function is always called from coroutine
> > context.  These patches rename it and clean up qcow2 code that is currently
> > calling CoMutex functions outside coroutine_fn.
> > 
> > Stefan Hajnoczi (2):
> >   block: rename .bdrv_create() to .bdrv_co_create()
> >   qcow2: make qcow2_co_create2() a coroutine_fn
> > 
> 
> I came to the same changes with my series, so
> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>

In that case:

NACK

Marc-André posted a more extensive series that does the same fixes.  He
is also the one who originally found this issue.  Drop my series.

Stefan