From: Bin Meng
Per SST25VF016B datasheet [1], SST flash requires a dummy byte after
the address bytes. Note only SPI mode is supported by SST flashes.
[1] http://ww1.microchip.com/downloads/en/devicedoc/s71271_04.pdf
Signed-off-by: Bin Meng
Acked-by: Alistair Francis
---
Changes in v2:
-
On 3/5/21 3:48 AM, Kevin Wolf wrote:
> The 'name' option for NBD exports is optional. Add a note that the
> default for the option is the node name (people could otherwise expect
> that it's the empty string like for qemu-nbd).
>
> Signed-off-by: Kevin Wolf
> ---
>
We are going to reuse the script to generate a qcow2_ function in
further commit. Prepare the script now.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
scripts/block-coroutine-wrapper.py | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git
Simple test:
- start writing to allocated cluster A
- discard this cluster
- write to another unallocated cluster B (it's allocated in same place
where A was allocated)
- continue writing to A
For now last action pollutes cluster B which is a bug fixed by the
following commit.
For now,
We are going to implement compressed write cache to improve performance
of compressed backup when target is opened in O_DIRECT mode. We
definitely want to flush the cache at backup finish, and if flush fails
it should be reported as block-job failure, not simply ignored in
bdrv_close(). So, teach
Implement cache for small sequential unaligned writes, so that they may
be cached until we get a complete cluster and then write it.
The cache is intended to be used for backup to qcow2 compressed target
opened in O_DIRECT mode, but can be reused for any similar (even not
block-layer related)
There is a bug in qcow2: host cluster can be discarded (refcount
becomes 0) and reused during data write. In this case data write may
pollute another cluster (recently allocated) or even metadata.
To fix the issue let's track inflight writes to host cluster in the
hash table and consider new
Compressed writes are unaligned to 512, which works very slow in
O_DIRECT mode. Let's use the cache.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
block/coroutines.h | 3 +
block/qcow2.h | 4 ++
block/qcow2-refcount.c | 10 +++
block/qcow2.c | 158
The series inherits "[PATCH 0/7] qcow2: compressed write cache"
(changed a lot, the cache is rewritten), and
"[PATCH v2(RFC) 0/3] qcow2: fix parallel rewrite and "
(the fix solution is taken from v1 instead, as the are problems with v2,
described in cover letter)
Core changes in v3:
- cache is
From: Vladimir Sementsov-Ogievskiy
Signed-off-by: Vladimir Sementsov-Ogievskiy
Message-Id: <20210224104707.88430-5-vsement...@virtuozzo.com>
Reviewed-by: Denis V. Lunev
Signed-off-by: Kevin Wolf
---
block/parallels.h | 6 +-
block/parallels-ext.c | 300
From: Vladimir Sementsov-Ogievskiy
We are going to use it in more places, calculating
"s->tracks << BDRV_SECTOR_BITS" doesn't look good.
Signed-off-by: Vladimir Sementsov-Ogievskiy
Message-Id: <20210224104707.88430-4-vsement...@virtuozzo.com>
Reviewed-by: Denis V. Lunev
Signed-off-by: Kevin
From: Stefan Hajnoczi
Tests that manage multiple processes may wish to kill QEMU before
destroying the QTestState. Expose a function to do that.
The vhost-user-blk-test testcase will need this.
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Wainer dos Santos Moschetta
Message-Id:
From: Vladimir Sementsov-Ogievskiy
Add new parallels-ext.c and myself as co-maintainer.
Signed-off-by: Vladimir Sementsov-Ogievskiy
Message-Id: <20210304095151.19358-1-vsement...@virtuozzo.com>
Reviewed-by: Denis V. Lunev
Signed-off-by: Kevin Wolf
---
MAINTAINERS | 3 +++
1 file changed, 3
From: Stefan Hajnoczi
The config->blk_size field is little-endian. Use the native-endian
blk_size variable to avoid double byteswapping.
Fixes: 11f60f7eaee2630dd6fa0c3a8c49f792e46c4cf1 ("block/export: make
vhost-user-blk config space little-endian")
Signed-off-by: Stefan Hajnoczi
Message-Id:
From: Coiby Xu
This test case has the same tests as tests/virtio-blk-test.c except for
tests have block_resize. Since the vhost-user-blk export only serves one
client one time, two exports are started by qemu-storage-daemon for the
hotplug test.
Suggested-by: Thomas Huth
Signed-off-by: Coiby
The 'name' option for NBD exports is optional. Add a note that the
default for the option is the node name (people could otherwise expect
that it's the empty string like for qemu-nbd).
Signed-off-by: Kevin Wolf
Message-Id: <20210305094856.18964-1-kw...@redhat.com>
Reviewed-by: Max Reitz
From: Max Reitz
When the backup-top node transitions from active to inactive in
bdrv_backup_top_drop(), the BlockCopyState is freed and the filtered
child is removed, so the node effectively becomes unusable.
However, noone told its I/O functions this, so they will happily
continue accessing
From: Stefan Hajnoczi
Use VIRTIO_BLK_SECTOR_BITS and VIRTIO_BLK_SECTOR_SIZE when dealing with
virtio-blk sector numbers. Although the values happen to be the same as
BDRV_SECTOR_BITS and BDRV_SECTOR_SIZE, they are conceptually different.
This makes it clearer when we are dealing with virtio-blk
From: Stefan Hajnoczi
Validate discard/write zeroes the same way we do for virtio-blk. Some of
these checks are mandated by the VIRTIO specification, others are
internal to QEMU.
Signed-off-by: Stefan Hajnoczi
Message-Id: <20210223144653.811468-11-stefa...@redhat.com>
Signed-off-by: Kevin Wolf
From: Vladimir Sementsov-Ogievskiy
Rename bytes_covered_by_bitmap_cluster() to
bdrv_dirty_bitmap_serialization_coverage() and make it public.
It is needed as we are going to share it with bitmap loading in
parallels format.
Signed-off-by: Vladimir Sementsov-Ogievskiy
Reviewed-by: Eric Blake
From: Stefan Hajnoczi
Check that the sector number and byte count are valid.
Signed-off-by: Stefan Hajnoczi
Message-Id: <20210223144653.811468-13-stefa...@redhat.com>
Signed-off-by: Kevin Wolf
---
block/export/vhost-user-blk-server.c | 19 ---
1 file changed, 16
From: Stefan Hajnoczi
Daemons often have a --pidfile option where the pid is written to a file
so that scripts can stop the daemon by sending a signal.
The pid file also acts as a lock to prevent multiple instances of the
daemon from launching for a given pid file.
QEMU, qemu-nbd, qemu-ga,
From: Stefan Hajnoczi
Exercise input validation code paths in
block/export/vhost-user-blk-server.c.
Signed-off-by: Stefan Hajnoczi
Message-Id: <20210223144653.811468-12-stefa...@redhat.com>
Signed-off-by: Kevin Wolf
---
tests/qtest/vhost-user-blk-test.c | 124 ++
From: Paolo Bonzini
If the first character of optstring is '-', then each nonoption argv
element is handled as if it were the argument of an option with character
code 1. This removes the reordering of the argv array, and enables usage
of loc_set_cmdline to provide better error messages.
From: Max Reitz
Without any of HEAD^ or HEAD^^ applied, qemu will most likely crash on
the qemu-io invocation, for a variety of immediate reasons. The
underlying problem is generally a use-after-free access into
backup-top's BlockCopyState.
With only HEAD^ applied, qemu-io will run into an EIO
From: Stefan Hajnoczi
World-writeable directories have security issues. Avoid showing them in
the documentation since someone might accidentally use them in
situations where they are insecure.
There tend to be 3 security problems:
1. Denial of service. An adversary may be able to create the
From: Vladimir Sementsov-Ogievskiy
Signed-off-by: Vladimir Sementsov-Ogievskiy
Message-Id: <20210224104707.88430-6-vsement...@virtuozzo.com>
Reviewed-by: Denis V. Lunev
Signed-off-by: Kevin Wolf
---
tests/qemu-iotests/iotests.py | 10 ++
1 file changed, 10 insertions(+)
diff --git
From: Max Reitz
The block job holds a reference to the backup-top node (because it is
passed as the main job BDS to block_job_create()). Therefore,
bdrv_backup_top_drop() cannot delete the backup-top node (replacing it
by its child does not affect the job parent, because that has
.stay_at_node
From: Vladimir Sementsov-Ogievskiy
Actually L1 table entry offset is in 512 bytes sectors. Fix the spec.
Signed-off-by: Vladimir Sementsov-Ogievskiy
Message-Id: <20210224104707.88430-3-vsement...@virtuozzo.com>
Reviewed-by: Denis V. Lunev
Signed-off-by: Kevin Wolf
---
From: Stefan Hajnoczi
Signed-off-by: Stefan Hajnoczi
Message-Id: <20210223144653.811468-7-stefa...@redhat.com>
Signed-off-by: Kevin Wolf
---
tests/qtest/vhost-user-blk-test.c | 81 +--
1 file changed, 76 insertions(+), 5 deletions(-)
diff --git
From: Vladimir Sementsov-Ogievskiy
Test support for reading bitmap from parallels image format.
parallels-with-bitmap.bz2 is generated on Virtuozzo by
parallels-with-bitmap.sh
Signed-off-by: Vladimir Sementsov-Ogievskiy
Message-Id: <20210224104707.88430-7-vsement...@virtuozzo.com>
Reviewed-by:
From: Stefan Hajnoczi
Treat the num_queues field as virtio-endian. On big-endian hosts the
vhost-user-blk num_queues field was in the wrong endianness.
Move the blkcfg.num_queues store operation from realize to
vhost_user_blk_update_config() so feature negotiation has finished and
we know the
From: Paolo Bonzini
Use the location management facilities that the emulator uses, so that
the current command line option appears in the error message.
Before:
$ storage-daemon/qemu-storage-daemon --nbd key..=
qemu-storage-daemon: Invalid parameter 'key..'
After:
$
From: Stefan Hajnoczi
Add a function to remove previously-added abrt handler functions.
Now that a symmetric pair of add/remove functions exists we can also
balance the SIGABRT handler installation. The signal handler was
installed each time qtest_add_abrt_handler() was called. Now it is
From: Stefano Garzarella
When a block job fails, we report strerror(-job->job.ret) error
message, also if the job set an error object.
Let's report a better error message using error_get_pretty(job->job.err).
If an error object was not set, strerror(-job->ret) is used as fallback,
as explained
From: Stefan Hajnoczi
The driver is supposed to honor the blk_size field but the protocol
still uses 512-byte sector numbers. It is incorrect to multiply
req->sector_num by blk_size.
VIRTIO 1.1 5.2.5 Device Initialization says:
blk_size can be read to determine the optimal sector size for
The following changes since commit 9a7beaad3dbba982f7a461d676b55a5c3851d312:
Merge remote-tracking branch
'remotes/alistair/tags/pull-riscv-to-apply-20210304' into staging (2021-03-05
10:47:46 +)
are available in the Git repository at:
git://repo.or.cz/qemu/kevin.git tags/for-upstream
From: Eric Blake
Break some long lines, and relax our type hints to be more generic to
any JSON, in order to more easily permit the additional JSON depth now
possible in migration parameters. Detected by iotest 297.
Fixes: ca4bfec41d56
(qemu-iotests: 300: Add test case for modifying
From: Stefan Hajnoczi
The QMP monitor, NBD server, and vhost-user-blk export all support file
descriptor passing. This is a useful technique because it allows the
parent process to spawn and wait for qemu-storage-daemon without busy
waiting, which may delay startup due to arbitrary sleep()
From: Stefan Hajnoczi
Add an API that returns a new UNIX domain socket in the listen state.
The code for this was already there but only used internally in
init_socket().
This new API will be used by vhost-user-blk-test.
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Thomas Huth
Reviewed-by:
From: Alberto Garcia
Signed-off-by: Alberto Garcia
Message-Id: <20210222115737.2993-1-be...@igalia.com>
Signed-off-by: Kevin Wolf
---
tests/qemu-iotests/087 | 8 ++--
tests/qemu-iotests/184 | 18 ++
tests/qemu-iotests/218 | 2 +-
tests/qemu-iotests/235 |
On 3/5/21 11:50 AM, Vladimir Sementsov-Ogievskiy wrote:
05.03.2021 19:30, John Snow wrote:
On 3/5/21 4:11 AM, Vladimir Sementsov-Ogievskiy wrote:
05.03.2021 04:30, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
It probably may improve reliability of results when
On 3/4/21 10:08 PM, Like Xu wrote:
Hi John,
Thanks for your comment.
On 2021/3/5 7:53, John Snow wrote:
On 2/28/21 9:39 PM, Like Xu wrote:
Hi Genius,
I am a user of QEMU v4.2.0 and stuck in an interesting bug, which may
still exist in the mainline.
Thanks in advance to heroes who can take
05.03.2021 19:30, John Snow wrote:
On 3/5/21 4:11 AM, Vladimir Sementsov-Ogievskiy wrote:
05.03.2021 04:30, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
It probably may improve reliability of results when testing in cached
mode.
Signed-off-by: Vladimir
On 3/5/21 4:11 AM, Vladimir Sementsov-Ogievskiy wrote:
05.03.2021 04:30, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
It probably may improve reliability of results when testing in cached
mode.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
On 3/5/21 4:03 AM, Vladimir Sementsov-Ogievskiy wrote:
05.03.2021 04:22, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
Sometimes one of cells in a testing table runs too slow. And we really
don't want to wait so long. Limit number of runs in this case.
Signed-off-by:
Some error messages contain ambiguous representations of the 'node-name'
parameter. This can be particularly confusing when exchanging QMP
messages (C = client, S = server):
C: {"execute": "block_resize", "arguments": { "device": "my_file", "size":
26843545600 }}
S: {"error": {"class":
Signed-off-by: Connor Kuehl
---
blockdev.c | 13 +++--
tests/qemu-iotests/245 | 6 +++---
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/blockdev.c b/blockdev.c
index cd438e60e3..7c7ab2b386 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -1515,13 +1515,13 @@
v2:
- Moved summary into patch #1
- Updated test cases that were missed in v1 from running 'make check'.
This time I used 'make check-block SPEED=thorough' and some more
grepping to make sure I didn't miss any.
- Rebased
Connor Kuehl (2):
block: Clarify error messages pertaining
On 05.03.21 10:48, Kevin Wolf wrote:
The 'name' option for NBD exports is optional. Add a note that the
default for the option is the node name (people could otherwise expect
that it's the empty string like for qemu-nbd).
Signed-off-by: Kevin Wolf
---
docs/tools/qemu-storage-daemon.rst | 5
05.03.2021 16:41, Markus Armbruster wrote:
Vladimir Sementsov-Ogievskiy writes:
02.03.2021 16:53, Markus Armbruster wrote:
Andrey Shinkevich via writes:
When CHR_EVENT_CLOSED comes, the QMP requests queue may still contain
unprocessed commands. It can happen with QMP capability OOB
Vladimir Sementsov-Ogievskiy writes:
> 02.03.2021 16:53, Markus Armbruster wrote:
>> Andrey Shinkevich via writes:
>>
>>> When CHR_EVENT_CLOSED comes, the QMP requests queue may still contain
>>> unprocessed commands. It can happen with QMP capability OOB enabled.
>>> Let the dispatcher
Patchew URL:
https://patchew.org/QEMU/20210305121748.65173-1-akihiko.od...@gmail.com/
Hi,
This series seems to have some coding style problems. See output below for
more information:
Type: series
Message-id: 20210305121748.65173-1-akihiko.od...@gmail.com
Subject: [PATCH v2] block/file-posix:
This commit introduces "punch hole" operation and optimizes transfer
block size for macOS.
This commit introduces two additional members,
discard_granularity and opt_io to BlockSizes type in
include/block/block.h. Also, the members of the type are now
optional. Set -1 to discard_granularity and 0
The 'name' option for NBD exports is optional. Add a note that the
default for the option is the node name (people could otherwise expect
that it's the empty string like for qemu-nbd).
Signed-off-by: Kevin Wolf
---
docs/tools/qemu-storage-daemon.rst | 5 +++--
1 file changed, 3 insertions(+), 2
On 3/4/21 3:02 PM, Markus Armbruster wrote:
> Almost all QOM type names consist only of letters, digits, '-', '_',
> and '.'. Just two contain ':': "qemu:memory-region" and
> "qemu:iommu-memory-region". Neither can be plugged with -object.
> Rename them to "memory-region" and
On Fri, Mar 05, 2021 at 10:16:41AM +0100, Kevin Wolf wrote:
Am 04.03.2021 um 18:32 hat Stefano Garzarella geschrieben:
On Thu, Mar 04, 2021 at 03:59:17PM +0100, Kevin Wolf wrote:
> Am 04.03.2021 um 15:08 hat Stefano Garzarella geschrieben:
> > On Thu, Mar 04, 2021 at 01:05:02PM +0100, Kevin
Am 04.03.2021 um 18:32 hat Stefano Garzarella geschrieben:
> On Thu, Mar 04, 2021 at 03:59:17PM +0100, Kevin Wolf wrote:
> > Am 04.03.2021 um 15:08 hat Stefano Garzarella geschrieben:
> > > On Thu, Mar 04, 2021 at 01:05:02PM +0100, Kevin Wolf wrote:
> > > > Am 03.03.2021 um 18:40 hat Stefano
05.03.2021 04:22, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
Sometimes one of cells in a testing table runs too slow. And we really
don't want to wait so long. Limit number of runs in this case.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
05.03.2021 04:30, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
It probably may improve reliability of results when testing in cached
mode.
Signed-off-by: Vladimir Sementsov-Ogievskiy
---
scripts/simplebench/bench_block_job.py | 2 ++
1 file changed, 2
05.03.2021 04:37, John Snow wrote:
On 3/4/21 5:17 AM, Vladimir Sementsov-Ogievskiy wrote:
Add arguments to set number of test runs per table cell and to disable
initial run that is not counted in results.
It's convenient to set --count 1 --no-initial-run to fast run test
onece, and to set
Markus Armbruster writes:
> Daniel P. Berrangé writes:
>
>> On Thu, Mar 04, 2021 at 11:00:57AM +0100, Markus Armbruster wrote:
>>> Drop the crap deprecated in commit 4a27a638e7 "fdc: Deprecate
>>> configuring floppies with -global isa-fdc" (v5.1.0).
>>>
>>> Signed-off-by: Markus Armbruster
62 matches
Mail list logo