qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 4760ce: io: Introduce qio_channel_file_new_du


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 4760ce: io: Introduce qio_channel_file_new_dupfd
Date: Mon, 18 Mar 2024 10:17:04 -0700

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 4760cedc61328e47bf7f1fabceb9937facfa4cdd
      
https://github.com/qemu/qemu/commit/4760cedc61328e47bf7f1fabceb9937facfa4cdd
  Author: Fabiano Rosas <farosas@suse.de>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M include/io/channel-file.h
    M io/channel-file.c

  Log Message:
  -----------
  io: Introduce qio_channel_file_new_dupfd

Add a new helper function for creating a QIOChannelFile channel with a
duplicated file descriptor. This saves the calling code from having to
do error checking on the dup() call.

Suggested-by: "Daniel P. Berrangé" <berrange@redhat.com>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Link: https://lore.kernel.org/r/20240311233335.17299-2-farosas@suse.de
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: c827fafcaad3e8b3dcf7eeb5944b03f6b63dfc44
      
https://github.com/qemu/qemu/commit/c827fafcaad3e8b3dcf7eeb5944b03f6b63dfc44
  Author: Fabiano Rosas <farosas@suse.de>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M migration/fd.c
    M migration/file.c

  Log Message:
  -----------
  migration: Fix error handling after dup in file migration

The file migration code was allowing a possible -1 from a failed call
to dup() to propagate into the new QIOFileChannel::fd before checking
for validity. Coverity doesn't like that, possibly due to the the
lseek(-1, ...) call that would ensue before returning from the channel
creation routine.

Use the newly introduced qio_channel_file_dupfd() to properly check
the return of dup() before proceeding.

Fixes: CID 1539961
Fixes: CID 1539965
Fixes: CID 1539960
Fixes: 2dd7ee7a51 ("migration/multifd: Add incoming QIOChannelFile support")
Fixes: decdc76772 ("migration/multifd: Add mapped-ram support to fd: URI")
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Link: https://lore.kernel.org/r/20240311233335.17299-3-farosas@suse.de
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 7e8ccf99ed5d0c546268cf584d4dca1569c97fea
      
https://github.com/qemu/qemu/commit/7e8ccf99ed5d0c546268cf584d4dca1569c97fea
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M include/exec/exec-all.h
    M system/physmem.c

  Log Message:
  -----------
  physmem: Expose tlb_reset_dirty_range_all()

In order to call tlb_reset_dirty_range_all() outside of
system/physmem.c, expose its prototype.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Link: https://lore.kernel.org/r/20240312201458.79532-2-philmd@linaro.org
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 86a9ae80cc5fa2a989f253fca5e70f61eb4269e2
      
https://github.com/qemu/qemu/commit/86a9ae80cc5fa2a989f253fca5e70f61eb4269e2
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M include/exec/ram_addr.h
    M system/physmem.c

  Log Message:
  -----------
  physmem: Factor cpu_physical_memory_dirty_bits_cleared() out

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240219061731.232570-1-npiggin@gmail.com>
[PMD: Split patch in 2: part 1/2]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Link: https://lore.kernel.org/r/20240312201458.79532-3-philmd@linaro.org
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 03bfc2188f061aa8381403f9280555f4e22c35a2
      
https://github.com/qemu/qemu/commit/03bfc2188f061aa8381403f9280555f4e22c35a2
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M include/exec/ram_addr.h

  Log Message:
  -----------
  physmem: Fix migration dirty bitmap coherency with TCG memory access

The fastpath in cpu_physical_memory_sync_dirty_bitmap() to test large
aligned ranges forgot to bring the TCG TLB up to date after clearing
some of the dirty memory bitmap bits. This can result in stores though
the TCG TLB not setting the dirty memory bitmap and ultimately causes
memory corruption / lost updates during migration from a TCG host.

Fix this by calling cpu_physical_memory_dirty_bits_cleared() when
dirty bits have been cleared.

Fixes: aa8dc044772 ("migration: synchronize memory bitmap 64bits at a time")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240219061731.232570-1-npiggin@gmail.com>
[PMD: Split patch in 2: part 2/2, slightly adapt description]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Link: https://lore.kernel.org/r/20240312201458.79532-4-philmd@linaro.org
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 2e128776dc56f502c2ee41750afe83938f389528
      
https://github.com/qemu/qemu/commit/2e128776dc56f502c2ee41750afe83938f389528
  Author: Cédric Le Goater <clg@redhat.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M migration/block.c

  Log Message:
  -----------
  migration: Skip only empty block devices

The block .save_setup() handler calls a helper routine
init_blk_migration() which builds a list of block devices to take into
account for migration. When one device is found to be empty (sectors
== 0), the loop exits and all the remaining devices are ignored. This
is a regression introduced when bdrv_iterate() was removed.

Change that by skipping only empty devices.

Cc: Markus Armbruster <armbru@redhat.com>
Cc: qemu-stable <qemu-stable@nongnu.org>
Suggested-by: Kevin Wolf <kwolf@redhat.com>
Fixes: fea68bb6e9fa ("block: Eliminate bdrv_iterate(), use bdrv_next()")
Signed-off-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Link: https://lore.kernel.org/r/20240312120431.550054-1-clg@redhat.com
[peterx: fix "Suggested-by:"]
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 20e6b1565306c9f537225e633c9a9fb67394937a
      
https://github.com/qemu/qemu/commit/20e6b1565306c9f537225e633c9a9fb67394937a
  Author: Steve Sistare <steven.sistare@oracle.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    A docs/devel/migration/CPR.rst
    M docs/devel/migration/features.rst

  Log Message:
  -----------
  migration: cpr-reboot documentation

Signed-off-by: Steve Sistare <steven.sistare@oracle.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
Link: 
https://lore.kernel.org/r/1710338119-330923-1-git-send-email-steven.sistare@oracle.com
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 74228c598f139bd9ce7839794be9a3ccc180fb27
      
https://github.com/qemu/qemu/commit/74228c598f139bd9ce7839794be9a3ccc180fb27
  Author: Fabiano Rosas <farosas@suse.de>
  Date:   2024-03-14 (Thu, 14 Mar 2024)

  Changed paths:
    M migration/fd.c
    M migration/file.c
    M migration/file.h

  Log Message:
  -----------
  migration: Fix iocs leaks during file and fd migration

The memory for the io channels is being leaked in three different ways
during file migration:

1) if the offset check fails we never drop the ioc reference;

2) we allocate an extra channel for no reason;

3) if multifd is enabled but channel creation fails when calling
   dup(), we leave the previous channels around along with the glib
   polling;

Fix all issues by restructuring the code to first allocate the
channels and only register the watches when all channels have been
created.

For multifd, the file and fd migrations can share code because both
are backed by a QIOChannelFile. For the non-multifd case, the fd needs
to be separate because it is backed by a QIOChannelSocket.

Fixes: 2dd7ee7a51 ("migration/multifd: Add incoming QIOChannelFile support")
Fixes: decdc76772 ("migration/multifd: Add mapped-ram support to fd: URI")
Reported-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Link: https://lore.kernel.org/r/20240313212824.16974-2-farosas@suse.de
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 73f6f9a12fb4a3afe01e18690ebd6a6e4283c1a6
      
https://github.com/qemu/qemu/commit/73f6f9a12fb4a3afe01e18690ebd6a6e4283c1a6
  Author: Fabiano Rosas <farosas@suse.de>
  Date:   2024-03-15 (Fri, 15 Mar 2024)

  Changed paths:
    M migration/fd.c
    M migration/file.c
    M migration/migration.c

  Log Message:
  -----------
  migration/multifd: Ensure we're not given a socket for file migration

When doing migration using the fd: URI, QEMU will fetch the file
descriptor passed in via the monitor at
fd_start_outgoing|incoming_migration(), which means the checks at
migration_channels_and_transport_compatible() happen too soon and we
don't know at that point whether the FD refers to a plain file or a
socket.

For this reason, we've been allowing a migration channel of type
SOCKET_ADDRESS_TYPE_FD to pass the initial verifications in scenarios
where the socket migration is not supported, such as with fd + multifd.

The commit decdc76772 ("migration/multifd: Add mapped-ram support to
fd: URI") was supposed to add a second check prior to starting
migration to make sure a socket fd is not passed instead of a file fd,
but failed to do so.

Add the missing verification and update the comment explaining this
situation which is currently incorrect.

Fixes: decdc76772 ("migration/multifd: Add mapped-ram support to fd: URI")
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Peter Xu <peterx@redhat.com>
Link: https://lore.kernel.org/r/20240315032040.7974-2-farosas@suse.de
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: 9adfb308c1513562d6acec02aa780c5ef9b0193d
      
https://github.com/qemu/qemu/commit/9adfb308c1513562d6acec02aa780c5ef9b0193d
  Author: Fabiano Rosas <farosas@suse.de>
  Date:   2024-03-15 (Fri, 15 Mar 2024)

  Changed paths:
    M migration/fd.c

  Log Message:
  -----------
  migration/multifd: Duplicate the fd for the outgoing_args

We currently store the file descriptor used during the main outgoing
channel creation to use it again when creating the multifd
channels.

Since this fd is used for the first iochannel, there's risk that the
QIOChannel gets freed and the fd closed while outgoing_args.fd still
has it available. This could lead to an fd-reuse bug.

Duplicate the outgoing_args fd to avoid this issue.

Suggested-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Peter Xu <peterx@redhat.com>
Link: https://lore.kernel.org/r/20240315032040.7974-3-farosas@suse.de
Signed-off-by: Peter Xu <peterx@redhat.com>


  Commit: ae5a40e8581185654a667fbbf7e4adbc2a2a3e45
      
https://github.com/qemu/qemu/commit/ae5a40e8581185654a667fbbf7e4adbc2a2a3e45
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M block/mirror.c
    M include/qemu/job.h

  Log Message:
  -----------
  mirror: Don't call job_pause_point() under graph lock

Calling job_pause_point() while holding the graph reader lock
potentially results in a deadlock: bdrv_graph_wrlock() first drains
everything, including the mirror job, which pauses it. The job is only
unpaused at the end of the drain section, which is when the graph writer
lock has been successfully taken. However, if the job happens to be
paused at a pause point where it still holds the reader lock, the writer
lock can't be taken as long as the job is still paused.

Mark job_pause_point() as GRAPH_UNLOCKED and fix mirror accordingly.

Cc: qemu-stable@nongnu.org
Buglink: https://issues.redhat.com/browse/RHEL-28125
Fixes: 004915a96a7a ("block: Protect bs->backing with graph_lock")
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20240313153000.33121-1-kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 9c707525cbb1dd1e56876e45c70c0c08f2876d41
      
https://github.com/qemu/qemu/commit/9c707525cbb1dd1e56876e45c70c0c08f2876d41
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  nbd/server: Fix race in draining the export

When draining an NBD export, nbd_drained_begin() first sets
client->quiescing so that nbd_client_receive_next_request() won't start
any new request coroutines. Then nbd_drained_poll() tries to makes sure
that we wait for any existing request coroutines by checking that
client->nb_requests has become 0.

However, there is a small window between creating a new request
coroutine and increasing client->nb_requests. If a coroutine is in this
state, it won't be waited for and drain returns too early.

In the context of switching to a different AioContext, this means that
blk_aio_attached() will see client->recv_coroutine != NULL and fail its
assertion.

Fix this by increasing client->nb_requests immediately when starting the
coroutine. Doing this after the checks if we should create a new
coroutine is okay because client->lock is held.

Cc: qemu-stable@nongnu.org
Fixes: fd6afc501a01 ("nbd/server: Use drained block ops to quiesce the server")
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20240314165825.40261-2-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: e8fce34eccf68a32f4ecf2c6f121ff2ac383d6bf
      
https://github.com/qemu/qemu/commit/e8fce34eccf68a32f4ecf2c6f121ff2ac383d6bf
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    A tests/qemu-iotests/tests/iothreads-nbd-export
    A tests/qemu-iotests/tests/iothreads-nbd-export.out

  Log Message:
  -----------
  iotests: Add test for reset/AioContext switches with NBD exports

This replicates the scenario in which the bug was reported.
Unfortunately this relies on actually executing a guest (so that the
firmware initialises the virtio-blk device and moves it to its
configured iothread), so this can't make use of the qtest accelerator
like most other test cases. I tried to find a different easy way to
trigger the bug, but couldn't find one.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20240314165825.40261-3-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 7fcb8c89f063122864bd274fd673a70a0a802d93
      
https://github.com/qemu/qemu/commit/7fcb8c89f063122864bd274fd673a70a0a802d93
  Author: Markus Armbruster <armbru@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M blockdev.c

  Log Message:
  -----------
  blockdev: Fix blockdev-snapshot-sync error reporting for no medium

When external_snapshot_abort() rejects a BlockDriverState without a
medium, it creates an error like this:

        error_setg(errp, "Device '%s' has no medium", device);

Trouble is @device can be null.  My system formats null as "(null)",
but other systems might crash.  Reproducer:

1. Create a block device without a medium

    -> {"execute": "blockdev-add", "arguments": {"driver": "host_cdrom", 
"node-name": "blk0", "filename": "/dev/sr0"}}
    <- {"return": {}}

3. Attempt to snapshot it

    -> {"execute":"blockdev-snapshot-sync", "arguments": { "node-name": "blk0", 
"snapshot-file":"/tmp/foo.qcow2","format":"qcow2"}}
    <- {"error": {"class": "GenericError", "desc": "Device '(null)' has no 
medium"}}

Broken when commit 0901f67ecdb made @device optional.

Use bdrv_get_device_or_node_name() instead.  Now it fails as it
should:

    <- {"error": {"class": "GenericError", "desc": "Device 'blk0' has no 
medium"}}

Fixes: 0901f67ecdb7 ("qmp: Allow to take external snapshots on bs graphs node.")
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240306142831.2514431-1-armbru@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 52df1a5b613a06273e92e926a242af69f3f39871
      
https://github.com/qemu/qemu/commit/52df1a5b613a06273e92e926a242af69f3f39871
  Author: Abhiram Tilak <atp.exp@gmail.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M block/qapi.c
    M tests/qemu-iotests/176.out
    M tests/qemu-iotests/261
    M tests/qemu-iotests/267.out
    M tests/qemu-iotests/286
    M tests/qemu-iotests/286.out
    M tests/qemu-iotests/tests/qcow2-internal-snapshots.out

  Log Message:
  -----------
  qemu-img: Fix Column Width and Improve Formatting in snapshot list

When running the command `qemu-img snapshot -l SNAPSHOT` the output of
VM_CLOCK (measures the offset between host and VM clock) cannot to
accommodate values in the order of thousands (4-digit).

This line [1] hints on the problem. Additionally, the column width for
the VM_CLOCK field was reduced from 15 to 13 spaces in commit b39847a5
in line [2], resulting in a shortage of space.

[1]:
https://gitlab.com/qemu-project/qemu/-/blob/master/block/qapi.c?ref_type=heads#L753
[2]:
https://gitlab.com/qemu-project/qemu/-/blob/master/block/qapi.c?ref_type=heads#L763

This patch restores the column width to 15 spaces and makes adjustments
to the affected iotests accordingly. Furthermore, addresses a potential
source
of confusion by removing whitespace in column headers. Example, VM CLOCK
is modified to VM_CLOCK. Additionally a '--' symbol is introduced when
ICOUNT returns no output for clarity.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2062
Fixes: b39847a50553 ("migration: introduce icount field for snapshots")
Signed-off-by: Abhiram Tilak <atp.exp@gmail.com>
Message-ID: <20240123050354.22152-2-atp.exp@gmail.com>
[kwolf: Fixed up qemu-iotests 261 and 286]
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 7987a3138acbc899c90c15ebf788753ae06713be
      
https://github.com/qemu/qemu/commit/7987a3138acbc899c90c15ebf788753ae06713be
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/033

  Log Message:
  -----------
  tests/qemu-iotests: Fix test 033 for running with non-file protocols

When running iotest 033 with the ssh protocol, it fails with:

 033   fail       [14:48:31] [14:48:41]   10.2s                output mismatch
 --- /.../tests/qemu-iotests/033.out
 +++ /.../tests/qemu-iotests/scratch/qcow2-ssh-033/033.out.bad
 @@ -174,6 +174,7 @@
  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
  wrote 512/512 bytes at offset 2097152
  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 +qemu-io: warning: Failed to truncate the tail of the image: ssh driver does 
not support shrinking files
  read 512/512 bytes at offset 0
  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)

We already check for the qcow2 format here, so let's simply also
add a check for the protocol here, too, to only test the truncation
with the file protocol.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-2-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 1a74b0151707697470ecacbdbb1c47880b7cf3b1
      
https://github.com/qemu/qemu/commit/1a74b0151707697470ecacbdbb1c47880b7cf3b1
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/066

  Log Message:
  -----------
  tests/qemu-iotests: Restrict test 066 to the 'file' protocol

The hand-crafted json statement in this test only works if the test
is run with the "file" protocol, so mark this test accordingly.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-3-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 70877f21e746e2420727628661a506ce95da4b32
      
https://github.com/qemu/qemu/commit/70877f21e746e2420727628661a506ce95da4b32
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/114

  Log Message:
  -----------
  tests/qemu-iotests: Restrict test 114 to the 'file' protocol

iotest 114 uses "truncate" and the qcow2.py script on the destination file,
which both cannot deal with URIs. Thus this test needs the "file" protocol,
otherwise it fails with an error message like this:

 truncate: cannot open 
'ssh://127.0.0.1/tmp/qemu-build/tests/qemu-iotests/scratch/qcow2-ssh-114/t.qcow2.orig'
  for writing: No such file or directory

Thus mark this test for "file protocol only" accordingly.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-4-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 0988928e92959cf69d441c5bb01d0c22c101f113
      
https://github.com/qemu/qemu/commit/0988928e92959cf69d441c5bb01d0c22c101f113
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/130

  Log Message:
  -----------
  tests/qemu-iotests: Restrict test 130 to the 'file' protocol

Using "-drive ...,backing.file.filename=..." only works with the
file protocol, but not with URIs, so mark this test accordingly.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-5-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 9e39544465dce44467cc33114d4e1d43316f559d
      
https://github.com/qemu/qemu/commit/9e39544465dce44467cc33114d4e1d43316f559d
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/134
    M tests/qemu-iotests/158

  Log Message:
  -----------
  tests/qemu-iotests: Restrict test 134 and 158 to the 'file' protocol

Commit b25b387fa592 updated the iotests 134 and 158 to use the --image-opts
parameter for qemu-io with file protocol related options, but forgot to
update the _supported_proto line accordingly. So let's do that now.

Fixes: b25b387fa5 ("qcow2: convert QCow2 to use QCryptoBlock for encryption")
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-6-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: e7a271bee991ed3db338e1575ba512a1bbe3ef50
      
https://github.com/qemu/qemu/commit/e7a271bee991ed3db338e1575ba512a1bbe3ef50
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/156

  Log Message:
  -----------
  tests/qemu-iotests: Restrict test 156 to the 'file' protocol

The test fails completely when you try to use it with a different
protocol, e.g. with "./check -ssh -qcow2 156".
The test uses some hand-crafted JSON statements which cannot work with other
protocols, thus let's change this test to only support the 'file' protocol.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-7-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 9677061ef1b7c6bef321feb4dc82eb7e5e024bcd
      
https://github.com/qemu/qemu/commit/9677061ef1b7c6bef321feb4dc82eb7e5e024bcd
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/188
    M tests/qemu-iotests/189
    M tests/qemu-iotests/198

  Log Message:
  -----------
  tests/qemu-iotests: Restrict tests that use --image-opts to the 'file' 
protocol

These tests 188, 189 and 198 use qemu-io with --image-opts with additional
hard-coded parameters for the file protocol, so they cannot work for other
protocols. Thus we have to limit these tests to the file protocol only.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-8-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: cff614087dcfa239259dc94dc5101f55bef6f117
      
https://github.com/qemu/qemu/commit/cff614087dcfa239259dc94dc5101f55bef6f117
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/263
    M tests/qemu-iotests/284
    M tests/qemu-iotests/tests/detect-zeroes-registered-buf

  Log Message:
  -----------
  tests/qemu-iotests: Fix some tests that use --image-opts for other protocols

Tests 263, 284 and detect-zeroes-registered-buf use qemu-io
with --image-opts so we have to enforce IMGOPTSSYNTAX=true here
to get $TEST_IMG in shape for other protocols than "file".

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-9-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: a9fdde400aed53248d6d1dea1d6c9dc6102ee4ac
      
https://github.com/qemu/qemu/commit/a9fdde400aed53248d6d1dea1d6c9dc6102ee4ac
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/tests/qcow2-internal-snapshots
    M tests/qemu-iotests/tests/qsd-jobs

  Log Message:
  -----------
  tests/qemu-iotests: Restrict tests using "--blockdev file" to the file 
protocol

Tests that use "--blockdev" with the "file" driver cannot work with
other protocols, so we should mark them accordingly.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20240315111108.153201-10-thuth@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 39a94d7c34ce9d222fa9c0c99a14e20a567456d7
      
https://github.com/qemu/qemu/commit/39a94d7c34ce9d222fa9c0c99a14e20a567456d7
  Author: Fiona Ebner <f.ebner@proxmox.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M tests/qemu-iotests/198.out
    M tests/qemu-iotests/206.out

  Log Message:
  -----------
  iotests: adapt to output change for recently introduced 'detached header' 
field

Failure was noticed when running the tests for the qcow2 image format.

Fixes: 0bd779e27e ("crypto: Introduce 'detached-header' field in 
QCryptoBlockInfoLUKS")
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Message-ID: <20240216101415.293769-1-f.ebner@proxmox.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: c6ea92aab8591ff107051ffae2f86a34475c558c
      
https://github.com/qemu/qemu/commit/c6ea92aab8591ff107051ffae2f86a34475c558c
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    A docs/devel/migration/CPR.rst
    M docs/devel/migration/features.rst
    M include/exec/exec-all.h
    M include/exec/ram_addr.h
    M include/io/channel-file.h
    M io/channel-file.c
    M migration/block.c
    M migration/fd.c
    M migration/file.c
    M migration/file.h
    M migration/migration.c
    M system/physmem.c

  Log Message:
  -----------
  Merge tag 'migration-20240317-pull-request' of https://gitlab.com/peterx/qemu 
into staging

Migration pull for 9.0-rc0

- Nicholas/Phil's fix on migration corruption / inconsistent for tcg
- Cedric's fix on block migration over n_sectors==0
- Steve's CPR reboot documentation page
- Fabiano's misc fixes on mapped-ram (IOC leak, dup() errors, fd checks, fd
  use race, etc.)

# -----BEGIN PGP SIGNATURE-----
#
# iIgEABYKADAWIQS5GE3CDMRX2s990ak7X8zN86vXBgUCZfdZEhIccGV0ZXJ4QHJl
# ZGhhdC5jb20ACgkQO1/MzfOr1wa+1AEA0+f7nCssvsILvCY9KifYO+OUJsLodUuQ
# JW0JBz+1iPMA+wSiyIVl2Xg78Q97nJxv71UJf+1cDJENA5EMmXMnxmYK
# =SLnA
# -----END PGP SIGNATURE-----
# gpg: Signature made Sun 17 Mar 2024 20:56:50 GMT
# gpg:                using EDDSA key B9184DC20CC457DACF7DD1A93B5FCCCDF3ABD706
# gpg:                issuer "peterx@redhat.com"
# gpg: Good signature from "Peter Xu <xzpeter@gmail.com>" [marginal]
# gpg:                 aka "Peter Xu <peterx@redhat.com>" [marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: B918 4DC2 0CC4 57DA CF7D  D1A9 3B5F CCCD F3AB D706

* tag 'migration-20240317-pull-request' of https://gitlab.com/peterx/qemu:
  migration/multifd: Duplicate the fd for the outgoing_args
  migration/multifd: Ensure we're not given a socket for file migration
  migration: Fix iocs leaks during file and fd migration
  migration: cpr-reboot documentation
  migration: Skip only empty block devices
  physmem: Fix migration dirty bitmap coherency with TCG memory access
  physmem: Factor cpu_physical_memory_dirty_bits_cleared() out
  physmem: Expose tlb_reset_dirty_range_all()
  migration: Fix error handling after dup in file migration
  io: Introduce qio_channel_file_new_dupfd

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 4511400fb78e72d4d9916ed60e04f4e99e594f65
      
https://github.com/qemu/qemu/commit/4511400fb78e72d4d9916ed60e04f4e99e594f65
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M block/mirror.c
    M block/qapi.c
    M blockdev.c
    M include/qemu/job.h
    M nbd/server.c
    M tests/qemu-iotests/033
    M tests/qemu-iotests/066
    M tests/qemu-iotests/114
    M tests/qemu-iotests/130
    M tests/qemu-iotests/134
    M tests/qemu-iotests/156
    M tests/qemu-iotests/158
    M tests/qemu-iotests/176.out
    M tests/qemu-iotests/188
    M tests/qemu-iotests/189
    M tests/qemu-iotests/198
    M tests/qemu-iotests/198.out
    M tests/qemu-iotests/206.out
    M tests/qemu-iotests/261
    M tests/qemu-iotests/263
    M tests/qemu-iotests/267.out
    M tests/qemu-iotests/284
    M tests/qemu-iotests/286
    M tests/qemu-iotests/286.out
    M tests/qemu-iotests/tests/detect-zeroes-registered-buf
    A tests/qemu-iotests/tests/iothreads-nbd-export
    A tests/qemu-iotests/tests/iothreads-nbd-export.out
    M tests/qemu-iotests/tests/qcow2-internal-snapshots
    M tests/qemu-iotests/tests/qcow2-internal-snapshots.out
    M tests/qemu-iotests/tests/qsd-jobs

  Log Message:
  -----------
  Merge tag 'for-upstream' of https://repo.or.cz/qemu/kevin into staging

Block layer patches

- mirror: Fix deadlock
- nbd/server: Fix race in draining the export
- qemu-img snapshot: Fix formatting with large values
- Fix blockdev-snapshot-sync error reporting for no medium
- iotests fixes

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmX4OG8RHGt3b2xmQHJl
# ZGhhdC5jb20ACgkQfwmycsiPL9YdiQ//faXfGmbK6rBW4AkpwfrRM8SDHvm6hz7L
# 043ujAi3ziSXXoiec2/RK5wZ27nMJkfIrRHXpH41hgQvC6/3a4eIW6KSTaFV1PdG
# JtHCeopmVmgu7TZQ+kt/J6eLUTTLovoO94HgEfmxpr4CGZfx9RJftf2kCKILcYkh
# 9r04zSZLByVd4FJ5ZrqsFulWif5mXoGKdT/YisY3tKiCwFRWQDOoTymvJA012VtO
# MVmID593zwem3O3qtlGiGlK9qodBR4yof66xa/0gaYP98BZgv+LWnwLKha+OzSpX
# bQlxT26LY4JnSQkTdjF0QYnQiH4Q1kveUcNRZrGpA4iZxVDq1aks5DisThDwqoGG
# rhaPOWyJwJsonM1Enzim5Jd60JqvGdpTLjSA5oSyTjw62lAulnYihInERYSAFyyz
# UhQaO7qSog1//RpPEXEsiVkJBq8BE9l5I+L7+l5SCBhNr/UwZAOer/4m4X6d0SKN
# GEPRx0kH1voikzx7gIQs+Oldqvb0sg+zAvOynBxzpd+Ac6s8bFtWe+eSyWYL/ZGr
# Jg9+PL1xir/Uh7KmOnzt/iVBAmfSRpAo1O72xQXvHFYYtIP7hTkPO/vzqF206WMc
# WQFHHjfp5gVcMZ5AYg6txw+Bbtzu8g0AfB054lgnhihuShpf0E923TTDQFdV755s
# NUlrzuGu2fs=
# =+JIK
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 18 Mar 2024 12:49:51 GMT
# gpg:                using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
# gpg:                issuer "kwolf@redhat.com"
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>" [full]
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6

* tag 'for-upstream' of https://repo.or.cz/qemu/kevin:
  iotests: adapt to output change for recently introduced 'detached header' 
field
  tests/qemu-iotests: Restrict tests using "--blockdev file" to the file 
protocol
  tests/qemu-iotests: Fix some tests that use --image-opts for other protocols
  tests/qemu-iotests: Restrict tests that use --image-opts to the 'file' 
protocol
  tests/qemu-iotests: Restrict test 156 to the 'file' protocol
  tests/qemu-iotests: Restrict test 134 and 158 to the 'file' protocol
  tests/qemu-iotests: Restrict test 130 to the 'file' protocol
  tests/qemu-iotests: Restrict test 114 to the 'file' protocol
  tests/qemu-iotests: Restrict test 066 to the 'file' protocol
  tests/qemu-iotests: Fix test 033 for running with non-file protocols
  qemu-img: Fix Column Width and Improve Formatting in snapshot list
  blockdev: Fix blockdev-snapshot-sync error reporting for no medium
  iotests: Add test for reset/AioContext switches with NBD exports
  nbd/server: Fix race in draining the export
  mirror: Don't call job_pause_point() under graph lock

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/ba49d760eb04...4511400fb78e

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications



reply via email to

[Prev in Thread] Current Thread [Next in Thread]