[Qemu-devel] SR-IOV PF reset and QEMU VFs VFIO passthrough

2013-06-01 Thread Benoît Canet
that the PF driver restore the PF config space after the reset will /sys files used by QEMU disappear and reappear messing the QEMU VFIO passthrough or will it goes smoothly ? Best regards Benoît Canet

Re: [Qemu-devel] SR-IOV PF reset and QEMU VFs VFIO passthrough

2013-06-02 Thread Benoît Canet
Thanks a lot for the answer. Best regards Benoît Le Sunday 02 Jun 2013 à 08:11:42 (-0600), Alex Williamson a écrit : On Sat, 2013-06-01 at 14:13 +0200, Benoît Canet wrote: Hello, I may have soon the PF driver of an SR-IOV card to code and make work with QEMU/KVM so I have

[Qemu-devel] VFIO and scheduled SR-IOV cards

2013-06-03 Thread Benoît Canet
that it should do the unmap/block would take more than 100ns. Also blocking the IO access in QEMU under the BQL would freeze QEMU. Do you have and idea on how to write this required map and block/unmap feature ? Best regards Benoît Canet

Re: [Qemu-devel] SR-IOV PF reset and QEMU VFs VFIO passthrough

2013-06-03 Thread Benoît Canet
. will it goes smoothly ? it goes smoothly today :-/ Happy to read that thanks for the answer. Best regards Benoît Canet

Re: [Qemu-devel] SR-IOV PF reset and QEMU VFs VFIO passthrough

2013-06-03 Thread Benoît Canet
. Then the restore state function of the kernel reset code would bring the SR-IOV PF configuration back. The hardware also have a privately owned SR-IOV related configuration in the PF configuration space. This configuration is used to configure the VFs resources. (memory) Best regards Benoît Canet

Re: [Qemu-devel] SR-IOV PF reset and QEMU VFs VFIO passthrough

2013-06-03 Thread Benoît Canet
a callback be added so PF driver can restore this state ? Best regards Benoît Canet

Re: [Qemu-devel] VFIO and scheduled SR-IOV cards

2013-06-04 Thread Benoît Canet
. This could confuse the guest VF driver so the unmap and block or a same goal achieving technique is required. I hope these informations makes the area of the problem to solve narrower. Best regards Benoît Canet Le Monday 03 Jun 2013 à 12:57:45 (-0600), Alex Williamson a écrit : On Mon, 2013

Re: [Qemu-devel] SR-IOV PF reset and QEMU VFs VFIO passthrough

2013-06-04 Thread Benoît Canet
caps are re-instated, as you showed above... I think this is a device specific structure. It would be annoying only in case of a PF FLR initiated via /sys or something external to the PF driver because the PF driver could restore this area after it initiate an FLR. Best regards Benoît Canet

[Qemu-devel] [PATCH V3] block: Add BlockDriver.bdrv_check_ext_snapshot.

2013-09-30 Thread Benoît Canet
This field is used by blkverify to disable external snapshots creation. I will also be used by block filters like quorum to disable external snapshots creation. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c | 14 ++ block/blkverify.c | 2 ++

[Qemu-devel] [PATCH V3] disable blkverify external snapshot creation

2013-09-30 Thread Benoît Canet
Hello, Here is the new version of the snapshot forbidding patch. v3: functions return an enum [Jeff] rename forbiding function [Kevin] v2: Use NULL fields to avoid having to fill the new field in every BlockDriver  [Jeff] Rename the field [Kevin] Benoît Canet (1): block

Re: [Qemu-devel] [RFC V8 03/13] quorum: Add quorum_aio_writev and its dependencies.

2013-09-30 Thread Benoît Canet
Le Friday 27 Sep 2013 à 12:03:07 (+0200), Kevin Wolf a écrit : Am 26.09.2013 um 18:29 hat Benoît Canet geschrieben: Le Friday 08 Feb 2013 à 11:38:38 (+0100), Kevin Wolf a écrit : Am 28.01.2013 18:07, schrieb Benoît Canet: Signed-off-by: Benoit Canet ben...@irqsave.net --- block

Re: [Qemu-devel] [RFC V8 06/13] quorum: Add quorum mechanism.

2013-09-30 Thread Benoît Canet
Le Friday 08 Feb 2013 à 13:07:03 (+0100), Kevin Wolf a écrit : Am 28.01.2013 18:07, schrieb Benoît Canet: Use gnutls's SHA-256 to compare versions. Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 303

Re: [Qemu-devel] [PATCH v2 04/17] blockdev: 'blockdev-add' QMP command

2013-10-01 Thread Benoît Canet
Le Tuesday 01 Oct 2013 à 15:20:06 (+0200), Kevin Wolf a écrit : For examples see the changes to qmp-commands.hx. Signed-off-by: Kevin Wolf kw...@redhat.com --- blockdev.c | 57 ++ qapi-schema.json | 236 +++

Re: [Qemu-devel] [PATCH v2 08/17] blockdev: Move parsing of 'if' option to drive_init

2013-10-01 Thread Benoît Canet
Le Tuesday 01 Oct 2013 à 15:20:10 (+0200), Kevin Wolf a écrit : It's always IF_NONE for blockdev-add. Signed-off-by: Kevin Wolf kw...@redhat.com --- blockdev.c | 40 ++-- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/blockdev.c

Re: [Qemu-devel] [PATCH V3] block: Add BlockDriver.bdrv_check_ext_snapshot.

2013-10-01 Thread Benoît Canet
Le Monday 30 Sep 2013 à 13:36:55 (+0200), Benoît Canet a écrit : This field is used by blkverify to disable external snapshots creation. I will also be used by block filters like quorum to disable external snapshots creation. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c

[Qemu-devel] [PATCH V4] disable blkverify external snapshot creation

2013-10-02 Thread Benoît Canet
BlockDriver  [Jeff] Rename the field [Kevin] Benoît Canet (1): block: Add BlockDriver.bdrv_check_ext_snapshot. block.c | 17 + block/blkverify.c | 2 ++ blockdev.c| 5 + include/block/block.h | 14 ++ include/block

[Qemu-devel] [PATCH V4] block: Add BlockDriver.bdrv_check_ext_snapshot.

2013-10-02 Thread Benoît Canet
This field is used by blkverify to disable external snapshots creation. I will also be used by block filters like quorum to disable external snapshots creation. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c | 17 + block/blkverify.c | 2 ++

[Qemu-devel] [PATCH V9 00/11] Quorum block driver

2013-10-02 Thread Benoît Canet
latests comments from kevin Benoît Canet (11): quorum: Create quorum.c, add QuorumSingleAIOCB and QuorumAIOCB. quorum: Create BDRVQuorumState and BlkDriver and do init. quorum: Add quorum_aio_writev and its dependencies. blkverify: Extract qemu_iovec_clone() and qemu_iovec_compare() from

[Qemu-devel] [PATCH V9 01/11] quorum: Create quorum.c, add QuorumSingleAIOCB and QuorumAIOCB.

2013-10-02 Thread Benoît Canet
@@ +/* + * Quorum Block filter + * + * Copyright (C) 2012-2013 Nodalink, SARL. + * + * Author: + * Benoît Canet benoit.ca...@irqsave.net + * + * Based on the design and code of blkverify.c (Copyright (C) 2010 IBM, Corp) + * and blkmirror.c (Copyright (C) 2011 Red Hat, Inc). + * + * This work

[Qemu-devel] [PATCH V9 10/11] quorum: Add quorum_co_flush().

2013-10-02 Thread Benoît Canet
Makes a vote to select error if any. Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 34 ++ 1 file changed, 34 insertions(+) diff --git a/block/quorum.c b/block/quorum.c index 084d030..0a28ab1 100644 --- a/block/quorum.c +++ b/block/quorum.c

[Qemu-devel] [PATCH V9 04/11] blkverify: Extract qemu_iovec_clone() and qemu_iovec_compare() from blkverify.

2013-10-02 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block/blkverify.c | 108 +- include/qemu-common.h | 2 + util/iov.c| 103 +++ 3 files changed, 107 insertions(+), 106 deletions(-) diff

[Qemu-devel] [PATCH V9 02/11] quorum: Create BDRVQuorumState and BlkDriver and do init.

2013-10-02 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 25 + 1 file changed, 25 insertions(+) diff --git a/block/quorum.c b/block/quorum.c index 76a1fbb..9557e61 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -15,6 +15,16 @@ #include block/block_int.h

[Qemu-devel] [PATCH V9 07/11] quorum: Add quorum_getlength().

2013-10-02 Thread Benoît Canet
Check that every bs file return the same length. If not return -EIO to disable the quorum and avoid length discrepancy. Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 26 ++ 1 file changed, 26 insertions(+) diff --git a/block/quorum.c

[Qemu-devel] [PATCH V9 05/11] quorum: Add quorum_aio_readv.

2013-10-02 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 40 +++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/block/quorum.c b/block/quorum.c index b49e3c6..f0fc0e9 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -101,14 +101,23

[Qemu-devel] [PATCH V9 08/11] quorum: Add quorum_invalidate_cache().

2013-10-02 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/block/quorum.c b/block/quorum.c index b3649a4..223ad22 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -565,6 +565,16 @@ static int64_t

[Qemu-devel] [PATCH V9 06/11] quorum: Add quorum mechanism.

2013-10-02 Thread Benoît Canet
Use gnutls's SHA-256 to compare versions. Signed-off-by: Benoit Canet ben...@irqsave.net --- block/Makefile.objs | 2 +- block/quorum.c| 321 +- configure | 36 ++ include/monitor/monitor.h | 2 + monitor.c

[Qemu-devel] [PATCH V9 09/11] quorum: Add quorum_co_get_block_status.

2013-10-02 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 67 ++ 1 file changed, 67 insertions(+) diff --git a/block/quorum.c b/block/quorum.c index 223ad22..084d030 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -171,6

[Qemu-devel] [PATCH V9 11/11] quorum: Add quorum_open() and quorum_close().

2013-10-02 Thread Benoît Canet
Example of command line: -drive if=virtio,file.driver=quorum,\ file.children.0.file.filename=1.qcow2,\ file.children.1.file.filename=2.qcow2,\ file.children.2.file.filename=3.qcow2,\ file.vote_threshold=3 file.blkverify=on with file.vote_threshold=2 and two file can be passed to emulated

[Qemu-devel] [PATCH V9 03/11] quorum: Add quorum_aio_writev and its dependencies.

2013-10-02 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 123 + 1 file changed, 123 insertions(+) diff --git a/block/quorum.c b/block/quorum.c index 9557e61..b49e3c6 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -64,11

Re: [Qemu-devel] [PATCH V9 00/11] Quorum block driver

2013-10-04 Thread Benoît Canet
Le Friday 04 Oct 2013 à 16:31:56 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: It must be applied on top of block: Add BlockDriver.bdrv_check_ext_snapshot. This patchset create a block driver implementing a quorum using total qemu disk images. Writes are mirrored

Re: [Qemu-devel] [PATCH] hmp: Add '\n' in monitor_printf()

2013-10-15 Thread Benoît Canet
Hello, Le Tuesday 15 Oct 2013 à 18:07:16 (+0800), mike a écrit : On 10/15/2013 04:58 PM, Kevin Wolf wrote: Am 15.10.2013 um 05:38 hat mike geschrieben: On 10/14/2013 10:36 PM, Markus Armbruster wrote: Mike Qiu qiud...@linux.vnet.ibm.com writes: Without this, output of 'info block'

Re: [Qemu-devel] [PATCH V9 03/11] quorum: Add quorum_aio_writev and its dependencies.

2013-10-28 Thread Benoît Canet
Le Friday 04 Oct 2013 à 16:35:18 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 123 + 1 file changed, 123 insertions(+) diff --git

Re: [Qemu-devel] [PATCH V9 06/11] quorum: Add quorum mechanism.

2013-10-28 Thread Benoît Canet
Le Friday 04 Oct 2013 à 16:48:12 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: Use gnutls's SHA-256 to compare versions. Wouldn't CRC32 suffice? (I don't really oppose using SHA, but taking in gnutls as a dependency just for comparing several memory areas seems a bit

Re: [Qemu-devel] [PATCH V9 06/11] quorum: Add quorum mechanism.

2013-10-28 Thread Benoît Canet
Le Friday 04 Oct 2013 à 16:48:12 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: Use gnutls's SHA-256 to compare versions. Wouldn't CRC32 suffice? (I don't really oppose using SHA, but taking in gnutls as a dependency just for comparing several memory areas seems a bit

Re: [Qemu-devel] [PATCH] block: Don't copy backing file name on error

2013-10-28 Thread Benoît Canet
Le Saturday 26 Oct 2013 à 15:44:43 (+0200), Max Reitz a écrit : bdrv_open_backing_file() tries to copy the backing file name using pstrcpy directly after calling bdrv_open() to open the backing file without checking whether that was actually successful. If it was not, ps-backing_hd-file will

Re: [Qemu-devel] [PATCH v2] qcow2: Flush image after creation

2013-10-28 Thread Benoît Canet
Le Thursday 24 Oct 2013 à 20:35:06 (+0200), Max Reitz a écrit : Opening the qcow2 image with BDRV_O_NO_FLUSH prevents any flushes during the image creation. This means that the image has not yet been flushed to disk when qemu-img create exits. This flush is delayed until the next operation on

Re: [Qemu-devel] [PATCH] Fix COR by disabling BDRV_O_COPY_ON_READ before opening the backing_file.

2013-10-28 Thread Benoît Canet
Le Friday 25 Oct 2013 à 02:15:07 (+0200), Thibaut LAURENT a écrit : Since commit 0ebd24e0a203cf2852c310b59fbe050190dc6c8c, bdrv_open_common will throw an error when trying to open a file read-only with the BDRV_O_COPY_ON_READ flag set. Although BDRV_O_RDWR is unset for the backing files,

[Qemu-devel] How to introduce bs-node_name ?

2013-10-28 Thread Benoît Canet
Hi list, After a discussion on irc we have two potential solution in order to introduce a new bs-node_name member in order to be able to manipulate the graph from the monitors. The first one is to make the QMP device parameter of the block commands optional and add the node-name parameter as a

Re: [Qemu-devel] [PATCH V9 00/11] Quorum block driver

2013-10-29 Thread Benoît Canet
Le Friday 04 Oct 2013 à 16:31:56 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: It must be applied on top of block: Add BlockDriver.bdrv_check_ext_snapshot. This patchset create a block driver implementing a quorum using total qemu disk images. Writes are mirrored

Re: [Qemu-devel] [PATCH V9 00/11] Quorum block driver

2013-10-29 Thread Benoît Canet
Le Tuesday 29 Oct 2013 à 18:56:34 (+0100), Max Reitz a écrit : Am 29.10.2013 18:55, schrieb Max Reitz: Am 29.10.2013 08:59, schrieb Benoît Canet: Le Friday 04 Oct 2013 à 16:31:56 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: It must be applied on top of block: Add

Re: [Qemu-devel] [PATCH V9 03/11] quorum: Add quorum_aio_writev and its dependencies.

2013-10-29 Thread Benoît Canet
L Tuesday 29 Oct 2013 à 18:21:57 (+0100), Max Reitz a écrit : Am 28.10.2013 13:21, schrieb Benoît Canet: Le Friday 04 Oct 2013 à 16:35:18 (+0200), Max Reitz a écrit : On 2013-10-02 14:39, Benoît Canet wrote: Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 123

Re: [Qemu-devel] [PATCH v2] usb: drop unused USBNetState.inpkt field

2013-10-29 Thread Benoît Canet
Le Tuesday 29 Oct 2013 à 15:44:31 (+0100), Stefan Hajnoczi a écrit : Signed-off-by: Stefan Hajnoczi stefa...@redhat.com --- hw/usb/dev-network.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c index 660d774..4c532b7 100644 ---

Re: [Qemu-devel] [PATCH 1/2] sheepdog: refactor do_sd_create()

2013-10-29 Thread Benoît Canet
Le Tuesday 29 Oct 2013 à 16:17:34 (+0800), Liu Yuan a écrit : We can actually use BDRVSheepdogState *s to pass most of the parameters. Cc: Kevin Wolf kw...@redhat.com Cc: Stefan Hajnoczi stefa...@redhat.com Signed-off-by: Liu Yuan namei.u...@gmail.com --- block/sheepdog.c | 37

Re: [Qemu-devel] [PATCH v2 2/2] sheepdog: support user-defined redundancy option

2013-10-29 Thread Benoît Canet
Le Tuesday 29 Oct 2013 à 16:25:52 (+0800), Liu Yuan a écrit : Sheepdog support two kinds of redundancy, full replication and erasure coding. # create a fully replicated vdi with x copies -o redundancy=x (1 = x = SD_MAX_COPIES) # create a erasure coded vdi with x data strips and y parity

Re: [Qemu-devel] [PATCH v2 1/2] sheepdog: refactor do_sd_create()

2013-10-29 Thread Benoît Canet
Le Tuesday 29 Oct 2013 à 16:25:51 (+0800), Liu Yuan a écrit : We can actually use BDRVSheepdogState *s to pass most of the parameters. Cc: Kevin Wolf kw...@redhat.com Cc: Stefan Hajnoczi stefa...@redhat.com Signed-off-by: Liu Yuan namei.u...@gmail.com --- block/sheepdog.c | 37

Re: [Qemu-devel] [RFC] qcow2 journalling draft

2013-09-04 Thread Benoît Canet
+They consist of transactions, which in turn contain operations that +are effectively executed atomically. A qcow2 image can have a main image +journal that deals with cluster management operations, and additional specific +journals can be used by other features like data deduplication.

Re: [Qemu-devel] [RFC] qcow2 journalling draft

2013-09-04 Thread Benoît Canet
I'm not sure if multiple journals will work in practice. Doesn't this re-introduce the need to order update steps and flush between them? This is a question for Benoît, who made this requirement. I asked him the same a while ago and apparently his explanation made some sense to me, or I

Re: [Qemu-devel] Block Filters

2013-09-04 Thread Benoît Canet
Propagate operations like snapshot down the tree. block.c is designed for bs-file/bs-backing_hd kind of BlockDrivers, perhaps it needs to become a bit more generic to support other types of BlockDrivers properly. Shouldn't bs-backing_hd become bs-children[0] and bs-file stay the same ? Best

Re: [Qemu-devel] [RFC] qcow2 journalling draft

2013-09-05 Thread Benoît Canet
Then you get very quickly alternating sequences of L2 depends on refcount update (for allocation) and refcount update depends on L2 update (for freeing), which means that Qcow2Cache starts flushing all the time without accumulating many requests. These are cases that would benefit as well

Re: [Qemu-devel] [RFC] qcow2 journalling draft

2013-09-05 Thread Benoît Canet
Le Thursday 05 Sep 2013 à 11:24:40 (+0200), Stefan Hajnoczi a écrit : On Wed, Sep 04, 2013 at 11:55:23AM +0200, Benoît Canet wrote: I'm not sure if multiple journals will work in practice. Doesn't this re-introduce the need to order update steps and flush between them

Re: [Qemu-devel] Block Filters

2013-09-05 Thread Benoît Canet
Le Thursday 05 Sep 2013 à 18:18:45 (+0800), Fam Zheng a écrit : On Thu, 09/05 12:01, Stefan Hajnoczi wrote: On Wed, Sep 04, 2013 at 08:15:36PM +0200, Benoît Canet wrote: Propagate operations like snapshot down the tree. block.c is designed for bs-file/bs-backing_hd kind of BlockDrivers

Re: [Qemu-devel] Block Filters

2013-09-15 Thread Benoît Canet
Le Friday 06 Sep 2013 à 11:55:38 (+0200), Kevin Wolf a écrit : Am 06.09.2013 um 11:18 hat Fam Zheng geschrieben: On Fri, 09/06 10:45, Kevin Wolf wrote: Am 06.09.2013 um 09:56 hat Fam Zheng geschrieben: Since BlockDriver.bdrv_snapshot_create() is an optional operation, blockdev.c

Re: [Qemu-devel] [RFC] qcow2 journalling draft

2013-09-15 Thread Benoît Canet
Kevin what do you think of this ? I could strip down the dedupe journal code to specialize it. If you think it turns out easier than using the journalling infrastructure that we're going to implement anyway, then why not. This question need to be though. The good thing about the current

Re: [Qemu-devel] [PATCH] tests/.gitignore: ignore test-throttle

2013-09-16 Thread Benoît Canet
Le Monday 16 Sep 2013 à 15:20:40 (+0800), Fam Zheng a écrit : Signed-off-by: Fam Zheng f...@redhat.com --- tests/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/.gitignore b/tests/.gitignore index d11cc22..ae5280e 100644 --- a/tests/.gitignore +++ b/tests/.gitignore

Re: [Qemu-devel] Block Filters

2013-09-16 Thread Benoît Canet
Le Monday 16 Sep 2013 à 15:41:45 (+0800), Fam Zheng a écrit : On Sun, 09/15 20:10, Benoît Canet wrote: Le Friday 06 Sep 2013 à 11:55:38 (+0200), Kevin Wolf a écrit : Am 06.09.2013 um 11:18 hat Fam Zheng geschrieben: On Fri, 09/06 10:45, Kevin Wolf wrote: Am 06.09.2013 um 09:56 hat

Re: [Qemu-devel] Block Filters

2013-09-16 Thread Benoît Canet
Le Monday 16 Sep 2013 à 15:41:45 (+0800), Fam Zheng a écrit : On Sun, 09/15 20:10, Benoît Canet wrote: Le Friday 06 Sep 2013 à 11:55:38 (+0200), Kevin Wolf a écrit : Am 06.09.2013 um 11:18 hat Fam Zheng geschrieben: On Fri, 09/06 10:45, Kevin Wolf wrote: Am 06.09.2013 um 09:56 hat

[Qemu-devel] cpufreq and QEMU guests

2013-09-16 Thread Benoît Canet
Hello, I know a cloud provider worried about the fact that the /proc/cpuinfo of his guests give a bogus frequency to his customer. QEMU and the guests kernel currently have no way to reflect the host frequency changes to the guests. The customer compute intensive application then read this

Re: [Qemu-devel] cpufreq and QEMU guests

2013-09-16 Thread Benoît Canet
Le Monday 16 Sep 2013 à 09:39:10 (-0500), Alexander Graf a écrit : Am 16.09.2013 um 07:15 schrieb Benoît Canet benoit.ca...@irqsave.net: Hello, I know a cloud provider worried about the fact that the /proc/cpuinfo of his guests give a bogus frequency to his customer. QEMU

Re: [Qemu-devel] cpufreq and QEMU guests

2013-09-16 Thread Benoît Canet
Le Monday 16 Sep 2013 à 18:32:39 (+0300), Gleb Natapov a écrit : On Mon, Sep 16, 2013 at 05:05:45PM +0200, Benoît Canet wrote: Le Monday 16 Sep 2013 à 09:39:10 (-0500), Alexander Graf a écrit : Am 16.09.2013 um 07:15 schrieb Benoît Canet benoit.ca...@irqsave.net: Hello

Re: [Qemu-devel] cpufreq and QEMU guests

2013-09-16 Thread Benoît Canet
Le Monday 16 Sep 2013 à 18:58:40 (+0300), Gleb Natapov a écrit : On Mon, Sep 16, 2013 at 05:46:04PM +0200, Benoît Canet wrote: Le Monday 16 Sep 2013 à 18:32:39 (+0300), Gleb Natapov a écrit : On Mon, Sep 16, 2013 at 05:05:45PM +0200, Benoît Canet wrote: Le Monday 16 Sep 2013 à 09:39:10

Re: [Qemu-devel] Merging the quorum block driver

2013-09-17 Thread Benoît Canet
Le Tuesday 17 Sep 2013 à 14:44:13 (+0200), Stefan Hajnoczi a écrit : Hi Benoit, Kevin and I had a chance to chat face-to-face and we discussed what concrete changes are necessary to merge quorum (without solving all the other block layers problems at once). I think quorum could be merged

Re: [Qemu-devel] Merging the quorum block driver

2013-09-18 Thread Benoît Canet
Le Tuesday 17 Sep 2013 à 14:44:13 (+0200), Stefan Hajnoczi a écrit : Hi Benoit, Kevin and I had a chance to chat face-to-face and we discussed what concrete changes are necessary to merge quorum (without solving all the other block layers problems at once). I think quorum could be merged

Re: [Qemu-devel] Merging the quorum block driver

2013-09-19 Thread Benoît Canet
Le Thursday 19 Sep 2013 à 10:57:50 (+0200), Kevin Wolf a écrit : Am 19.09.2013 um 10:26 hat Stefan Hajnoczi geschrieben: On Wed, Sep 18, 2013 at 05:05:27PM +0200, Benoît Canet wrote: Le Tuesday 17 Sep 2013 à 14:44:13 (+0200), Stefan Hajnoczi a écrit : Hi Benoit, Kevin and I had

Re: [Qemu-devel] Merging the quorum block driver

2013-09-19 Thread Benoît Canet
Le Thursday 19 Sep 2013 à 15:21:46 (+0200), Kevin Wolf a écrit : Am 19.09.2013 um 14:55 hat Benoît Canet geschrieben: Le Thursday 19 Sep 2013 à 10:57:50 (+0200), Kevin Wolf a écrit : Am 19.09.2013 um 10:26 hat Stefan Hajnoczi geschrieben: On Wed, Sep 18, 2013 at 05:05:27PM +0200, Benoît

Re: [Qemu-devel] [PATCH V3] target-i386: forward CPUID cache leaves when -cpu host is used

2013-09-19 Thread Benoît Canet
Le Monday 02 Sep 2013 à 13:19:16 (-0300), Eduardo Habkost a écrit : On Mon, Sep 02, 2013 at 05:06:37PM +0200, Benoît Canet wrote: Some users running cpu intensive tasks checking the cache CPUID leaves at startup and making decisions based on the result reported that the guest

Re: [Qemu-devel] Merging the quorum block driver

2013-09-20 Thread Benoît Canet
Le Thursday 19 Sep 2013 à 16:23:54 (+0200), Kevin Wolf a écrit : Am 19.09.2013 um 15:38 hat Benoît Canet geschrieben: Le Thursday 19 Sep 2013 à 15:21:46 (+0200), Kevin Wolf a écrit : Am 19.09.2013 um 14:55 hat Benoît Canet geschrieben: Le Thursday 19 Sep 2013 à 10:57:50 (+0200), Kevin

Re: [Qemu-devel] [PATCH 04/17] blockdev: 'blockdev-add' QMP command

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 13:54:17 (+0200), Kevin Wolf a écrit : For examples see the changes to qmp-commands.hx. Signed-off-by: Kevin Wolf kw...@redhat.com --- blockdev.c | 57 qapi-schema.json | 270 +++

Re: [Qemu-devel] [PATCH 06/17] blockdev: Pass QDict to blockdev_init()

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 13:54:19 (+0200), Kevin Wolf a écrit : Working on a QDict instead of a QemuOpts that accepts anything is more in line with bdrv_open(). A QDict is what qmp_blockdev_add() already has anyway, so this saves additional conversions. And last, but not least, it allows later

Re: [Qemu-devel] [PATCH 07/17] blockdev: Move parsing of 'media' option to drive_init

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 13:54:20 (+0200), Kevin Wolf a écrit : This moves as much as possible of the processing of the 'media' option to drive_init so that it can only be accessed using legacy functions, but never with anything blockdev-add related. Signed-off-by: Kevin Wolf kw...@redhat.com

Re: [Qemu-devel] [PATCH 08/17] blockdev: Move parsing of 'if' option to drive_init

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 13:54:21 (+0200), Kevin Wolf a écrit : It's always IF_NONE for blockdev-add. Signed-off-by: Kevin Wolf kw...@redhat.com --- blockdev.c | 40 ++-- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/blockdev.c

Re: [Qemu-devel] [PATCH 10/17] blockdev: Move parsing of 'boot' option to drive_init

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 13:54:23 (+0200), Kevin Wolf a écrit : It's already ignored and only prints a deprecation message. No use in making it available in new interfaces. Signed-off-by: Kevin Wolf kw...@redhat.com --- blockdev.c | 21 +++-- 1 file changed, 11

Re: [Qemu-devel] [PATCH 09/17] blockdev: Moving parsing of geometry options to drive_init

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 13:54:22 (+0200), Kevin Wolf a écrit : This moves all of the geometry options (cyls/heads/secs/trans) to drive_init so that they can only be accessed using legacy functions, but never with anything blockdev-add related. Signed-off-by: Kevin Wolf kw...@redhat.com ---

[Qemu-devel] [PATCH] block: introduce BlockDriver.bdrv_needs_filename to enable some drivers.

2013-09-20 Thread Benoît Canet
Some drivers will have driver specifics options but no filename. This new bool allow the block layer to treat them correctly. The first driver of this type will be the quorum driver. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c | 6 -- block/bochs.c

Re: [Qemu-devel] [PATCH v4] ivshmem: allow the sharing of mmap'd files

2013-09-20 Thread Benoît Canet
Le Friday 20 Sep 2013 à 20:34:47 (+0200), Damien Millescamps a écrit : This patch permits to share memory areas that do not specifically belong to /dev/shm. In such case, the file must be already present when launching qemu. A new parameter 'file' has been added to specify the file to use. A

[Qemu-devel] [PATCH V2] introduce .bdrv_needs_filename

2013-09-23 Thread Benoît Canet
since v1: simplify assertion [Kevin] add .bdrv_needs_filename only to driver to having .bdrv_parse_filename nor .bdrv_open [Kevin] Tested that raw, qed and ssh protocols works fine. Benoît Canet (1): block: introduce BlockDriver.bdrv_needs_filename to enable some drivers

[Qemu-devel] [PATCH V2] block: introduce BlockDriver.bdrv_needs_filename to enable some drivers.

2013-09-23 Thread Benoît Canet
Some drivers will have driver specifics options but no filename. This new bool allow the block layer to treat them correctly. The .bdrv_needs_filename is set in drivers not having .bdrv_parse_filename and not having .bdrv_open. The first exception to this rule will be the quorum driver.

[Qemu-devel] [PATCH V3] introduce .bdrv_needs_filename

2013-09-24 Thread Benoît Canet
v3: Add comment [Eric] v1-2: simplify assertion [Kevin] add .bdrv_needs_filename only to driver to having .bdrv_parse_filename nor .bdrv_open [Kevin] Tested that raw, qed and ssh protocols works fine. Benoît Canet (1): block: introduce BlockDriver.bdrv_needs_filename

[Qemu-devel] [PATCH V3] block: introduce BlockDriver.bdrv_needs_filename to enable some drivers.

2013-09-24 Thread Benoît Canet
Some drivers will have driver specifics options but no filename. This new bool allow the block layer to treat them correctly. The .bdrv_needs_filename is set in drivers not having .bdrv_parse_filename and not having .bdrv_open. The first exception to this rule will be the quorum driver.

[Qemu-devel] [PATCH V4] introduce .bdrv_needs_filename

2013-09-24 Thread Benoît Canet
. Benoît Canet (1): block: introduce BlockDriver.bdrv_needs_filename to enable some drivers. block.c | 5 +++-- block/gluster.c | 4 block/iscsi.c | 1 + block/raw-posix.c | 5 + block/raw-win32.c | 2 ++ block/rbd.c

[Qemu-devel] [PATCH V4] block: introduce BlockDriver.bdrv_needs_filename to enable some drivers.

2013-09-24 Thread Benoît Canet
Some drivers will have driver specifics options but no filename. This new bool allow the block layer to treat them correctly. The .bdrv_needs_filename is set in drivers not having .bdrv_parse_filename and not having .bdrv_open. The first exception to this rule will be the quorum driver.

[Qemu-devel] [PATCH] qdict: Extract qdict_extract_subqdict.

2013-09-25 Thread Benoît Canet
Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c | 23 ++- include/qapi/qmp/qdict.h | 2 ++ qobject/qdict.c | 21 + 3 files changed, 25 insertions(+), 21 deletions(-) diff --git a/block.c b/block.c index

[Qemu-devel] [PATCH] Add infrastructure to forbid external snapshot

2013-09-25 Thread Benoît Canet
This paves the way for the quorum block driver to be merged. Benoît Canet (1): block: Add bdrv_forbid_ext_snapshots. block.c | 27 +++ block/blkdebug.c | 2 ++ block/blkverify.c | 2 ++ block/bochs.c | 2 ++ block

[Qemu-devel] [PATCH] block: Add bdrv_forbid_ext_snapshots.

2013-09-25 Thread Benoît Canet
Drivers having a bs-file where set to recurse the call to their child. Protocol and drivers designed to be on the bottom of the stack where set to allow snapshots. Future protocols like quorum where creating snapshots does not make sense without block filters will be set to forbid snapshots.

Re: [Qemu-devel] [PATCH 2/3] qcow2: Free allocated L2 cluster on error

2013-09-25 Thread Benoît Canet
Le Wednesday 25 Sep 2013 à 16:37:19 (+0200), Max Reitz a écrit : If an error occurs in l2_allocate, the allocated (but unused) L2 cluster should be freed. Signed-off-by: Max Reitz mre...@redhat.com --- block/qcow2-cluster.c | 4 1 file changed, 4 insertions(+) diff --git

Re: [Qemu-devel] [PATCH 3/3] qcow2: Always use error path in l2_allocate

2013-09-25 Thread Benoît Canet
Le Wednesday 25 Sep 2013 à 16:37:20 (+0200), Max Reitz a écrit : Just returning -errno in some cases prevents trace_qcow2_l2_allocate_done from being executed (and, in one case, also the unused allocated L2 table from being freed). Always going down the error path fixes this. Signed-off-by:

Re: [Qemu-devel] [PATCH 1/3] qcow2: Don't put invalid L2 table into cache

2013-09-25 Thread Benoît Canet
Le Wednesday 25 Sep 2013 à 16:37:18 (+0200), Max Reitz a écrit : In l2_allocate, the fail path is executed if qcow2_cache_flush fails. However, the L2 table has not yet been fetched from the L2 table cache. The qcow2_cache_put in the fail path therefore basically gives an undefined argument as

Re: [Qemu-devel] [PATCH] block: Add bdrv_forbid_ext_snapshots.

2013-09-26 Thread Benoît Canet
Le Thursday 26 Sep 2013 à 13:43:19 (+0200), Kevin Wolf a écrit : Am 26.09.2013 um 04:01 hat Jeff Cody geschrieben: On Wed, Sep 25, 2013 at 04:23:22PM +0200, Benoît Canet wrote: Drivers having a bs-file where set to recurse the call to their child. Protocol and drivers designed

[Qemu-devel] [PATCH V2] disable blkverify external snapshot creation

2013-09-26 Thread Benoît Canet
] Benoît Canet (1): block: Add BlockDriver.bdrv_check_ext_snapshot. block.c | 14 ++ block/blkverify.c | 2 ++ blockdev.c| 5 + include/block/block.h | 7 +++ include/block/block_int.h | 8 5 files changed, 36

[Qemu-devel] [PATCH V2] block: Add BlockDriver.bdrv_check_ext_snapshot.

2013-09-26 Thread Benoît Canet
This field is used by blkverify to disable external snapshots creation. I will also be used by block filters like quorum to disable external snapshots creation. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c | 14 ++ block/blkverify.c | 2 ++

Re: [Qemu-devel] [RFC V8 03/13] quorum: Add quorum_aio_writev and its dependencies.

2013-09-26 Thread Benoît Canet
Le Friday 08 Feb 2013 à 11:38:38 (+0100), Kevin Wolf a écrit : Am 28.01.2013 18:07, schrieb Benoît Canet: Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 111 1 file changed, 111 insertions(+) diff

Re: [Qemu-devel] [RFC V8 03/13] quorum: Add quorum_aio_writev and its dependencies.

2013-09-26 Thread Benoît Canet
+static void quorum_aio_bh(void *opaque) +{ +QuorumAIOCB *acb = opaque; +BDRVQuorumState *s = acb-bqs; +int ret; + +ret = s-threshold = acb-success_count ? 0 : -EIO; It would be very much preferable if you stored the actual error code instead of turning everything

Re: [Qemu-devel] [RFC V8 03/13] quorum: Add quorum_aio_writev and its dependencies.

2013-09-26 Thread Benoît Canet
Le Friday 08 Feb 2013 à 11:38:38 (+0100), Kevin Wolf a écrit : Am 28.01.2013 18:07, schrieb Benoît Canet: Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 111 1 file changed, 111 insertions(+) diff

Re: [Qemu-devel] [RFC V8 06/13] quorum: Add quorum mechanism.

2013-09-26 Thread Benoît Canet
Le Friday 08 Feb 2013 à 13:07:03 (+0100), Kevin Wolf a écrit : Am 28.01.2013 18:07, schrieb Benoît Canet: Use gnutls's SHA-256 to compare versions. Signed-off-by: Benoit Canet ben...@irqsave.net --- block/quorum.c | 303

[Qemu-devel] [PATCH V2 for-1.6 0/5] Leaky bucket throttling and features

2013-07-23 Thread Benoît Canet
to define the max size of an io when throttling by iops via iops_sector_count to avoid vm users cheating on the iops limit. The last patch adds a metric reflecting how much the I/O are throttled. since v1: Add throttling percentage metric [Benoît] Benoît Canet (5): block: Repair the throttling

[Qemu-devel] [PATCH V2 for-1.6 1/5] block: Repair the throttling code.

2013-07-23 Thread Benoît Canet
The throttling code was segfaulting since commit 02ffb504485f0920cfc75a0982a602f824a9a4f4 because some qemu_co_queue_next caller does not run in a coroutine. qemu_co_queue_do_restart assume that the caller is a coroutinne. As sugested by Stefan fix this by entering the coroutine directly.

[Qemu-devel] [PATCH V2 for-1.6 3/5] block: Add support for throttling burst threshold in QMP and the command line.

2013-07-23 Thread Benoît Canet
The thresholds of the leaky bucket algorithm can be used to allow some burstiness. Signed-off-by: Benoit Canet ben...@irqsave.net --- block/qapi.c | 24 + blockdev.c | 105 +++--- hmp.c| 32 +++--

[Qemu-devel] [PATCH V2 for-1.6 2/5] block: Modify the throttling code to implement the leaky bucket algorithm.

2013-07-23 Thread Benoît Canet
This patch replace the previous algorithm by the well described leaky bucket algorithm: A bucket is filled by the incoming IOs and a periodic timer decrement the counter to make the bucket leak. When a given threshold is reached the bucket is full and the IOs are hold. In this patch the threshold

[Qemu-devel] [PATCH V2 for-1.6 4/5] block: Add iops_sector_count to do the iops accounting for a given io size.

2013-07-23 Thread Benoît Canet
This feature can be used in case where users are avoiding the iops limit by doing jumbo I/Os hammering the storage backend. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c |8 +++- block/qapi.c |4 blockdev.c| 22

[Qemu-devel] [PATCH V2 for-1.6 5/5] block: Add throttling percentage metrics.

2013-07-23 Thread Benoît Canet
This metrics show how many percent of the time I/Os are put on hold by the throttling algorithm. This metric could be used by system administrators or cloud stack developpers to decide when the throttling settings must be changed. Signed-off-by: Benoit Canet ben...@irqsave.net --- block.c

[Qemu-devel] QCOW2 cryptography and secure key handling

2013-07-23 Thread Benoît Canet
Hi, I have some budget to improve QCOW2's cryptography. My main concern is that the QCOW2 image crypto key is passed in clear text. Do you (the block maintainers) have an idea on how the code could be improved to securely pass the crypto key to the QCOW2 code ? Best regards Benoît

  1   2   3   4   5   6   7   8   9   10   >