All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 00/16] block: Protect AIO context change with perm API
@ 2017-04-19  9:43 Fam Zheng
  2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 01/16] block: Define BLK_PERM_AIO_CONTEXT_CHANGE Fam Zheng
                   ` (16 more replies)
  0 siblings, 17 replies; 41+ messages in thread
From: Fam Zheng @ 2017-04-19  9:43 UTC (permalink / raw)
  To: qemu-devel; +Cc: Stefan Hajnoczi, Kevin Wolf, Max Reitz, qemu-block

v2: Address Stefan's comments:

    - Clean up redundancy in bdrv_format_default_perms change.
    - Add a test case to check both success/failure cases.
      A failure case is not possible at user interface level because of other
      checks we have, so write a unit test in tests/test-blk-perm.c.

Eject / change of scsi-cd on a virtio-scsi dataplane bus causes abort() because
the new BDS doesn't get proper bdrv_set_aio_context().

Store the AioContext in BB and do it in blk_insert_bs. That is done by
Vladimir's patch.

Other patches are to make sure such a bdrv_set_aio_context() doesn't interfere
with other BBs using other nodes from this graph.

Fam

Fam Zheng (15):
  block: Define BLK_PERM_AIO_CONTEXT_CHANGE
  block-backend: Add blk_request_perm
  blockjob: Add BLK_PERM_AIO_CONTEXT_CHANGE shared perm on bs
  blockjob: Allow aio context change on intermediate nodes
  block: Propagate BLK_PERM_AIO_CONTEXT_CHANGE down the graph
  backup: Request BLK_PERM_AIO_CONTEXT_CHANGE on target
  backup: Do initial aio context move of target via BB interface
  mirror: Request aio context change permission on target
  commit: Allow aio context change on s->base
  mirror: Do initial aio context move of target via BB interface
  virtio-scsi: Request BLK_PERM_AIO_CONTEXT_CHANGE for dataplane
  virtio-blk: Request BLK_PERM_AIO_CONTEXT_CHANGE for dataplane
  nbd: Allow BLK_PERM_AIO_CONTEXT_CHANGE on BB
  block: Add perm assertion on blk_set_aio_context
  tests: Add test case for BLK_PERM_AIO_CONTEXT_CHANGE

Vladimir Sementsov-Ogievskiy (1):
  blk: fix aio context loss on media change

 block.c                         | 12 ++++++---
 block/backup.c                  | 11 +++++++-
 block/block-backend.c           | 22 +++++++++++++++
 block/commit.c                  |  6 +++--
 block/mirror.c                  | 13 ++++++++-
 block/stream.c                  |  3 ++-
 block/vvfat.c                   |  2 +-
 blockdev.c                      | 18 -------------
 blockjob.c                      |  3 +++
 hw/block/dataplane/virtio-blk.c | 15 ++++++++---
 hw/scsi/virtio-scsi.c           |  4 +++
 include/block/block.h           |  7 ++++-
 include/sysemu/block-backend.h  |  1 +
 nbd/server.c                    |  6 +++--
 tests/Makefile.include          |  2 ++
 tests/test-blk-perm.c           | 59 +++++++++++++++++++++++++++++++++++++++++
 16 files changed, 149 insertions(+), 35 deletions(-)
 create mode 100644 tests/test-blk-perm.c

-- 
2.9.3

^ permalink raw reply	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2017-06-05  8:35 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-19  9:43 [Qemu-devel] [PATCH v2 00/16] block: Protect AIO context change with perm API Fam Zheng
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 01/16] block: Define BLK_PERM_AIO_CONTEXT_CHANGE Fam Zheng
2017-05-11 19:26   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 02/16] block-backend: Add blk_request_perm Fam Zheng
2017-05-11 19:32   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-05-24  2:16     ` Fam Zheng
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 03/16] blockjob: Add BLK_PERM_AIO_CONTEXT_CHANGE shared perm on bs Fam Zheng
2017-05-11 19:33   ` Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 04/16] blockjob: Allow aio context change on intermediate nodes Fam Zheng
2017-05-11 19:34   ` Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 05/16] block: Propagate BLK_PERM_AIO_CONTEXT_CHANGE down the graph Fam Zheng
2017-05-11 19:35   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 06/16] backup: Request BLK_PERM_AIO_CONTEXT_CHANGE on target Fam Zheng
2017-05-11 19:41   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-05-24  2:18     ` Fam Zheng
2017-05-31  9:39       ` Stefan Hajnoczi
2017-05-31  9:57         ` Fam Zheng
2017-06-01 13:26           ` Stefan Hajnoczi
2017-06-05  8:34             ` Fam Zheng
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 07/16] backup: Do initial aio context move of target via BB interface Fam Zheng
2017-05-11 20:00   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 08/16] mirror: Request aio context change permission on target Fam Zheng
2017-05-11 20:01   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 09/16] commit: Allow aio context change on s->base Fam Zheng
2017-05-11 20:06   ` Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 10/16] mirror: Do initial aio context move of target via BB interface Fam Zheng
2017-05-11 20:27   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-05-24  2:23     ` Fam Zheng
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 11/16] virtio-scsi: Request BLK_PERM_AIO_CONTEXT_CHANGE for dataplane Fam Zheng
2017-05-11 20:28   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 12/16] virtio-blk: " Fam Zheng
2017-05-11 20:29   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 13/16] blk: fix aio context loss on media change Fam Zheng
2017-05-11 20:31   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 14/16] nbd: Allow BLK_PERM_AIO_CONTEXT_CHANGE on BB Fam Zheng
2017-05-11 20:32   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 15/16] block: Add perm assertion on blk_set_aio_context Fam Zheng
2017-05-11 20:33   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2017-04-19  9:43 ` [Qemu-devel] [PATCH v2 16/16] tests: Add test case for BLK_PERM_AIO_CONTEXT_CHANGE Fam Zheng
2017-05-11 20:36   ` Stefan Hajnoczi
2017-05-11 20:43 ` [Qemu-devel] [Qemu-block] [PATCH v2 00/16] block: Protect AIO context change with perm API Stefan Hajnoczi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.