* [Qemu-devel] [PULL 0/8] Block patches
@ 2010-05-20 13:10 Kevin Wolf
0 siblings, 0 replies; 31+ messages in thread
From: Kevin Wolf @ 2010-05-20 13:10 UTC (permalink / raw)
To: anthony; +Cc: kwolf, qemu-devel
Hi Anthony,
this bunch of patches contains some fixes that I think qualify for stable,
especially the first two. Please cherry-pick them into stable-0.12 when you
have pulled:
468f932 block: fix sector comparism in multiwrite_req_compare
49eb7b7 virtio-blk: fix barrier support
5fdf2a6 block: fix aio_flush segfaults for read-only protocols (e.g. curl)
Kevin
The following changes since commit 5a4bb580cdb10b066f9fd67658b31cac4a4ea5e5:
Richard Henderson (1):
target-sparc: Simplify ICC generation.
are available in the git repository at:
git://repo.or.cz/qemu/kevin.git for-anthony
Avi Kivity (1):
block: fix aio_flush segfaults for read-only protocols (e.g. curl)
Christoph Hellwig (2):
virtio-blk: fix barrier support
block: fix sector comparism in multiwrite_req_compare
Kevin Wolf (1):
vvfat: More build fixes with DEBUG
Nicholas Bellinger (2):
block: Make find_image_format() return 'raw' BlockDriver for SG_IO devices
block: Add SG_IO device check in refresh_total_sectors()
Riccardo Magliocchetti (1):
vvfat: Fix compilation with DEBUG defined
Stefan Hajnoczi (1):
virtio-blk: Avoid zeroing every request structure
aio.c | 4 +++-
block.c | 23 ++++++++++++++++++++++-
block/vvfat.c | 10 +++++++---
hw/virtio-blk.c | 19 ++++++++++++++++---
4 files changed, 48 insertions(+), 8 deletions(-)
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2011-07-06 14:21 Kevin Wolf
2011-07-12 9:14 ` Kevin Wolf
2011-07-12 13:16 ` Anthony Liguori
0 siblings, 2 replies; 31+ messages in thread
From: Kevin Wolf @ 2011-07-06 14:21 UTC (permalink / raw)
To: anthony; +Cc: kwolf, qemu-devel
The following changes since commit 9312805d33e8b106bae356d13a8071fb37d75554:
pxa2xx_lcd: add proper rotation support (2011-07-04 22:12:21 +0200)
are available in the git repository at:
git://repo.or.cz/qemu/kevin.git for-anthony
Federico Simoncelli (1):
qemu-img: Add cache command line option
Johannes Stezenbach (1):
block/raw-posix: Linux compat-ioctl warning workaround
Kevin Wolf (3):
Documentation: Remove outdated host_device note
ide: Ignore reads during PIO in and writes during PIO out
ide: Initialise buffers with zeros
Luiz Capitulino (2):
block: drive_init(): Simplify interface type setting
block: drive_init(): Improve CHS setting error message
Markus Armbruster (1):
virtio-blk: Turn drive serial into a qdev property
block/raw-posix.c | 14 +++++++++
blockdev.c | 14 +++-----
hw/ide/core.c | 50 +++++++++++++++++++++++++-----
hw/s390-virtio-bus.c | 4 ++-
hw/s390-virtio-bus.h | 1 +
hw/virtio-blk.c | 29 ++++++++++++------
hw/virtio-blk.h | 2 +
hw/virtio-pci.c | 4 ++-
hw/virtio-pci.h | 1 +
hw/virtio.h | 3 +-
qemu-img-cmds.hx | 6 ++--
qemu-img.c | 80 +++++++++++++++++++++++++++++++++++++++++--------
qemu-img.texi | 6 ----
13 files changed, 161 insertions(+), 53 deletions(-)
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2011-07-06 14:21 Kevin Wolf
@ 2011-07-12 9:14 ` Kevin Wolf
2011-07-12 13:16 ` Anthony Liguori
1 sibling, 0 replies; 31+ messages in thread
From: Kevin Wolf @ 2011-07-12 9:14 UTC (permalink / raw)
To: Kevin Wolf; +Cc: qemu-devel
Am 06.07.2011 16:21, schrieb Kevin Wolf:
> The following changes since commit 9312805d33e8b106bae356d13a8071fb37d75554:
>
> pxa2xx_lcd: add proper rotation support (2011-07-04 22:12:21 +0200)
>
> are available in the git repository at:
> git://repo.or.cz/qemu/kevin.git for-anthony
>
> Federico Simoncelli (1):
> qemu-img: Add cache command line option
>
> Johannes Stezenbach (1):
> block/raw-posix: Linux compat-ioctl warning workaround
>
> Kevin Wolf (3):
> Documentation: Remove outdated host_device note
> ide: Ignore reads during PIO in and writes during PIO out
> ide: Initialise buffers with zeros
>
> Luiz Capitulino (2):
> block: drive_init(): Simplify interface type setting
> block: drive_init(): Improve CHS setting error message
>
> Markus Armbruster (1):
> virtio-blk: Turn drive serial into a qdev property
>
> block/raw-posix.c | 14 +++++++++
> blockdev.c | 14 +++-----
> hw/ide/core.c | 50 +++++++++++++++++++++++++-----
> hw/s390-virtio-bus.c | 4 ++-
> hw/s390-virtio-bus.h | 1 +
> hw/virtio-blk.c | 29 ++++++++++++------
> hw/virtio-blk.h | 2 +
> hw/virtio-pci.c | 4 ++-
> hw/virtio-pci.h | 1 +
> hw/virtio.h | 3 +-
> qemu-img-cmds.hx | 6 ++--
> qemu-img.c | 80 +++++++++++++++++++++++++++++++++++++++++--------
> qemu-img.texi | 6 ----
> 13 files changed, 161 insertions(+), 53 deletions(-)
Ping?
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2011-07-06 14:21 Kevin Wolf
2011-07-12 9:14 ` Kevin Wolf
@ 2011-07-12 13:16 ` Anthony Liguori
1 sibling, 0 replies; 31+ messages in thread
From: Anthony Liguori @ 2011-07-12 13:16 UTC (permalink / raw)
To: Kevin Wolf; +Cc: qemu-devel
On 07/06/2011 09:21 AM, Kevin Wolf wrote:
> The following changes since commit 9312805d33e8b106bae356d13a8071fb37d75554:
>
> pxa2xx_lcd: add proper rotation support (2011-07-04 22:12:21 +0200)
Pulled. Thanks.
Regards,
Anthony Liguori
>
> are available in the git repository at:
> git://repo.or.cz/qemu/kevin.git for-anthony
>
> Federico Simoncelli (1):
> qemu-img: Add cache command line option
>
> Johannes Stezenbach (1):
> block/raw-posix: Linux compat-ioctl warning workaround
>
> Kevin Wolf (3):
> Documentation: Remove outdated host_device note
> ide: Ignore reads during PIO in and writes during PIO out
> ide: Initialise buffers with zeros
>
> Luiz Capitulino (2):
> block: drive_init(): Simplify interface type setting
> block: drive_init(): Improve CHS setting error message
>
> Markus Armbruster (1):
> virtio-blk: Turn drive serial into a qdev property
>
> block/raw-posix.c | 14 +++++++++
> blockdev.c | 14 +++-----
> hw/ide/core.c | 50 +++++++++++++++++++++++++-----
> hw/s390-virtio-bus.c | 4 ++-
> hw/s390-virtio-bus.h | 1 +
> hw/virtio-blk.c | 29 ++++++++++++------
> hw/virtio-blk.h | 2 +
> hw/virtio-pci.c | 4 ++-
> hw/virtio-pci.h | 1 +
> hw/virtio.h | 3 +-
> qemu-img-cmds.hx | 6 ++--
> qemu-img.c | 80 +++++++++++++++++++++++++++++++++++++++++--------
> qemu-img.texi | 6 ----
> 13 files changed, 161 insertions(+), 53 deletions(-)
>
>
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2013-04-05 13:28 Kevin Wolf
0 siblings, 0 replies; 31+ messages in thread
From: Kevin Wolf @ 2013-04-05 13:28 UTC (permalink / raw)
To: anthony; +Cc: kwolf, qemu-devel
The following changes since commit 162cbbd1736de2bca43fdefa7e98c54a361ee60d:
Merge remote-tracking branch 'luiz/queue/qmp' into staging (2013-04-02 14:07:35 -0500)
are available in the git repository at:
git://repo.or.cz/qemu/kevin.git for-anthony
for you to fetch changes up to 094e751448359417c712ed1395d151c79ccd2538:
qcow2: Fix L1 write error handling in qcow2_update_snapshot_refcount (2013-04-05 13:17:49 +0200)
----------------------------------------------------------------
KONRAD Frederic (1):
virtio-blk-x: fix configuration synchronization.
Kevin Wolf (3):
usb-storage: Forward serial number to scsi-disk
qcow2: Return real error in qcow2_update_snapshot_refcount
qcow2: Fix L1 write error handling in qcow2_update_snapshot_refcount
Stefan Hajnoczi (4):
block: fix I/O throttling accounting blind spot
block: keep I/O throttling slice time constant
block: drop duplicated slice extension code
block: clean up I/O throttling wait_time code
block.c | 49 +++++++++++++++++++++-------------------------
block/qcow2-refcount.c | 25 +++++++++++------------
blockdev.c | 1 -
hw/pci/pci-hotplug.c | 2 +-
hw/s390x/s390-virtio-bus.c | 4 ++--
hw/s390x/s390-virtio-bus.h | 1 -
hw/s390x/virtio-ccw.c | 4 ++--
hw/s390x/virtio-ccw.h | 1 -
hw/scsi-bus.c | 8 ++++++--
hw/scsi.h | 3 ++-
hw/usb/dev-storage.c | 2 +-
hw/virtio-blk.c | 7 -------
hw/virtio-blk.h | 2 --
hw/virtio-pci.c | 7 ++++---
hw/virtio-pci.h | 1 -
include/block/block_int.h | 3 +--
16 files changed, 54 insertions(+), 66 deletions(-)
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2013-07-15 11:16 Kevin Wolf
0 siblings, 0 replies; 31+ messages in thread
From: Kevin Wolf @ 2013-07-15 11:16 UTC (permalink / raw)
To: anthony; +Cc: kwolf, qemu-devel
The following changes since commit c3cb8e77804313e1be99b5f28a34a346736707a5:
ioport: remove LITTLE_ENDIAN mark for portio (2013-07-12 14:37:47 -0500)
are available in the git repository at:
git://repo.or.cz/qemu/kevin.git for-anthony
for you to fetch changes up to a62eaa26c1d6d48fbdc3ac1d32bd1314f5fdc8c9:
ahci: Fix FLUSH command (2013-07-15 11:53:55 +0200)
----------------------------------------------------------------
Kevin Wolf (6):
block: Don't parse protocol from file.filename
qemu-iotests: Update 051 reference output
block: Add return value for bdrv_flush_all()
cpus: Add return value for vm_stop()
migration: Fail migration on bdrv_flush_all() error
ahci: Fix FLUSH command
Stefan Hajnoczi (2):
blockdev: add sync mode to drive-backup QMP command
block: add drive_backup HMP command
block.c | 27 ++++++---
block/sheepdog.c | 2 +-
blockdev.c | 6 ++
cpus.c | 20 ++++---
hmp-commands.hx | 20 +++++++
hmp.c | 28 +++++++++
hmp.h | 1 +
hw/ide/ahci.c | 8 ++-
hw/ide/core.c | 9 +++
hw/ide/internal.h | 1 +
include/block/block.h | 5 +-
include/sysemu/sysemu.h | 4 +-
migration.c | 17 +++++-
qapi-schema.json | 7 ++-
qemu-img.c | 4 +-
qmp-commands.hx | 6 +-
stubs/vm-stop.c | 2 +-
tests/qemu-iotests/051 | 12 ++++
tests/qemu-iotests/051.out | 121 ++++++++++++++++++++++++++++-----------
tests/qemu-iotests/055 | 36 +++++++-----
tests/qemu-iotests/common.filter | 2 +-
21 files changed, 262 insertions(+), 76 deletions(-)
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2013-10-07 11:28 Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 1/8] qcow2: Correct endianness in overlap check Stefan Hajnoczi
` (7 more replies)
0 siblings, 8 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori
The following changes since commit a684f3cf9b9b9c3cb82be87aafc463de8974610c:
Merge remote-tracking branch 'kraxel/seabios-1.7.3.2' into staging (2013-09-30 17:15:27 -0500)
are available in the git repository at:
git://github.com/stefanha/qemu.git block
for you to fetch changes up to d4cea8dfb99153803164915c7a1109549ad3da9c:
block: use correct filename (2013-10-07 13:23:19 +0200)
----------------------------------------------------------------
Dunrong Huang (2):
block: use correct filename for error report
block: use correct filename
Jeff Cody (1):
block: vhdx - add migration blocker
Max Reitz (5):
qcow2: Correct endianness in overlap check
qcow2: CHECK_OFLAG_COPIED is obsolete
qcow2: Switch L1 table in a single sequence
qcow2: Free allocated L2 cluster on error
qemu-iotests: Correct 026 output
block.c | 8 ++++----
block/qcow2-cluster.c | 11 +++++++++--
block/qcow2-refcount.c | 8 +++-----
block/vhdx.c | 10 ++++++++++
tests/qemu-iotests/026.out | 32 ++++++++------------------------
tests/qemu-iotests/026.out.nocache | 32 ++++++++------------------------
6 files changed, 42 insertions(+), 59 deletions(-)
--
1.8.3.1
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 1/8] qcow2: Correct endianness in overlap check
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 2/8] qcow2: CHECK_OFLAG_COPIED is obsolete Stefan Hajnoczi
` (6 subsequent siblings)
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori, Max Reitz
From: Max Reitz <mreitz@redhat.com>
If an inactive L1 table is loaded from disk, its entries are in big
endian and have to be converted to host byte order before using them.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block/qcow2-refcount.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
index d2b7064..364eeba 100644
--- a/block/qcow2-refcount.c
+++ b/block/qcow2-refcount.c
@@ -1733,8 +1733,8 @@ int qcow2_check_metadata_overlap(BlockDriverState *bs, int chk, int64_t offset,
}
for (j = 0; j < l1_sz; j++) {
- if ((l1[j] & L1E_OFFSET_MASK) &&
- overlaps_with(l1[j] & L1E_OFFSET_MASK, s->cluster_size)) {
+ uint64_t l2_ofs = be64_to_cpu(l1[j]) & L1E_OFFSET_MASK;
+ if (l2_ofs && overlaps_with(l2_ofs, s->cluster_size)) {
g_free(l1);
return QCOW2_OL_INACTIVE_L2;
}
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 2/8] qcow2: CHECK_OFLAG_COPIED is obsolete
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 1/8] qcow2: Correct endianness in overlap check Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 3/8] block: use correct filename for error report Stefan Hajnoczi
` (5 subsequent siblings)
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori, Max Reitz
From: Max Reitz <mreitz@redhat.com>
CHECK_OFLAG_COPIED as a parameter to check_refcounts_l1 and
check_refcounts_l2 is obselete now, since the OFLAG_COPIED consistency
check is actually no longer performed by these functions (but by
check_oflag_copied).
Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block/qcow2-refcount.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
index 364eeba..2d67885 100644
--- a/block/qcow2-refcount.c
+++ b/block/qcow2-refcount.c
@@ -1034,7 +1034,6 @@ static void inc_refcounts(BlockDriverState *bs,
/* Flags for check_refcounts_l1() and check_refcounts_l2() */
enum {
- CHECK_OFLAG_COPIED = 0x1, /* check QCOW_OFLAG_COPIED matches refcount */
CHECK_FRAG_INFO = 0x2, /* update BlockFragInfo counters */
};
@@ -1481,8 +1480,7 @@ int qcow2_check_refcounts(BlockDriverState *bs, BdrvCheckResult *res,
/* current L1 table */
ret = check_refcounts_l1(bs, res, refcount_table, nb_clusters,
- s->l1_table_offset, s->l1_size,
- CHECK_OFLAG_COPIED | CHECK_FRAG_INFO);
+ s->l1_table_offset, s->l1_size, CHECK_FRAG_INFO);
if (ret < 0) {
goto fail;
}
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 3/8] block: use correct filename for error report
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 1/8] qcow2: Correct endianness in overlap check Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 2/8] qcow2: CHECK_OFLAG_COPIED is obsolete Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 4/8] block: vhdx - add migration blocker Stefan Hajnoczi
` (4 subsequent siblings)
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Dunrong Huang, Anthony Liguori
From: Dunrong Huang <riegamaths@gmail.com>
The content filename point to will be erased by qemu_opts_absorb_qdict()
in raw_open_common() in drv->bdrv_file_open()
So it's better to use bs->filename.
Signed-off-by: Dunrong Huang <riegamaths@gmail.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block.c b/block.c
index 93e113a..e2d9936 100644
--- a/block.c
+++ b/block.c
@@ -808,8 +808,8 @@ static int bdrv_open_common(BlockDriverState *bs, BlockDriverState *file,
if (ret < 0) {
if (error_is_set(&local_err)) {
error_propagate(errp, local_err);
- } else if (filename) {
- error_setg_errno(errp, -ret, "Could not open '%s'", filename);
+ } else if (bs->filename[0]) {
+ error_setg_errno(errp, -ret, "Could not open '%s'", bs->filename);
} else {
error_setg_errno(errp, -ret, "Could not open image");
}
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 4/8] block: vhdx - add migration blocker
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
` (2 preceding siblings ...)
2013-10-07 11:28 ` [Qemu-devel] [PULL 3/8] block: use correct filename for error report Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 5/8] qcow2: Switch L1 table in a single sequence Stefan Hajnoczi
` (3 subsequent siblings)
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Jeff Cody, Stefan Hajnoczi, Anthony Liguori
From: Jeff Cody <jcody@redhat.com>
This blocks migration for VHDX image files, until the
functionality can be supported.
Signed-off-by: Jeff Cody <jcody@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block/vhdx.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/block/vhdx.c b/block/vhdx.c
index b8aa49c..6cb0412 100644
--- a/block/vhdx.c
+++ b/block/vhdx.c
@@ -20,6 +20,7 @@
#include "qemu/module.h"
#include "qemu/crc32c.h"
#include "block/vhdx.h"
+#include "migration/migration.h"
/* Several metadata and region table data entries are identified by
@@ -159,6 +160,7 @@ typedef struct BDRVVHDXState {
VHDXParentLocatorHeader parent_header;
VHDXParentLocatorEntry *parent_entries;
+ Error *migration_blocker;
} BDRVVHDXState;
uint32_t vhdx_checksum_calc(uint32_t crc, uint8_t *buf, size_t size,
@@ -806,6 +808,12 @@ static int vhdx_open(BlockDriverState *bs, QDict *options, int flags,
/* TODO: differencing files, write */
+ /* Disable migration when VHDX images are used */
+ error_set(&s->migration_blocker,
+ QERR_BLOCK_FORMAT_FEATURE_NOT_SUPPORTED,
+ "vhdx", bs->device_name, "live migration");
+ migrate_add_blocker(s->migration_blocker);
+
return 0;
fail:
qemu_vfree(s->headers[0]);
@@ -952,6 +960,8 @@ static void vhdx_close(BlockDriverState *bs)
qemu_vfree(s->headers[1]);
qemu_vfree(s->bat);
qemu_vfree(s->parent_entries);
+ migrate_del_blocker(s->migration_blocker);
+ error_free(s->migration_blocker);
}
static BlockDriver bdrv_vhdx = {
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 5/8] qcow2: Switch L1 table in a single sequence
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
` (3 preceding siblings ...)
2013-10-07 11:28 ` [Qemu-devel] [PULL 4/8] block: vhdx - add migration blocker Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 6/8] qcow2: Free allocated L2 cluster on error Stefan Hajnoczi
` (2 subsequent siblings)
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori, Max Reitz
From: Max Reitz <mreitz@redhat.com>
Switching the L1 table in memory should be an atomic operation, as far
as possible. Calling qcow2_free_clusters on the old L1 table on disk is
not a good idea when the old L1 table is no longer valid and the address
to the new one hasn't yet been written into the corresponding
BDRVQcowState field. To be more specific, this can lead to segfaults due
to qcow2_check_metadata_overlap trying to access the L1 table during the
free operation.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block/qcow2-cluster.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/block/qcow2-cluster.c b/block/qcow2-cluster.c
index 39323ac..2ed45f0 100644
--- a/block/qcow2-cluster.c
+++ b/block/qcow2-cluster.c
@@ -35,6 +35,7 @@ int qcow2_grow_l1_table(BlockDriverState *bs, uint64_t min_size,
BDRVQcowState *s = bs->opaque;
int new_l1_size2, ret, i;
uint64_t *new_l1_table;
+ int64_t old_l1_table_offset, old_l1_size;
int64_t new_l1_table_offset, new_l1_size;
uint8_t data[12];
@@ -106,11 +107,13 @@ int qcow2_grow_l1_table(BlockDriverState *bs, uint64_t min_size,
goto fail;
}
g_free(s->l1_table);
- qcow2_free_clusters(bs, s->l1_table_offset, s->l1_size * sizeof(uint64_t),
- QCOW2_DISCARD_OTHER);
+ old_l1_table_offset = s->l1_table_offset;
s->l1_table_offset = new_l1_table_offset;
s->l1_table = new_l1_table;
+ old_l1_size = s->l1_size;
s->l1_size = new_l1_size;
+ qcow2_free_clusters(bs, old_l1_table_offset, old_l1_size * sizeof(uint64_t),
+ QCOW2_DISCARD_OTHER);
return 0;
fail:
g_free(new_l1_table);
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 6/8] qcow2: Free allocated L2 cluster on error
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
` (4 preceding siblings ...)
2013-10-07 11:28 ` [Qemu-devel] [PULL 5/8] qcow2: Switch L1 table in a single sequence Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 7/8] qemu-iotests: Correct 026 output Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 8/8] block: use correct filename Stefan Hajnoczi
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori, Max Reitz
From: Max Reitz <mreitz@redhat.com>
If an error occurs in l2_allocate, the allocated (but unused) L2 cluster
should be freed.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Benoit Canet <benoit@irqsave.net>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block/qcow2-cluster.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/block/qcow2-cluster.c b/block/qcow2-cluster.c
index 2ed45f0..0fd26bb 100644
--- a/block/qcow2-cluster.c
+++ b/block/qcow2-cluster.c
@@ -273,6 +273,10 @@ fail:
qcow2_cache_put(bs, s->l2_table_cache, (void**) table);
}
s->l1_table[l1_index] = old_l2_offset;
+ if (l2_offset > 0) {
+ qcow2_free_clusters(bs, l2_offset, s->l2_size * sizeof(uint64_t),
+ QCOW2_DISCARD_ALWAYS);
+ }
return ret;
}
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 7/8] qemu-iotests: Correct 026 output
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
` (5 preceding siblings ...)
2013-10-07 11:28 ` [Qemu-devel] [PULL 6/8] qcow2: Free allocated L2 cluster on error Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 8/8] block: use correct filename Stefan Hajnoczi
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori, Max Reitz
From: Max Reitz <mreitz@redhat.com>
Because l2_allocate now frees the unused L2 cluster on error, the
according test cases in 026 don't result in one leaked cluster anymore.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
tests/qemu-iotests/026.out | 32 ++++++++------------------------
tests/qemu-iotests/026.out.nocache | 32 ++++++++------------------------
2 files changed, 16 insertions(+), 48 deletions(-)
diff --git a/tests/qemu-iotests/026.out b/tests/qemu-iotests/026.out
index 0764389..1504579 100644
--- a/tests/qemu-iotests/026.out
+++ b/tests/qemu-iotests/026.out
@@ -5,16 +5,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 5; imm: off; once: on; write
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 5; imm: off; once: on; write -b
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 5; imm: off; once: off; write
@@ -33,16 +29,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 28; imm: off; once: on; write
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 28; imm: off; once: on; write -b
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 28; imm: off; once: off; write
@@ -181,16 +173,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 5; imm: off; once: on; write
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 5; imm: off; once: on; write -b
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 5; imm: off; once: off; write
@@ -207,16 +195,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 28; imm: off; once: on; write
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 28; imm: off; once: on; write -b
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 28; imm: off; once: off; write
diff --git a/tests/qemu-iotests/026.out.nocache b/tests/qemu-iotests/026.out.nocache
index 33bad0d..c9d242e 100644
--- a/tests/qemu-iotests/026.out.nocache
+++ b/tests/qemu-iotests/026.out.nocache
@@ -5,16 +5,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 5; imm: off; once: on; write
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 5; imm: off; once: on; write -b
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 5; imm: off; once: off; write
@@ -33,16 +29,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 28; imm: off; once: on; write
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 28; imm: off; once: on; write -b
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l1_update; errno: 28; imm: off; once: off; write
@@ -189,16 +181,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 5; imm: off; once: on; write
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 5; imm: off; once: on; write -b
write failed: Input/output error
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 5; imm: off; once: off; write
@@ -215,16 +203,12 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 28; imm: off; once: on; write
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 28; imm: off; once: on; write -b
write failed: No space left on device
-
-1 leaked clusters were found on the image.
-This means waste of disk space, but no harm to data.
+No errors were found on the image.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824
Event: l2_alloc.write; errno: 28; imm: off; once: off; write
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 8/8] block: use correct filename
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
` (6 preceding siblings ...)
2013-10-07 11:28 ` [Qemu-devel] [PULL 7/8] qemu-iotests: Correct 026 output Stefan Hajnoczi
@ 2013-10-07 11:28 ` Stefan Hajnoczi
7 siblings, 0 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2013-10-07 11:28 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Dunrong Huang, Anthony Liguori
From: Dunrong Huang <riegamaths@gmail.com>
The content filename point to may be erased by qemu_opts_absorb_qdict()
in raw_open_common() in drv->bdrv_file_open()
So it's better to use bs->filename.
Signed-off-by: Dunrong Huang <riegamaths@gmail.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
block.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block.c b/block.c
index e2d9936..d7ca37e 100644
--- a/block.c
+++ b/block.c
@@ -824,8 +824,8 @@ static int bdrv_open_common(BlockDriverState *bs, BlockDriverState *file,
#ifndef _WIN32
if (bs->is_temporary) {
- assert(filename != NULL);
- unlink(filename);
+ assert(bs->filename[0] != '\0');
+ unlink(bs->filename);
}
#endif
return 0;
--
1.8.3.1
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2014-01-31 21:19 Stefan Hajnoczi
2014-02-05 16:38 ` Peter Maydell
0 siblings, 1 reply; 31+ messages in thread
From: Stefan Hajnoczi @ 2014-01-31 21:19 UTC (permalink / raw)
To: qemu-devel; +Cc: Peter Maydell, Anthony Liguori
The following changes since commit 89e4a51ca9546a7bbe1998c4e3d4a3ac3a0c19be:
Merge remote-tracking branch 'stefanha/tags/tracing-pull-request' into staging (2014-01-31 11:13:08 +0000)
are available in the git repository at:
git://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 1b7650ef2f63d53cf89af25a9f323323cf2423a7:
qemu-iotests: only run 071 on qcow2 (2014-01-31 22:05:03 +0100)
----------------------------------------------------------------
Block pull request
----------------------------------------------------------------
Daniel P. Berrange (1):
Describe flaws in qcow/qcow2 encryption in the docs
Fam Zheng (1):
qemu-iotests: Drop assert_no_active_commit in case 040
Jeff Cody (2):
block: remove QED .bdrv_make_empty implementation
block: remove qcow2 .bdrv_make_empty implementation
Markus Armbruster (2):
block/vhdx: Error checking fixes
dataplane: Comment fix
Peter Lieven (1):
block/vmdk: add basic .bdrv_check support
Stefan Hajnoczi (1):
qemu-iotests: only run 071 on qcow2
block/qcow2.c | 21 ------------------
block/qed.c | 6 ------
block/vhdx-log.c | 4 ++--
block/vhdx.c | 8 +++----
block/vmdk.c | 48 +++++++++++++++++++++++++++++++++++++++++
hw/block/dataplane/virtio-blk.c | 2 +-
qemu-doc.texi | 23 +++++++++++++++++---
qemu-img.texi | 23 +++++++++++++++++---
tests/qemu-iotests/040 | 28 +++++++++++-------------
tests/qemu-iotests/071 | 2 +-
10 files changed, 108 insertions(+), 57 deletions(-)
--
1.8.5.3
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2014-01-31 21:19 Stefan Hajnoczi
@ 2014-02-05 16:38 ` Peter Maydell
0 siblings, 0 replies; 31+ messages in thread
From: Peter Maydell @ 2014-02-05 16:38 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: QEMU Developers, Anthony Liguori
On 31 January 2014 21:19, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit 89e4a51ca9546a7bbe1998c4e3d4a3ac3a0c19be:
>
> Merge remote-tracking branch 'stefanha/tags/tracing-pull-request' into staging (2014-01-31 11:13:08 +0000)
>
> are available in the git repository at:
>
>
> git://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 1b7650ef2f63d53cf89af25a9f323323cf2423a7:
>
> qemu-iotests: only run 071 on qcow2 (2014-01-31 22:05:03 +0100)
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2016-07-18 16:59 Stefan Hajnoczi
2016-07-19 8:01 ` Peter Maydell
0 siblings, 1 reply; 31+ messages in thread
From: Stefan Hajnoczi @ 2016-07-18 16:59 UTC (permalink / raw)
To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi
The following changes since commit 3913d3707e3debfbf0d2d014a1a793394993b088:
Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.7-20160718' into staging (2016-07-18 11:24:15 +0100)
are available in the git repository at:
git://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to e1029ae26d96d5de78c2d9af5eddcea92e73a46a:
MAINTAINERS: Add include/block/aio.h to block I/O path section (2016-07-18 15:10:52 +0100)
----------------------------------------------------------------
This is not quite a v2 because I have added more patches. "linux-aio: share
one LinuxAioState within an AioContext" is now fixed under mingw.
----------------------------------------------------------------
Cao jin (3):
aio_ctx_check: follow CODING_STYLE
aio-posix: remove useless parameter
virtio-blk: dataplane cleanup
Fam Zheng (1):
MAINTAINERS: Add include/block/aio.h to block I/O path section
Paolo Bonzini (1):
linux-aio: share one LinuxAioState within an AioContext
Roman Pen (1):
linux-aio: prevent submitting more than MAX_EVENTS
Stefan Hajnoczi (1):
checkpatch: consider git extended headers valid patches
Vladimir Sementsov-Ogievskiy (1):
spec/parallels: fix a mistake
MAINTAINERS | 1 +
aio-posix.c | 3 +-
aio-win32.c | 2 +-
async.c | 33 ++++++++---
block/linux-aio.c | 36 +++++++-----
block/raw-aio.h | 68 -----------------------
block/raw-posix.c | 119 +++++-----------------------------------
block/raw-win32.c | 2 +-
block/win32-aio.c | 2 +-
docs/specs/parallels.txt | 2 +-
hw/block/dataplane/virtio-blk.c | 6 +-
include/block/aio.h | 15 ++++-
include/block/raw-aio.h | 68 +++++++++++++++++++++++
scripts/checkpatch.pl | 5 ++
14 files changed, 158 insertions(+), 204 deletions(-)
delete mode 100644 block/raw-aio.h
create mode 100644 include/block/raw-aio.h
--
2.7.4
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2016-07-18 16:59 Stefan Hajnoczi
@ 2016-07-19 8:01 ` Peter Maydell
0 siblings, 0 replies; 31+ messages in thread
From: Peter Maydell @ 2016-07-19 8:01 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: QEMU Developers
On 18 July 2016 at 17:59, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit 3913d3707e3debfbf0d2d014a1a793394993b088:
>
> Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.7-20160718' into staging (2016-07-18 11:24:15 +0100)
>
> are available in the git repository at:
>
> git://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to e1029ae26d96d5de78c2d9af5eddcea92e73a46a:
>
> MAINTAINERS: Add include/block/aio.h to block I/O path section (2016-07-18 15:10:52 +0100)
>
> ----------------------------------------------------------------
>
> This is not quite a v2 because I have added more patches. "linux-aio: share
> one LinuxAioState within an AioContext" is now fixed under mingw.
>
> ----------------------------------------------------------------
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2018-05-12 9:28 Stefan Hajnoczi
2018-05-12 9:42 ` no-reply
` (2 more replies)
0 siblings, 3 replies; 31+ messages in thread
From: Stefan Hajnoczi @ 2018-05-12 9:28 UTC (permalink / raw)
To: qemu-devel; +Cc: qemu-block, Peter Maydell
The following changes since commit e5cd695266c5709308aa95b1baae499e4b5d4544:
Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging (2018-05-08 17:05:58 +0100)
are available in the Git repository at:
git://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 31be8a2a97ecba7d31a82932286489cac318e9e9:
block/file-posix: add x-check-page-cache=on|off option (2018-05-11 16:43:05 +0100)
----------------------------------------------------------------
Block pull request
* Support -drive cache.direct=off live migration for POSIX files
----------------------------------------------------------------
Joe Perches (4):
checkpatch: add a --strict check for utf-8 in commit logs
checkpatch: ignore email headers better
checkpatch: emit a warning on file add/move/delete
checkpatch: reduce MAINTAINERS update message frequency
Pasi Savanainen (1):
checkpatch: check utf-8 content from a commit log when it's missing
from charset
Stefan Hajnoczi (3):
blockjob: drop block_job_pause/resume_all()
block/file-posix: implement bdrv_co_invalidate_cache() on Linux
block/file-posix: add x-check-page-cache=on|off option
qapi/block-core.json | 7 +-
include/block/blockjob_int.h | 14 ----
block/file-posix.c | 146 ++++++++++++++++++++++++++++++++++-
blockjob.c | 27 -------
scripts/checkpatch.pl | 56 +++++++++++++-
5 files changed, 202 insertions(+), 48 deletions(-)
--
2.17.0
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2018-05-12 9:28 Stefan Hajnoczi
@ 2018-05-12 9:42 ` no-reply
2018-05-14 13:15 ` Peter Maydell
2018-05-14 17:53 ` Peter Maydell
2 siblings, 0 replies; 31+ messages in thread
From: no-reply @ 2018-05-12 9:42 UTC (permalink / raw)
To: stefanha; +Cc: famz, qemu-devel, peter.maydell, qemu-block
Hi,
This series seems to have some coding style problems. See output below for
more information:
Type: series
Message-id: 20180512092824.13848-1-stefanha@redhat.com
Subject: [Qemu-devel] [PULL 0/8] Block patches
=== TEST SCRIPT BEGIN ===
#!/bin/bash
BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..."
if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
failed=1
echo
fi
n=$((n+1))
done
exit $failed
=== TEST SCRIPT END ===
Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
* [new tag] patchew/20180512092824.13848-1-stefanha@redhat.com -> patchew/20180512092824.13848-1-stefanha@redhat.com
t [tag update] patchew/cover.1526081108.git.alistair.francis@wdc.com -> patchew/cover.1526081108.git.alistair.francis@wdc.com
Switched to a new branch 'test'
a35067253e block/file-posix: add x-check-page-cache=on|off option
c6c991d81f block/file-posix: implement bdrv_co_invalidate_cache() on Linux
3b9d04939d checkpatch: reduce MAINTAINERS update message frequency
92c27dd7e6 checkpatch: emit a warning on file add/move/delete
82e1381f3f checkpatch: ignore email headers better
63d8deac11 checkpatch: check utf-8 content from a commit log when it's missing from charset
7ecaae4f83 checkpatch: add a --strict check for utf-8 in commit logs
ca525fa2f4 blockjob: drop block_job_pause/resume_all()
=== OUTPUT BEGIN ===
Checking PATCH 1/8: blockjob: drop block_job_pause/resume_all()...
Checking PATCH 2/8: checkpatch: add a --strict check for utf-8 in commit logs...
WARNING: line over 80 characters
#109: FILE: scripts/checkpatch.pl:1420:
+ WARN("8-bit UTF-8 used in possible commit log\n" . $herecurr);
total: 0 errors, 1 warnings, 66 lines checked
Your patch has style problems, please review. If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Checking PATCH 3/8: checkpatch: check utf-8 content from a commit log when it's missing from charset...
Checking PATCH 4/8: checkpatch: ignore email headers better...
Checking PATCH 5/8: checkpatch: emit a warning on file add/move/delete...
WARNING: line over 80 characters
#51: FILE: scripts/checkpatch.pl:1397:
+ ($line =~ /\{\s*([\w\/\.\-]*)\s*\=\>\s*([\w\/\.\-]*)\s*\}/ &&
ERROR: line over 90 characters
#54: FILE: scripts/checkpatch.pl:1400:
+ WARN("added, moved or deleted file(s), does MAINTAINERS need updating?\n" . $herecurr);
total: 1 errors, 1 warnings, 24 lines checked
Your patch has style problems, please review. If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Checking PATCH 6/8: checkpatch: reduce MAINTAINERS update message frequency...
Checking PATCH 7/8: block/file-posix: implement bdrv_co_invalidate_cache() on Linux...
WARNING: architecture specific defines should be avoided
#52: FILE: block/file-posix.c:2255:
+#if defined(__linux__)
total: 0 errors, 1 warnings, 70 lines checked
Your patch has style problems, please review. If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Checking PATCH 8/8: block/file-posix: add x-check-page-cache=on|off option...
WARNING: line over 80 characters
#47: FILE: block/file-posix.c:423:
+ .help = "check that page cache was dropped on live migration (default: off)"
WARNING: architecture specific defines should be avoided
#120: FILE: block/file-posix.c:2264:
+#if defined(__linux__)
total: 0 errors, 2 warnings, 185 lines checked
Your patch has style problems, please review. If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
=== OUTPUT END ===
Test command exited with code: 1
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2018-05-12 9:28 Stefan Hajnoczi
2018-05-12 9:42 ` no-reply
@ 2018-05-14 13:15 ` Peter Maydell
2018-05-14 16:02 ` Peter Maydell
2018-05-14 17:53 ` Peter Maydell
2 siblings, 1 reply; 31+ messages in thread
From: Peter Maydell @ 2018-05-14 13:15 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: QEMU Developers, Qemu-block
On 12 May 2018 at 10:28, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit e5cd695266c5709308aa95b1baae499e4b5d4544:
>
> Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging (2018-05-08 17:05:58 +0100)
>
> are available in the Git repository at:
>
> git://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 31be8a2a97ecba7d31a82932286489cac318e9e9:
>
> block/file-posix: add x-check-page-cache=on|off option (2018-05-11 16:43:05 +0100)
>
> ----------------------------------------------------------------
> Block pull request
>
> * Support -drive cache.direct=off live migration for POSIX files
>
> ----------------------------------------------------------------
With this I get test failures for x86-64 Linux host (debug enabled):
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
gtester -k --verbose -m=quick tests/test-replication
TEST: tests/test-replication... (pid=15016)
/replication/primary/read: OK
/replication/primary/write: OK
/replication/primary/start: OK
/replication/primary/stop: OK
/replication/primary/do_checkpoint: OK
/replication/primary/get_error_all: OK
/replication/secondary/read: **
ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-replication.c:119:test_blk_write:
assertion failed: (async_ret == 0)
FAIL
GTester: last random seed: R02Sf99d81651223b2fcdd0d7d601245eba3
(pid=15131)
/replication/secondary/write: OK
/replication/secondary/start: **
ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-replication.c:119:test_blk_write:
assertion failed: (async_ret == 0)
FAIL
GTester: last random seed: R02S3e753c59c58d385aa2ea07c974c2e384
(pid=15309)
/replication/secondary/stop: **
ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-replication.c:119:test_blk_write:
assertion failed: (async_ret == 0)
FAIL
GTester: last random seed: R02Sb6a8459edfa78efa369da3920846afa7
(pid=15439)
/replication/secondary/do_checkpoint: **
ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-replication.c:119:test_blk_write:
assertion failed: (async_ret == 0)
FAIL
GTester: last random seed: R02S4b2e6aa4e33bba4c5bdea0b9073ee966
(pid=15580)
/replication/secondary/get_error_all: OK
FAIL: tests/test-replication
/home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:892:
recipe for target 'check-tests/test-replication' failed
thanks
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2018-05-14 13:15 ` Peter Maydell
@ 2018-05-14 16:02 ` Peter Maydell
0 siblings, 0 replies; 31+ messages in thread
From: Peter Maydell @ 2018-05-14 16:02 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: QEMU Developers, Qemu-block
On 14 May 2018 at 14:15, Peter Maydell <peter.maydell@linaro.org> wrote:
> On 12 May 2018 at 10:28, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>> The following changes since commit e5cd695266c5709308aa95b1baae499e4b5d4544:
>>
>> Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging (2018-05-08 17:05:58 +0100)
>>
>> are available in the Git repository at:
>>
>> git://github.com/stefanha/qemu.git tags/block-pull-request
>>
>> for you to fetch changes up to 31be8a2a97ecba7d31a82932286489cac318e9e9:
>>
>> block/file-posix: add x-check-page-cache=on|off option (2018-05-11 16:43:05 +0100)
>>
>> ----------------------------------------------------------------
>> Block pull request
>>
>> * Support -drive cache.direct=off live migration for POSIX files
>>
>> ----------------------------------------------------------------
>
> With this I get test failures for x86-64 Linux host (debug enabled):
>
> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> gtester -k --verbose -m=quick tests/test-replication
> TEST: tests/test-replication... (pid=15016)
> /replication/primary/read: OK
> /replication/primary/write: OK
> /replication/primary/start: OK
> /replication/primary/stop: OK
> /replication/primary/do_checkpoint: OK
> /replication/primary/get_error_all: OK
> /replication/secondary/read: **
> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-replication.c:119:test_blk_write:
> assertion failed: (async_ret == 0)
> FAIL
> GTester: last random seed: R02Sf99d81651223b2fcdd0d7d601245eba3
> (pid=15131)
> /replication/secondary/write: OK
> /replication/secondary/start: **
> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-replication.c:119:test_blk_write:
> assertion failed: (async_ret == 0)
> FAIL
Sorry, this is a false alarm -- this test fails in this obscure way if the
system has run out of disk space and the write returns ENOSPC.
Ideally we should fix the test to print the errno. In the meantime I've
deleted some large log files and will retest the pull :-)
thanks
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2018-05-12 9:28 Stefan Hajnoczi
2018-05-12 9:42 ` no-reply
2018-05-14 13:15 ` Peter Maydell
@ 2018-05-14 17:53 ` Peter Maydell
2 siblings, 0 replies; 31+ messages in thread
From: Peter Maydell @ 2018-05-14 17:53 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: QEMU Developers, Qemu-block
On 12 May 2018 at 10:28, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit e5cd695266c5709308aa95b1baae499e4b5d4544:
>
> Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging (2018-05-08 17:05:58 +0100)
>
> are available in the Git repository at:
>
> git://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 31be8a2a97ecba7d31a82932286489cac318e9e9:
>
> block/file-posix: add x-check-page-cache=on|off option (2018-05-11 16:43:05 +0100)
>
> ----------------------------------------------------------------
> Block pull request
>
> * Support -drive cache.direct=off live migration for POSIX files
>
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2019-05-10 13:02 Stefan Hajnoczi
2019-05-10 14:24 ` Peter Maydell
0 siblings, 1 reply; 31+ messages in thread
From: Stefan Hajnoczi @ 2019-05-10 13:02 UTC (permalink / raw)
To: qemu-devel
Cc: Fam Zheng, Peter Maydell, qemu-block, Max Reitz, Stefan Hajnoczi,
Paolo Bonzini, Kevin Wolf
The following changes since commit 812b835fb4d23dd108b2f9802158472d50b73579:
Merge remote-tracking branch 'remotes/maxreitz/tags/pull-block-2019-05-07' into staging (2019-05-09 16:31:12 +0100)
are available in the Git repository at:
https://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to e84125761f78919fe63616d9888ea45e72dc956f:
docs: add Security chapter to the documentation (2019-05-10 10:53:52 +0100)
----------------------------------------------------------------
Pull request
----------------------------------------------------------------
Andrey Shinkevich (1):
block/io.c: fix for the allocation failure
Jules Irenge (3):
util/readline: add a space to fix errors by checkpatch tool
util: readline: replace tab indent by four spaces to fix checkpatch
errors
util/readline: Add braces to fix checkpatch errors
Nikita Alekseev (1):
block: Add coroutine_fn to bdrv_check_co_entry
Paolo Bonzini (1):
aio-posix: ensure poll mode is left when aio_notify is called
Stefan Hajnoczi (2):
docs: add Secure Coding Practices to developer docs
docs: add Security chapter to the documentation
Makefile | 2 +-
block.c | 2 +-
block/io.c | 2 +-
util/aio-posix.c | 12 +-
util/readline.c | 174 ++++++++++++++-----------
docs/devel/index.rst | 1 +
docs/devel/secure-coding-practices.rst | 106 +++++++++++++++
docs/security.texi | 131 +++++++++++++++++++
qemu-doc.texi | 3 +
9 files changed, 347 insertions(+), 86 deletions(-)
create mode 100644 docs/devel/secure-coding-practices.rst
create mode 100644 docs/security.texi
--
2.21.0
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2019-05-10 13:02 Stefan Hajnoczi
@ 2019-05-10 14:24 ` Peter Maydell
0 siblings, 0 replies; 31+ messages in thread
From: Peter Maydell @ 2019-05-10 14:24 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: Fam Zheng, Kevin Wolf, Qemu-block, QEMU Developers, Max Reitz,
Paolo Bonzini
On Fri, 10 May 2019 at 14:02, Stefan Hajnoczi <stefanha@redhat.com> wrote:
>
> The following changes since commit 812b835fb4d23dd108b2f9802158472d50b73579:
>
> Merge remote-tracking branch 'remotes/maxreitz/tags/pull-block-2019-05-07' into staging (2019-05-09 16:31:12 +0100)
>
> are available in the Git repository at:
>
> https://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to e84125761f78919fe63616d9888ea45e72dc956f:
>
> docs: add Security chapter to the documentation (2019-05-10 10:53:52 +0100)
>
> ----------------------------------------------------------------
> Pull request
>
> ----------------------------------------------------------------
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/4.1
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Qemu-devel] [PULL 0/8] Block patches
@ 2019-06-21 13:23 Max Reitz
2019-06-23 17:18 ` Peter Maydell
0 siblings, 1 reply; 31+ messages in thread
From: Max Reitz @ 2019-06-21 13:23 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, Peter Maydell, qemu-devel, Max Reitz
The following changes since commit 33d609990621dea6c7d056c86f707b8811320ac1:
Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2019-06-18 17:00:52 +0100)
are available in the Git repository at:
https://github.com/XanClic/qemu.git tags/pull-block-2019-06-21
for you to fetch changes up to e2a76186f7948b8b75d1b2b52638de7c2f7f7472:
iotests: Fix 205 for concurrent runs (2019-06-21 14:40:28 +0200)
----------------------------------------------------------------
Block patches:
- The SSH block driver now uses libssh instead of libssh2
- The VMDK block driver gets read-only support for the seSparse
subformat
- Various fixes
----------------------------------------------------------------
Anton Nefedov (1):
iotest 134: test cluster-misaligned encrypted write
Klaus Birkelund Jensen (1):
nvme: do not advertise support for unsupported arbitration mechanism
Max Reitz (1):
iotests: Fix 205 for concurrent runs
Pino Toscano (1):
ssh: switch from libssh2 to libssh
Sam Eiderman (3):
vmdk: Fix comment regarding max l1_size coverage
vmdk: Reduce the max bound for L1 table size
vmdk: Add read-only support for seSparse snapshots
Vladimir Sementsov-Ogievskiy (1):
blockdev: enable non-root nodes for transaction drive-backup source
configure | 65 +-
block/Makefile.objs | 6 +-
block/ssh.c | 673 ++++++++++--------
block/vmdk.c | 372 +++++++++-
blockdev.c | 2 +-
hw/block/nvme.c | 1 -
.travis.yml | 4 +-
block/trace-events | 14 +-
docs/qemu-block-drivers.texi | 2 +-
.../dockerfiles/debian-win32-cross.docker | 1 -
.../dockerfiles/debian-win64-cross.docker | 1 -
tests/docker/dockerfiles/fedora.docker | 4 +-
tests/docker/dockerfiles/ubuntu.docker | 2 +-
tests/docker/dockerfiles/ubuntu1804.docker | 2 +-
tests/qemu-iotests/059.out | 2 +-
tests/qemu-iotests/134 | 9 +
tests/qemu-iotests/134.out | 10 +
tests/qemu-iotests/205 | 2 +-
tests/qemu-iotests/207 | 54 +-
tests/qemu-iotests/207.out | 2 +-
20 files changed, 844 insertions(+), 384 deletions(-)
--
2.21.0
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2019-06-21 13:23 [Qemu-devel] [PULL 0/8] Block patches Max Reitz
@ 2019-06-23 17:18 ` Peter Maydell
2019-06-24 12:20 ` Max Reitz
0 siblings, 1 reply; 31+ messages in thread
From: Peter Maydell @ 2019-06-23 17:18 UTC (permalink / raw)
To: Max Reitz; +Cc: Kevin Wolf, QEMU Developers, Qemu-block
On Fri, 21 Jun 2019 at 14:23, Max Reitz <mreitz@redhat.com> wrote:
>
> The following changes since commit 33d609990621dea6c7d056c86f707b8811320ac1:
>
> Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2019-06-18 17:00:52 +0100)
>
> are available in the Git repository at:
>
> https://github.com/XanClic/qemu.git tags/pull-block-2019-06-21
>
> for you to fetch changes up to e2a76186f7948b8b75d1b2b52638de7c2f7f7472:
>
> iotests: Fix 205 for concurrent runs (2019-06-21 14:40:28 +0200)
>
> ----------------------------------------------------------------
> Block patches:
> - The SSH block driver now uses libssh instead of libssh2
> - The VMDK block driver gets read-only support for the seSparse
> subformat
> - Various fixes
>
Hi; this failed to build on my s390 box:
/home/linux1/qemu/block/ssh.c: In function ‘check_host_key_knownhosts’:
/home/linux1/qemu/block/ssh.c:367:27: error: implicit declaration of
function ‘ssh_get_fingerprint_hash’
[-Werror=implicit-function-declaration]
fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
^
/home/linux1/qemu/block/ssh.c:367:13: error: nested extern declaration
of ‘ssh_get_fingerprint_hash’ [-Werror=nested-externs]
fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
^
/home/linux1/qemu/block/ssh.c:367:25: error: assignment makes pointer
from integer without a cast [-Werror=int-conversion]
fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
^
It looks like that function was introduced in libssh 0.8.3, and this box
has 0.6.3. (configure has correctly not defined HAVE_LIBSSH_0_8
but this usage is inside a bit of code that's compiled even when
that is not defined.)
thanks
-- PMM
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2019-06-23 17:18 ` Peter Maydell
@ 2019-06-24 12:20 ` Max Reitz
2019-06-24 13:15 ` Pino Toscano
0 siblings, 1 reply; 31+ messages in thread
From: Max Reitz @ 2019-06-24 12:20 UTC (permalink / raw)
To: Peter Maydell; +Cc: Kevin Wolf, QEMU Developers, Qemu-block, Pino Toscano
[-- Attachment #1.1: Type: text/plain, Size: 2093 bytes --]
On 23.06.19 19:18, Peter Maydell wrote:
> On Fri, 21 Jun 2019 at 14:23, Max Reitz <mreitz@redhat.com> wrote:
>>
>> The following changes since commit 33d609990621dea6c7d056c86f707b8811320ac1:
>>
>> Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2019-06-18 17:00:52 +0100)
>>
>> are available in the Git repository at:
>>
>> https://github.com/XanClic/qemu.git tags/pull-block-2019-06-21
>>
>> for you to fetch changes up to e2a76186f7948b8b75d1b2b52638de7c2f7f7472:
>>
>> iotests: Fix 205 for concurrent runs (2019-06-21 14:40:28 +0200)
>>
>> ----------------------------------------------------------------
>> Block patches:
>> - The SSH block driver now uses libssh instead of libssh2
>> - The VMDK block driver gets read-only support for the seSparse
>> subformat
>> - Various fixes
>>
>
> Hi; this failed to build on my s390 box:
>
> /home/linux1/qemu/block/ssh.c: In function ‘check_host_key_knownhosts’:
> /home/linux1/qemu/block/ssh.c:367:27: error: implicit declaration of
> function ‘ssh_get_fingerprint_hash’
> [-Werror=implicit-function-declaration]
> fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
> ^
> /home/linux1/qemu/block/ssh.c:367:13: error: nested extern declaration
> of ‘ssh_get_fingerprint_hash’ [-Werror=nested-externs]
> fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
> ^
> /home/linux1/qemu/block/ssh.c:367:25: error: assignment makes pointer
> from integer without a cast [-Werror=int-conversion]
> fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
> ^
>
> It looks like that function was introduced in libssh 0.8.3, and this box
> has 0.6.3. (configure has correctly not defined HAVE_LIBSSH_0_8
> but this usage is inside a bit of code that's compiled even when
> that is not defined.)
Pino, would you be OK with dropping that piece of code for pre-0.8 and
just replacing it with the else-error_setg()?
Max
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2019-06-24 12:20 ` Max Reitz
@ 2019-06-24 13:15 ` Pino Toscano
2019-06-24 14:49 ` Max Reitz
0 siblings, 1 reply; 31+ messages in thread
From: Pino Toscano @ 2019-06-24 13:15 UTC (permalink / raw)
To: Max Reitz; +Cc: Kevin Wolf, Peter Maydell, QEMU Developers, Qemu-block
[-- Attachment #1.1: Type: text/plain, Size: 2519 bytes --]
On Monday, 24 June 2019 14:20:11 CEST Max Reitz wrote:
> On 23.06.19 19:18, Peter Maydell wrote:
> > On Fri, 21 Jun 2019 at 14:23, Max Reitz <mreitz@redhat.com> wrote:
> >>
> >> The following changes since commit 33d609990621dea6c7d056c86f707b8811320ac1:
> >>
> >> Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2019-06-18 17:00:52 +0100)
> >>
> >> are available in the Git repository at:
> >>
> >> https://github.com/XanClic/qemu.git tags/pull-block-2019-06-21
> >>
> >> for you to fetch changes up to e2a76186f7948b8b75d1b2b52638de7c2f7f7472:
> >>
> >> iotests: Fix 205 for concurrent runs (2019-06-21 14:40:28 +0200)
> >>
> >> ----------------------------------------------------------------
> >> Block patches:
> >> - The SSH block driver now uses libssh instead of libssh2
> >> - The VMDK block driver gets read-only support for the seSparse
> >> subformat
> >> - Various fixes
> >>
> >
> > Hi; this failed to build on my s390 box:
> >
> > /home/linux1/qemu/block/ssh.c: In function ‘check_host_key_knownhosts’:
> > /home/linux1/qemu/block/ssh.c:367:27: error: implicit declaration of
> > function ‘ssh_get_fingerprint_hash’
> > [-Werror=implicit-function-declaration]
> > fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
> > ^
> > /home/linux1/qemu/block/ssh.c:367:13: error: nested extern declaration
> > of ‘ssh_get_fingerprint_hash’ [-Werror=nested-externs]
> > fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
> > ^
> > /home/linux1/qemu/block/ssh.c:367:25: error: assignment makes pointer
> > from integer without a cast [-Werror=int-conversion]
> > fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
> > ^
> >
> > It looks like that function was introduced in libssh 0.8.3, and this box
> > has 0.6.3. (configure has correctly not defined HAVE_LIBSSH_0_8
> > but this usage is inside a bit of code that's compiled even when
> > that is not defined.)
Oops, sorry, I did not test the latest versions with that old libssh.
> Pino, would you be OK with dropping that piece of code for pre-0.8 and
> just replacing it with the else-error_setg()?
Some the variables in check_host_key_knownhosts must be moved within
the HAVE_LIBSSH_0_8 block now; attached fixup patch, please squash with
my patch (I can submit a v12, if needed/wanted).
--
Pino Toscano
[-- Attachment #1.2: fixup.diff --]
[-- Type: text/x-patch, Size: 2209 bytes --]
diff --git a/block/ssh.c b/block/ssh.c
index 048d0cc924..501933b855 100644
--- a/block/ssh.c
+++ b/block/ssh.c
@@ -277,14 +277,14 @@ static void ssh_parse_filename(const char *filename, QDict *options,
static int check_host_key_knownhosts(BDRVSSHState *s, Error **errp)
{
int ret;
+#ifdef HAVE_LIBSSH_0_8
+ enum ssh_known_hosts_e state;
int r;
ssh_key pubkey;
enum ssh_keytypes_e pubkey_type;
unsigned char *server_hash = NULL;
size_t server_hash_len;
char *fingerprint = NULL;
-#ifdef HAVE_LIBSSH_0_8
- enum ssh_known_hosts_e state;
state = ssh_session_is_known_server(s->session);
trace_ssh_server_status(state);
@@ -356,30 +356,9 @@ static int check_host_key_knownhosts(BDRVSSHState *s, Error **errp)
break;
case SSH_SERVER_KNOWN_CHANGED:
ret = -EINVAL;
- r = ssh_get_publickey(s->session, &pubkey);
- if (r == 0) {
- r = ssh_get_publickey_hash(pubkey, SSH_PUBLICKEY_HASH_SHA1,
- &server_hash, &server_hash_len);
- pubkey_type = ssh_key_type(pubkey);
- ssh_key_free(pubkey);
- }
- if (r == 0) {
- fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
- server_hash,
- server_hash_len);
- ssh_clean_pubkey_hash(&server_hash);
- }
- if (fingerprint) {
- error_setg(errp,
- "host key (%s key with fingerprint %s) does not match "
- "the one in known_hosts; this may be a possible attack",
- ssh_key_type_to_char(pubkey_type), fingerprint);
- ssh_string_free_char(fingerprint);
- } else {
- error_setg(errp,
- "host key does not match the one in known_hosts; this "
- "may be a possible attack");
- }
+ error_setg(errp,
+ "host key does not match the one in known_hosts; this "
+ "may be a possible attack");
goto out;
case SSH_SERVER_FOUND_OTHER:
ret = -EINVAL;
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply related [flat|nested] 31+ messages in thread
* Re: [Qemu-devel] [PULL 0/8] Block patches
2019-06-24 13:15 ` Pino Toscano
@ 2019-06-24 14:49 ` Max Reitz
0 siblings, 0 replies; 31+ messages in thread
From: Max Reitz @ 2019-06-24 14:49 UTC (permalink / raw)
To: Pino Toscano; +Cc: Kevin Wolf, Peter Maydell, QEMU Developers, Qemu-block
[-- Attachment #1.1: Type: text/plain, Size: 2635 bytes --]
On 24.06.19 15:15, Pino Toscano wrote:
> On Monday, 24 June 2019 14:20:11 CEST Max Reitz wrote:
>> On 23.06.19 19:18, Peter Maydell wrote:
>>> On Fri, 21 Jun 2019 at 14:23, Max Reitz <mreitz@redhat.com> wrote:
>>>>
>>>> The following changes since commit 33d609990621dea6c7d056c86f707b8811320ac1:
>>>>
>>>> Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging (2019-06-18 17:00:52 +0100)
>>>>
>>>> are available in the Git repository at:
>>>>
>>>> https://github.com/XanClic/qemu.git tags/pull-block-2019-06-21
>>>>
>>>> for you to fetch changes up to e2a76186f7948b8b75d1b2b52638de7c2f7f7472:
>>>>
>>>> iotests: Fix 205 for concurrent runs (2019-06-21 14:40:28 +0200)
>>>>
>>>> ----------------------------------------------------------------
>>>> Block patches:
>>>> - The SSH block driver now uses libssh instead of libssh2
>>>> - The VMDK block driver gets read-only support for the seSparse
>>>> subformat
>>>> - Various fixes
>>>>
>>>
>>> Hi; this failed to build on my s390 box:
>>>
>>> /home/linux1/qemu/block/ssh.c: In function ‘check_host_key_knownhosts’:
>>> /home/linux1/qemu/block/ssh.c:367:27: error: implicit declaration of
>>> function ‘ssh_get_fingerprint_hash’
>>> [-Werror=implicit-function-declaration]
>>> fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
>>> ^
>>> /home/linux1/qemu/block/ssh.c:367:13: error: nested extern declaration
>>> of ‘ssh_get_fingerprint_hash’ [-Werror=nested-externs]
>>> fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
>>> ^
>>> /home/linux1/qemu/block/ssh.c:367:25: error: assignment makes pointer
>>> from integer without a cast [-Werror=int-conversion]
>>> fingerprint = ssh_get_fingerprint_hash(SSH_PUBLICKEY_HASH_SHA1,
>>> ^
>>>
>>> It looks like that function was introduced in libssh 0.8.3, and this box
>>> has 0.6.3. (configure has correctly not defined HAVE_LIBSSH_0_8
>>> but this usage is inside a bit of code that's compiled even when
>>> that is not defined.)
>
> Oops, sorry, I did not test the latest versions with that old libssh.
>
>> Pino, would you be OK with dropping that piece of code for pre-0.8 and
>> just replacing it with the else-error_setg()?
>
> Some the variables in check_host_key_knownhosts must be moved within
> the HAVE_LIBSSH_0_8 block now; attached fixup patch, please squash with
> my patch (I can submit a v12, if needed/wanted).
Thanks, I’ve squashed it in and sent a v2 for this pull request.
Max
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 31+ messages in thread
end of thread, other threads:[~2019-06-24 14:52 UTC | newest]
Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-07 11:28 [Qemu-devel] [PULL 0/8] Block patches Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 1/8] qcow2: Correct endianness in overlap check Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 2/8] qcow2: CHECK_OFLAG_COPIED is obsolete Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 3/8] block: use correct filename for error report Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 4/8] block: vhdx - add migration blocker Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 5/8] qcow2: Switch L1 table in a single sequence Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 6/8] qcow2: Free allocated L2 cluster on error Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 7/8] qemu-iotests: Correct 026 output Stefan Hajnoczi
2013-10-07 11:28 ` [Qemu-devel] [PULL 8/8] block: use correct filename Stefan Hajnoczi
-- strict thread matches above, loose matches on Subject: below --
2019-06-21 13:23 [Qemu-devel] [PULL 0/8] Block patches Max Reitz
2019-06-23 17:18 ` Peter Maydell
2019-06-24 12:20 ` Max Reitz
2019-06-24 13:15 ` Pino Toscano
2019-06-24 14:49 ` Max Reitz
2019-05-10 13:02 Stefan Hajnoczi
2019-05-10 14:24 ` Peter Maydell
2018-05-12 9:28 Stefan Hajnoczi
2018-05-12 9:42 ` no-reply
2018-05-14 13:15 ` Peter Maydell
2018-05-14 16:02 ` Peter Maydell
2018-05-14 17:53 ` Peter Maydell
2016-07-18 16:59 Stefan Hajnoczi
2016-07-19 8:01 ` Peter Maydell
2014-01-31 21:19 Stefan Hajnoczi
2014-02-05 16:38 ` Peter Maydell
2013-07-15 11:16 Kevin Wolf
2013-04-05 13:28 Kevin Wolf
2011-07-06 14:21 Kevin Wolf
2011-07-12 9:14 ` Kevin Wolf
2011-07-12 13:16 ` Anthony Liguori
2010-05-20 13:10 Kevin Wolf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).