On 07/13/2017 07:41 AM, Kevin Wolf wrote:
> Since 2.9 it is possible for a user to care only about nodes and qdev devices,
> but not about BlockBackends, by defining with -blockdev and using their node
> name in -device. Devices create an anonymous BlockBackend internally then.
>
> One of the
On 07/13/2017 11:31 AM, Marc-André Lureau wrote:
> I used the clang-tidy qemu-round check to generate the fix:
> https://github.com/elmarco/clang-tools-extra
>
> Signed-off-by: Marc-André Lureau
> ---
> block/qcow2-cluster.c | 2 +-
> 1 file changed, 1 insertion(+),
On 07/13/2017 11:31 AM, Marc-André Lureau wrote:
> I used the clang-tidy qemu-round check to generate the fix:
> https://github.com/elmarco/clang-tools-extra
>
> Signed-off-by: Marc-André Lureau
> ---
> block/vpc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2
On 07/13/2017 11:32 AM, Marc-André Lureau wrote:
> I used the clang-tidy qemu-round check to generate the fix:
> https://github.com/elmarco/clang-tools-extra
>
> Signed-off-by: Marc-André Lureau
> ---
> block/vvfat.c | 4 ++--
> 1 file changed, 2 insertions(+), 2
On 07/13/2017 11:31 AM, Marc-André Lureau wrote:
> I used the clang-tidy qemu-round check to generate the fix:
> https://github.com/elmarco/clang-tools-extra
>
> Signed-off-by: Marc-André Lureau
> ---
> block/vhdx-log.c | 2 +-
> 1 file changed, 1 insertion(+), 1
On 07/12/2017 09:05 PM, Eric Blake wrote:
> This is new code, but it is easier to read if it makes passes over
> the image using bytes rather than sectors (and will get easier in
> the future when bdrv_get_block_status is converted to byte-based).
>
> While at it, fix a bug in the computation
On 07/12/2017 09:05 PM, Eric Blake wrote:
> Now that we have adjusted the majority of the calls this function
> makes to be byte-based, it is easier to read the code if it makes
> passes over the image using bytes rather than sectors.
>
> Signed-off-by: Eric Blake
>
Looks
On 07/12/2017 09:05 PM, Eric Blake wrote:
> We are still using an internal hbitmap that tracks a size in sectors,
> with the granularity scaled down accordingly, because it lets us
> use a shortcut for our iterators which are currently sector-based.
> But there's no reason we can't track the
On 13.07.2017 17:36, Max Reitz wrote:
On 2017-07-13 10:41, Kevin Wolf wrote:
Am 12.07.2017 um 18:58 hat Max Reitz geschrieben:
On 2017-07-12 16:52, Kevin Wolf wrote:
Am 12.07.2017 um 13:46 hat Pavel Butsykin geschrieben:
This patch add shrinking of the image file for qcow2. As a result, this
On 13.07.2017 11:41, Kevin Wolf wrote:
Am 12.07.2017 um 18:58 hat Max Reitz geschrieben:
On 2017-07-12 16:52, Kevin Wolf wrote:
Am 12.07.2017 um 13:46 hat Pavel Butsykin geschrieben:
This patch add shrinking of the image file for qcow2. As a result, this allows
us to reduce the virtual image
On 12.07.2017 17:45, Kevin Wolf wrote:
Am 12.07.2017 um 13:46 hat Pavel Butsykin geschrieben:
Whenever l2/refcount table clusters are discarded from the file we can
automatically drop unnecessary content of the cache tables. This reduces
the chance of eviction useful cache data and eliminates
I used the clang-tidy qemu-round check to generate the fix:
https://github.com/elmarco/clang-tools-extra
Signed-off-by: Marc-André Lureau
---
block/qcow2-cluster.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/block/qcow2-cluster.c
I used the clang-tidy qemu-round check to generate the fix:
https://github.com/elmarco/clang-tools-extra
Signed-off-by: Marc-André Lureau
---
block/vvfat.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/vvfat.c b/block/vvfat.c
index
I used the clang-tidy qemu-round check to generate the fix:
https://github.com/elmarco/clang-tools-extra
Signed-off-by: Marc-André Lureau
---
block/vpc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/vpc.c b/block/vpc.c
index
I used the clang-tidy qemu-round check to generate the fix:
https://github.com/elmarco/clang-tools-extra
Signed-off-by: Marc-André Lureau
Reviewed-by: Stefan Hajnoczi
---
block/dmg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff
I used the clang-tidy qemu-round check to generate the fix:
https://github.com/elmarco/clang-tools-extra
Signed-off-by: Marc-André Lureau
---
block/vhdx-log.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/block/vhdx-log.c b/block/vhdx-log.c
Now that bdrv_is_allocated accepts non-aligned inputs, we can
remove the TODO added in commit d6a644bb.
Signed-off-by: Eric Blake
---
v3: new patch [Kevin]
---
block/io.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/block/io.c b/block/io.c
Continue on the quest to make more things byte-based instead of
sector-based.
Signed-off-by: Eric Blake
---
v3: new patch
---
qemu-img.c | 27 +++
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/qemu-img.c b/qemu-img.c
index
Any device that has request_alignment greater than 512 should be
unable to report status at a finer granularity; it may also be
simpler for such devices to be guaranteed that the block layer
has rounded things out to the granularity boundary (the way the
block layer already rounds all other I/O
In the continuing quest to make more things byte-based, change
the internal iteration of img_compare(). We can finally drop the
TODO assertion added earlier, now that the entire algorithm is
byte-based and no longer has to shift from bytes to sectors.
Most of the change is mechanical
In the continuing quest to make more things byte-based, change
compare_sectors(), renaming it to compare_buffers() in the
process. Note that one caller (qemu-img compare) only cares
about the first difference, while the other (qemu-img rebase)
cares about how many consecutive sectors have the
Compare the following images with all-zero contents:
$ truncate --size 1M A
$ qemu-img create -f qcow2 -o preallocation=off B 1G
$ qemu-img create -f qcow2 -o preallocation=metadata C 1G
On my machine, the difference is noticeable for pre-patch speeds,
with more than an order of magnitude in
We are gradually moving away from sector-based interfaces, towards
byte-based. In the common case, allocation is unlikely to ever use
values that are not naturally sector-aligned, but it is possible
that byte-based values will let us be more precise about allocation
at the end of an unaligned
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Convert another internal
type (no semantic change), and rename it to match the corresponding
public function rename.
Signed-off-by: Eric Blake
Reviewed-by: Fam Zheng
During 'qemu-img compare', when we are checking that an allocated
portion of one file is all zeros, we don't need to waste time
computing how many additional sectors after the first non-zero
byte are also non-zero. Create a new helper find_nonzero() to do
the check for a first non-zero sector,
In the continuing quest to make more things byte-based, change
the internal iteration of img_rebase(). We can finally drop the
TODO assertion added earlier, now that the entire algorithm is
byte-based and no longer has to shift from bytes to sectors.
Most of the change is mechanical
Previously, the alloc command required that input parameters be
sector-aligned and clamped to 32 bits, because the underlying
bdrv_is_allocated used a 32-bit parameter and asserted aligned
inputs. But now that we have fixed block status to report a
64-bit bytes value, and to properly round
If a read error is encountered during 'qemu-img compare', we
were printing the "Error while reading offset ..." message twice.
Update the testsuite for the improved output.
Further simplify the code by hoisting the error code conversion
into the helper function, rather than repeating it at the
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Convert another internal
function (no semantic change); and as with its public counterpart,
rename to bdrv_co_block_status() to make the compiler enforce that
we catch all uses. For now,
We are gradually moving away from sector-based interfaces, towards
byte-based. In the common case, allocation is unlikely to ever use
values that are not naturally sector-aligned, but it is possible
that byte-based values will let us be more precise about allocation
at the end of an unaligned
As long as we are querying the status for a chunk smaller than
the known image size, we are guaranteed that a successful return
will have set pnum to a non-zero size (pnum is zero only for
queries beyond the end of the file). Use that to slightly
simplify the calculation of the current chunk size
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Convert another internal
function (no semantic change).
Signed-off-by: Eric Blake
Reviewed-by: Fam Zheng
---
v3: rebase to allocation/mapping sense
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Convert another internal
type (no semantic change), and rename it to match the corresponding
public function rename.
Signed-off-by: Eric Blake
Reviewed-by: Fam Zheng
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Convert another internal
function (no semantic change), and rename it to is_zero() in the
process.
Signed-off-by: Eric Blake
Reviewed-by: Fam Zheng
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Change the internal
loop iteration of zeroing a device to track by bytes instead of
sectors (although we are still guaranteed that we iterate by steps
that are sector-aligned).
Not all callers care about which BDS owns the mapping for a given
range of the file. This patch merely simplifies the callers by
consolidating the logic in the common call point, while guaranteeing
a non-NULL file to all the driver callbacks, for no semantic change.
The only caller that does not
We are gradually converting to byte-based interfaces, as they are
easier to reason about than sector-based. Continue by converting
an internal function (no semantic change), and simplifying its
caller accordingly.
Signed-off-by: Eric Blake
Reviewed-by: Fam Zheng
There are patches floating around to add NBD_CMD_BLOCK_STATUS,
but NBD wants to report status on byte granularity (even if the
reporting will probably be naturally aligned to sectors or even
much higher levels). I've therefore started the task of
converting our block status code to report at a
Not all callers care about which BDS owns the mapping for a given
range of the file. In particular, bdrv_is_allocated() cares more
about finding the largest run of allocated data from the guest
perspective, whether or not that data is consecutive from the
host perspective. Therefore, doing
In the process of converting sector-based interfaces to bytes,
I'm finding it easier to represent a byte count as a 64-bit
integer at the block layer (even if we are internally capped
by SIZE_MAX or even INT_MAX for individual transactions, it's
still nicer to not have to worry about
Now that bdrv_truncate is passed to bs->file by default, remove the
callback from block/blkdebug.c and set is_filter to true. is_filter also gives
access to other callbacks that are forwarded automatically to bs->file for
filters.
Reviewed-by: Eric Blake
Reviewed-by: Stefan
This function is not used anywhere, so remove it.
Markus Armbruster adds:
The i82078 floppy device model used to call bdrv_media_changed() to
implement its media change bit when backed by a host floppy. This
went away in 21fcf36 "fdc: simplify media change handling".
Probably broke host floppy
On 07/13/2017 10:13 AM, Peter Lieven wrote:
>>
>>> I currently have the following:
>>>
>>>options = qemu_opts_to_qdict(opts, NULL);
>>>qdict_extract_subqdict(options, , "compress.");
Can you show your .json patches as well?
> Yes, but
bdrv_co_get_block_status_from_file() and
bdrv_co_get_block_status_from_backing() set *file to bs->file and
bs->backing respectively, so that bdrv_co_get_block_status() can recurse
to them. Future block drivers won't have to duplicate code to implement
this.
Reviewed-by: Fam Zheng
This series makes implementing some of the bdrv_* callbacks easier for block
filters by passing requests to bs->file if bs->drv doesn't implement it instead
of failing, and adding default bdrv_co_get_block_status() implementations.
This is based against commit ced1484322 of
The following functions fail if bs->drv is a filter and does not
implement them:
bdrv_probe_blocksizes
bdrv_probe_geometry
bdrv_truncate
bdrv_has_zero_init
bdrv_get_info
Instead, the call should be passed to bs->file if it exists, to allow
filter drivers to support those methods without
On Thu, Jul 13, 2017 at 05:13:23PM +0200, Peter Lieven wrote:
> Am 13.07.2017 um 17:06 schrieb Daniel P. Berrange:
> > On Thu, Jul 13, 2017 at 05:02:51PM +0200, Peter Lieven wrote:
> > > Am 13.07.2017 um 17:01 schrieb Daniel P. Berrange:
> > > > On Thu, Jul 13, 2017 at 05:00:39PM +0200, Peter
Am 13.07.2017 um 17:17 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 05:13:23PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 17:06 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 05:02:51PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 17:01 schrieb Daniel P. Berrange:
On Thu, Jul 13,
On 13/07/2017 16:35, Eric Blake wrote:
> On 07/13/2017 07:31 AM, Vladimir Sementsov-Ogievskiy wrote:
>> 13.07.2017 15:09, Vladimir Sementsov-Ogievskiy wrote:
>>> 07.07.2017 23:30, Eric Blake wrote:
The NBD Protocol is introducing some additional information
about exports, such as minimum
On 07/07/2017 03:30 PM, Eric Blake wrote:
> Reply directly in nbd_negotiate_handle_export_name(), rather than
> waiting until nbd_negotiate_options() completes. This will make it
> easier to implement NBD_OPT_GO. Pass additional parameters around,
> rather than stashing things inside NBDClient.
Am 13.07.2017 um 17:06 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 05:02:51PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 17:01 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 05:00:39PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 16:58 schrieb Daniel P. Berrange:
On Thu, Jul 13,
Am 13.07.2017 um 17:01 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 05:00:39PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 16:58 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 04:18:13PM +0200, Peter Lieven wrote:
Okay, so it has to be a mix of QAPI parsing and manual parameter
On Thu, Jul 13, 2017 at 05:00:39PM +0200, Peter Lieven wrote:
> Am 13.07.2017 um 16:58 schrieb Daniel P. Berrange:
> > On Thu, Jul 13, 2017 at 04:18:13PM +0200, Peter Lieven wrote:
> > > Okay, so it has to be a mix of QAPI parsing and manual parameter checking,
> > > right?
> > Yeah. It does feel
Am 13.07.2017 um 16:58 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 04:18:13PM +0200, Peter Lieven wrote:
Okay, so it has to be a mix of QAPI parsing and manual parameter checking,
right?
Yeah. It does feel like a valid RFE for QAPI to add a permitted range to
'int' types though, which
On Thu, Jul 13, 2017 at 04:18:13PM +0200, Peter Lieven wrote:
>
> Okay, so it has to be a mix of QAPI parsing and manual parameter checking,
> right?
Yeah. It does feel like a valid RFE for QAPI to add a permitted range to
'int' types though, which would simplify the code in future.
> I
On 2017-07-13 10:41, Kevin Wolf wrote:
> Am 12.07.2017 um 18:58 hat Max Reitz geschrieben:
>> On 2017-07-12 16:52, Kevin Wolf wrote:
>>> Am 12.07.2017 um 13:46 hat Pavel Butsykin geschrieben:
This patch add shrinking of the image file for qcow2. As a result, this
allows
us to
On 07/13/2017 07:31 AM, Vladimir Sementsov-Ogievskiy wrote:
> 13.07.2017 15:09, Vladimir Sementsov-Ogievskiy wrote:
>> 07.07.2017 23:30, Eric Blake wrote:
>>> The NBD Protocol is introducing some additional information
>>> about exports, such as minimum request size and alignment, as
>>> well as
Am 13.07.2017 um 16:07 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 04:03:47PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 16:00 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 03:49:09PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 11:21 schrieb Daniel P. Berrange:
On Thu, Jul 13,
On Thu, Jul 13, 2017 at 04:03:47PM +0200, Peter Lieven wrote:
> Am 13.07.2017 um 16:00 schrieb Daniel P. Berrange:
> > On Thu, Jul 13, 2017 at 03:49:09PM +0200, Peter Lieven wrote:
> > > Am 13.07.2017 um 11:21 schrieb Daniel P. Berrange:
> > > > On Thu, Jul 13, 2017 at 10:44:53AM +0200, Peter
Am 13.07.2017 um 16:00 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 03:49:09PM +0200, Peter Lieven wrote:
Am 13.07.2017 um 11:21 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 10:44:53AM +0200, Peter Lieven wrote:
Am 10.07.2017 um 15:55 schrieb Daniel P. Berrange:
On Mon, Jul 10,
On Thu, Jul 13, 2017 at 03:49:09PM +0200, Peter Lieven wrote:
> Am 13.07.2017 um 11:21 schrieb Daniel P. Berrange:
> > On Thu, Jul 13, 2017 at 10:44:53AM +0200, Peter Lieven wrote:
> > > Am 10.07.2017 um 15:55 schrieb Daniel P. Berrange:
> > > > On Mon, Jul 10, 2017 at 03:52:18PM +0200, Kevin Wolf
On 11 July 2017 at 17:06, Max Reitz wrote:
> The following changes since commit 29741be341d50e4311e42ca3199f9b0bcfd4f5d2:
>
> Merge remote-tracking branch
> 'remotes/awilliam/tags/vfio-updates-20170710.0' into staging (2017-07-11
> 13:47:28 +0100)
>
> are available in the
On 07/13/2017 07:55 AM, Kevin Wolf wrote:
> Am 18.04.2017 um 03:33 hat Eric Blake geschrieben:
>> We are gradually moving away from sector-based interfaces, towards
>> byte-based. Update the vpc driver accordingly.
>>
>> Signed-off-by: Eric Blake
>
> I know this is an old
Am 13.07.2017 um 11:21 schrieb Daniel P. Berrange:
On Thu, Jul 13, 2017 at 10:44:53AM +0200, Peter Lieven wrote:
Am 10.07.2017 um 15:55 schrieb Daniel P. Berrange:
On Mon, Jul 10, 2017 at 03:52:18PM +0200, Kevin Wolf wrote:
Am 10.07.2017 um 15:44 hat Daniel P. Berrange geschrieben:
On Mon,
From: Eduardo Habkost
Assigning directly to *errp is not valid, as errp may be NULL,
_fatal, or _abort. Use error_propagate() instead.
With this, there's no need to check if errp is NULL anymore, as
error_propagate() and error_prepend() are able to handle that.
Cc: Kevin
07.07.2017 23:30, Eric Blake wrote:
The NBD protocol has several constants defined in various extensions
that we are about to implement. Expose them to the code, along with
an easy way to map various constants to strings during diagnostic
messages.
Signed-off-by: Eric Blake
Am 13.07.2017 um 14:42 hat Peter Maydell geschrieben:
> On 13 July 2017 at 13:37, Kevin Wolf wrote:
> > All callers of get_sector_offset() pass write=false and err=NULL. Remove
> > the parameters.
> >
> > Signed-off-by: Kevin Wolf
> > ---
> > Based on my block
On 13 July 2017 at 13:37, Kevin Wolf wrote:
> All callers of get_sector_offset() pass write=false and err=NULL. Remove
> the parameters.
>
> Signed-off-by: Kevin Wolf
> ---
> Based on my block branch, specifically Peter's 'block/vpc.c: Handle write
> failures
All callers of get_sector_offset() pass write=false and err=NULL. Remove
the parameters.
Signed-off-by: Kevin Wolf
---
Based on my block branch, specifically Peter's 'block/vpc.c: Handle write
failures in get_image_offset()'
block/vpc.c | 9 -
1 file changed, 4
On 13 July 2017 at 13:32, Kevin Wolf wrote:
> Am 09.07.2017 um 23:07 hat Peter Maydell geschrieben:
>> Coverity (CID 1355236) points out that get_image_offset() doesn't check that
>> it actually succeeded in writing the updated block bitmap to the file.
>> Check the error return
Am 09.07.2017 um 23:07 hat Peter Maydell geschrieben:
> Coverity (CID 1355236) points out that get_image_offset() doesn't check that
> it actually succeeded in writing the updated block bitmap to the file.
> Check the error return from bdrv_pwrite_sync() and propagate an error
> response back up
13.07.2017 15:12, Vladimir Sementsov-Ogievskiy wrote:
07.07.2017 23:30, Eric Blake wrote:
We really don't care if our spec-compliant reply to NBD_OPT_ABORT
was received, so shave off some lines of code by not even tracing it.
Signed-off-by: Eric Blake
---
v5: new patch
---
13.07.2017 15:09, Vladimir Sementsov-Ogievskiy wrote:
07.07.2017 23:30, Eric Blake wrote:
The NBD Protocol is introducing some additional information
about exports, such as minimum request size and alignment, as
well as an advertised maximum request size. It will be easier
to feed this
07.07.2017 23:30, Eric Blake wrote:
We really don't care if our spec-compliant reply to NBD_OPT_ABORT
was received, so shave off some lines of code by not even tracing it.
Signed-off-by: Eric Blake
---
v5: new patch
---
nbd/server.c | 15 ---
1 file changed,
Am 10.07.2017 um 03:58 hat Fam Zheng geschrieben:
> On Sun, 07/09 18:06, Peter Maydell wrote:
> > The function vmdk_read_cid() can fail if the read on the underlying
> > block device fails, or if there's a format error in the VMDK file.
> > However its API doesn't provide a mechanism to report
07.07.2017 23:30, Eric Blake wrote:
The NBD Protocol is introducing some additional information
about exports, such as minimum request size and alignment, as
well as an advertised maximum request size. It will be easier
to feed this information back to the block layer if we gather
all the
If no drive=... option is passed (for an empty drive), we don't only
lack the BlockBackend normally created by parse_drive(), but we also
need to manually call blk_attach_dev().
IDE does not support hot unplug, but if it did, qdev would take care to
call the matching blk_detach_dev() on unplug.
This test makes sure that all block devices show up on 'info block',
with all of the expected information, in different configurations.
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
---
tests/qemu-iotests/186 | 147 ++
If no drive=... option is passed (for an empty drive), we don't only
lack the BlockBackend normally created by parse_drive(), but we also
need to manually call blk_attach_dev().
This fixes at least a segfault when unplugging such devices, the bug
that they didn't show up in query-block, and
Instead of listing only monitor-owned BlockBackends in query-block, also
add those anonymous BlockBackends that are owned by a qdev device and as
such under the control of the user.
This allows using query-block to inspect BlockBackends for the modern
configuration syntax with -blockdev and
This patch replaces the blk_next() loop in query-block by a
blk_all_next() one so that we also get access to BlockBackends that
aren't owned by the monitor. For now, the next thing we do is check
whether each BB has a name, so there is no semantic difference.
Signed-off-by: Kevin Wolf
This caused an assertion failure until recently because the BlockBackend
would be detached on unplug, but was in fact never attached in the first
place. Add a regression test.
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
---
tests/qemu-iotests/067
With -blockdev/-device, users can indirectly create anonymous
BlockBackends, while the state of such backends is still of interest. As
a preparation for making such BBs visible in query-block, make sure that
they can be identified even without a name by adding the ID/QOM path of
their qdev device
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
---
block/block-backend.c | 2 +-
include/sysemu/block-backend.h | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/block/block-backend.c b/block/block-backend.c
index
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
---
block/block-backend.c | 3 +--
include/sysemu/block-backend.h | 1 +
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/block-backend.c b/block/block-backend.c
index
Since 2.9 it is possible for a user to care only about nodes and qdev devices,
but not about BlockBackends, by defining with -blockdev and using their node
name in -device. Devices create an anonymous BlockBackend internally then.
One of the major problems in this setup is that such devices are
On Thu, Jul 13, 2017 at 06:23:14AM -0500, Eric Blake wrote:
On 07/13/2017 05:01 AM, Manos Pitsidianakis wrote:
The following functions fail if bs->drv is a filter and does not
implement them:
bdrv_probe_blocksizes
bdrv_probe_geometry
bdrv_truncate
bdrv_has_zero_init
bdrv_get_info
Instead, the
On 07/07/2017 22:30, Eric Blake wrote:
> The NBD protocol has now finalized the extension that fixes
> several shortcomings with NBD_OPT_EXPORT_NAME (namely, no error
> reporting, no way for the server to advertise block sizes to the
> client):
>
Am 12.07.2017 um 17:47 hat Eric Blake geschrieben:
> On 07/12/2017 07:57 AM, Kevin Wolf wrote:
> > Instead of listing only monitor-owned BlockBackends in query-block, also
> > add those anonymous BlockBackends that are owned by a qdev device and as
> > such under the control of the user.
> >
> >
On 07/13/2017 05:01 AM, Manos Pitsidianakis wrote:
> The following functions fail if bs->drv is a filter and does not
> implement them:
>
> bdrv_probe_blocksizes
> bdrv_probe_geometry
> bdrv_truncate
> bdrv_has_zero_init
> bdrv_get_info
>
> Instead, the call should be passed to bs->file if it
On 07/13/2017 05:01 AM, Manos Pitsidianakis wrote:
> This series makes implementing some of the bdrv_* callbacks easier for block
> filters by passing requests to bs->file if bs->drv doesn't implement it
> instead
> of failing, and adding default bdrv_co_get_block_status() implementations.
>
>
13.07.2017 14:03, Vladimir Sementsov-Ogievskiy wrote:
13.07.2017 04:05, Eric Blake wrote:
Now that we have adjusted the majority of the calls this function
makes to be byte-based, it is easier to read the code if it makes
passes over the image using bytes rather than sectors.
Signed-off-by:
On 02/15/2017 11:05 AM, Paolo Bonzini wrote:
[now several months later...]
>
>
> On 03/02/2017 16:47, Vladimir Sementsov-Ogievskiy wrote:
>> Hi all!
>>
>> We really need exporting dirty bitmaps feature as well as remote
>> get_block_status for nbd devices. So, here is minimalistic and
13.07.2017 04:05, Eric Blake wrote:
Now that we have adjusted the majority of the calls this function
makes to be byte-based, it is easier to read the code if it makes
passes over the image using bytes rather than sectors.
Signed-off-by: Eric Blake
Reviewed-by: John Snow
13.07.2017 04:05, Eric Blake wrote:
Now that we have adjusted the majority of the calls this function
makes to be byte-based, it is easier to read the code if it makes
passes over the image using bytes rather than sectors.
Signed-off-by: Eric Blake
Reviewed-by: John Snow
On 07/13/2017 04:16 AM, Vladimir Sementsov-Ogievskiy wrote:
> 03.07.2017 18:10, Eric Blake wrote:
>> Now that we have adjusted the majority of the calls this function
>> makes to be byte-based, it is easier to read the code if it makes
>> passes over the image using bytes rather than sectors.
>>
Now that bdrv_truncate is passed to bs->file by default, remove the
callback from block/blkdebug.c and set is_filter to true.
Reviewed-by: Eric Blake
Reviewed-by: Stefan Hajnoczi
Signed-off-by: Manos Pitsidianakis
---
The following functions fail if bs->drv is a filter and does not
implement them:
bdrv_probe_blocksizes
bdrv_probe_geometry
bdrv_truncate
bdrv_has_zero_init
bdrv_get_info
Instead, the call should be passed to bs->file if it exists, to allow
filter drivers to support those methods without
This function is not used anywhere, so remove it.
Markus Armbruster adds:
The i82078 floppy device model used to call bdrv_media_changed() to
implement its media change bit when backed by a host floppy. This
went away in 21fcf36 "fdc: simplify media change handling".
Probably broke host floppy
This series makes implementing some of the bdrv_* callbacks easier for block
filters by passing requests to bs->file if bs->drv doesn't implement it instead
of failing, and adding default bdrv_co_get_block_status() implementations.
This is based against Kevin Wolf's block branch, commit
1 - 100 of 108 matches
Mail list logo