All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 0/2] Block layer patches
@ 2019-04-08 16:34 Kevin Wolf
  2019-04-08 16:34 ` [Qemu-devel] [PULL 1/2] block: Forward 'discard' to temporary overlay Kevin Wolf
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Kevin Wolf @ 2019-04-08 16:34 UTC (permalink / raw
  To: qemu-block; +Cc: kwolf, peter.maydell, qemu-devel

The following changes since commit f55a585d1037e5de6088f25e75443c2776786e29:

  Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging (2019-04-07 14:54:55 +0100)

are available in the Git repository at:

  git://repo.or.cz/qemu/kevin.git tags/for-upstream

for you to fetch changes up to ab63817119b03b95f7dce6fae036e6d063ad63fb:

  hmp: Fix drive_add ... format=help crash (2019-04-08 17:42:06 +0200)

----------------------------------------------------------------
Block layer patches:

- hmp: Fix drive_add ... format=help crash
- block: Forward 'discard' to temporary overlay

----------------------------------------------------------------
Kevin Wolf (1):
      block: Forward 'discard' to temporary overlay

Markus Armbruster (1):
      hmp: Fix drive_add ... format=help crash

 block.c          | 3 ++-
 device-hotplug.c | 2 +-
 tests/test-hmp.c | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

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

* [Qemu-devel] [PULL 1/2] block: Forward 'discard' to temporary overlay
  2019-04-08 16:34 [Qemu-devel] [PULL 0/2] Block layer patches Kevin Wolf
@ 2019-04-08 16:34 ` Kevin Wolf
  2019-04-08 16:34 ` [Qemu-devel] [PULL 2/2] hmp: Fix drive_add ... format=help crash Kevin Wolf
  2019-04-08 19:10   ` Peter Maydell
  2 siblings, 0 replies; 5+ messages in thread
From: Kevin Wolf @ 2019-04-08 16:34 UTC (permalink / raw
  To: qemu-block; +Cc: kwolf, peter.maydell, qemu-devel

When bdrv_temp_snapshot_options() is called for snapshot=on, the
'discard' option in the options QDict hasn't been parsed and merged into
the flags yet. So copy the dict entry to make sure that the temporary
overlay enables discard when it was requested for the drive.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Reviewed-by: Alberto Garcia <berto@igalia.com>
---
 block.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/block.c b/block.c
index 3050854528..16615bc876 100644
--- a/block.c
+++ b/block.c
@@ -950,8 +950,9 @@ static void bdrv_temp_snapshot_options(int *child_flags, QDict *child_options,
     qdict_set_default_str(child_options, BDRV_OPT_CACHE_DIRECT, "off");
     qdict_set_default_str(child_options, BDRV_OPT_CACHE_NO_FLUSH, "on");
 
-    /* Copy the read-only option from the parent */
+    /* Copy the read-only and discard options from the parent */
     qdict_copy_default(child_options, parent_options, BDRV_OPT_READ_ONLY);
+    qdict_copy_default(child_options, parent_options, BDRV_OPT_DISCARD);
 
     /* aio=native doesn't work for cache.direct=off, so disable it for the
      * temporary snapshot */
-- 
2.20.1

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

* [Qemu-devel] [PULL 2/2] hmp: Fix drive_add ... format=help crash
  2019-04-08 16:34 [Qemu-devel] [PULL 0/2] Block layer patches Kevin Wolf
  2019-04-08 16:34 ` [Qemu-devel] [PULL 1/2] block: Forward 'discard' to temporary overlay Kevin Wolf
@ 2019-04-08 16:34 ` Kevin Wolf
  2019-04-08 19:10   ` Peter Maydell
  2 siblings, 0 replies; 5+ messages in thread
From: Kevin Wolf @ 2019-04-08 16:34 UTC (permalink / raw
  To: qemu-block; +Cc: kwolf, peter.maydell, qemu-devel

From: Markus Armbruster <armbru@redhat.com>

drive_new() returns null without setting an error when it provided
help.  add_init_drive() assumes null means failure, and crashes trying
to report a null error.

Fixes: c4f26c9f37ce511e5fe629c21c180dc6eb7c5a25
Cc: qemu-stable@nongnu.org
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
---
 device-hotplug.c | 2 +-
 tests/test-hmp.c | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/device-hotplug.c b/device-hotplug.c
index 6090d5f1e9..6153259d71 100644
--- a/device-hotplug.c
+++ b/device-hotplug.c
@@ -48,7 +48,7 @@ static DriveInfo *add_init_drive(const char *optstr)
 
     mc = MACHINE_GET_CLASS(current_machine);
     dinfo = drive_new(opts, mc->block_default_type, &err);
-    if (!dinfo) {
+    if (err) {
         error_report_err(err);
         qemu_opts_del(opts);
         return NULL;
diff --git a/tests/test-hmp.c b/tests/test-hmp.c
index 8c49d2fdf1..54a01824dc 100644
--- a/tests/test-hmp.c
+++ b/tests/test-hmp.c
@@ -31,6 +31,7 @@ static const char *hmp_cmds[] = {
     "cpu 0",
     "device_add ?",
     "device_add usb-mouse,id=mouse1",
+    "drive_add ignored format=help",
     "mouse_button 7",
     "mouse_move 10 10",
     "mouse_button 0",
-- 
2.20.1

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

* Re: [Qemu-devel] [PULL 0/2] Block layer patches
@ 2019-04-08 19:10   ` Peter Maydell
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Maydell @ 2019-04-08 19:10 UTC (permalink / raw
  To: Kevin Wolf; +Cc: Qemu-block, QEMU Developers

On Mon, 8 Apr 2019 at 17:35, Kevin Wolf <kwolf@redhat.com> wrote:
>
> The following changes since commit f55a585d1037e5de6088f25e75443c2776786e29:
>
>   Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging (2019-04-07 14:54:55 +0100)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/kevin.git tags/for-upstream
>
> for you to fetch changes up to ab63817119b03b95f7dce6fae036e6d063ad63fb:
>
>   hmp: Fix drive_add ... format=help crash (2019-04-08 17:42:06 +0200)
>
> ----------------------------------------------------------------
> Block layer patches:
>
> - hmp: Fix drive_add ... format=help crash
> - block: Forward 'discard' to temporary overlay
>
> ----------------------------------------------------------------

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/4.0
for any user-visible changes.

-- PMM

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

* Re: [Qemu-devel] [PULL 0/2] Block layer patches
@ 2019-04-08 19:10   ` Peter Maydell
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Maydell @ 2019-04-08 19:10 UTC (permalink / raw
  To: Kevin Wolf; +Cc: QEMU Developers, Qemu-block

On Mon, 8 Apr 2019 at 17:35, Kevin Wolf <kwolf@redhat.com> wrote:
>
> The following changes since commit f55a585d1037e5de6088f25e75443c2776786e29:
>
>   Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging (2019-04-07 14:54:55 +0100)
>
> are available in the Git repository at:
>
>   git://repo.or.cz/qemu/kevin.git tags/for-upstream
>
> for you to fetch changes up to ab63817119b03b95f7dce6fae036e6d063ad63fb:
>
>   hmp: Fix drive_add ... format=help crash (2019-04-08 17:42:06 +0200)
>
> ----------------------------------------------------------------
> Block layer patches:
>
> - hmp: Fix drive_add ... format=help crash
> - block: Forward 'discard' to temporary overlay
>
> ----------------------------------------------------------------

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/4.0
for any user-visible changes.

-- PMM


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

end of thread, other threads:[~2019-04-08 19:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-08 16:34 [Qemu-devel] [PULL 0/2] Block layer patches Kevin Wolf
2019-04-08 16:34 ` [Qemu-devel] [PULL 1/2] block: Forward 'discard' to temporary overlay Kevin Wolf
2019-04-08 16:34 ` [Qemu-devel] [PULL 2/2] hmp: Fix drive_add ... format=help crash Kevin Wolf
2019-04-08 19:10 ` [Qemu-devel] [PULL 0/2] Block layer patches Peter Maydell
2019-04-08 19:10   ` Peter Maydell

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.