Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-06 Thread Peter Lieven
Am 05.10.2015 um 23:15 schrieb John Snow: On 09/21/2015 08:25 AM, Peter Lieven wrote: PIO read requests on the ATAPI interface used to be sync blk requests. This has to siginificant drawbacks. First the main loop hangs util an I/O request is completed and secondly if the I/O request does not

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-06 Thread Peter Lieven
Am 06.10.2015 um 10:57 schrieb Kevin Wolf: Am 05.10.2015 um 23:15 hat John Snow geschrieben: On 09/21/2015 08:25 AM, Peter Lieven wrote: PIO read requests on the ATAPI interface used to be sync blk requests. This has to siginificant drawbacks. First the main loop hangs util an I/O request is

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-06 Thread Peter Lieven
Am 06.10.2015 um 10:46 schrieb Peter Lieven: Am 05.10.2015 um 23:15 schrieb John Snow: On 09/21/2015 08:25 AM, Peter Lieven wrote: PIO read requests on the ATAPI interface used to be sync blk requests. This has to siginificant drawbacks. First the main loop hangs util an I/O request is

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-06 Thread Peter Lieven
> Am 06.10.2015 um 19:07 schrieb John Snow : > > > >> On 10/06/2015 05:20 AM, Peter Lieven wrote: >>> Am 06.10.2015 um 10:57 schrieb Kevin Wolf: >>> Am 05.10.2015 um 23:15 hat John Snow geschrieben: >>>> >>>> On 09/21/2015 08:25

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-06 Thread Peter Lieven
Am 06.10.2015 um 19:56 schrieb John Snow: > > On 10/06/2015 01:12 PM, Peter Lieven wrote: >>> Am 06.10.2015 um 19:07 schrieb John Snow : >>> >>> >>> >>>> On 10/06/2015 05:20 AM, Peter Lieven wrote: >>>>> Am 06.10.2015 um

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-07 Thread Peter Lieven
Am 07.10.2015 um 18:42 schrieb John Snow: > > On 10/06/2015 04:46 AM, Peter Lieven wrote: >> Am 05.10.2015 um 23:15 schrieb John Snow: >>> On 09/21/2015 08:25 AM, Peter Lieven wrote: >>>> PIO read requests on the ATAPI interface used to be sync blk requests. >&g

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-08 Thread Peter Lieven
Hi all, short summary from my side. The whole thing seems to get complicated, let me explain why: 1) During review I found that the code in ide_atapi_cmd_reply_end can't work correctly if the byte_count_limit is not a divider or a multiple of cd_sector_size. The reason is that as soon as we l

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-09 Thread Peter Lieven
Am 09.10.2015 um 10:21 schrieb Kevin Wolf: > Am 08.10.2015 um 18:44 hat John Snow geschrieben: >> On 10/08/2015 08:06 AM, Peter Lieven wrote: >>> Hi all, >>> >>> short summary from my side. The whole thing seems to get complicated, >>> let me explain w

[Qemu-block] [PATCH 1/4] ide/atapi: make PIO read requests async

2015-10-12 Thread Peter Lieven
PIO read requests on the ATAPI interface used to be sync blk requests. This has two significant drawbacks. First the main loop hangs util an I/O request is completed and secondly if the I/O request does not complete (e.g. due to an unresponsive storage) Qemu hangs completely. Signed-off-by: Peter

[Qemu-block] [PATCH 2/4] ide/atapi: blk_aio_readv may return NULL

2015-10-12 Thread Peter Lieven
Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 4 1 file changed, 4 insertions(+) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index 2271ea2..e0cf066 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -429,6 +429,10 @@ static void ide_atapi_cmd_read_dma_cb(void *opaque, int ret) s

[Qemu-block] [PATCH 3/4] ide: add support for cancelable read requests

2015-10-12 Thread Peter Lieven
logic for read-only devices. Signed-off-by: Peter Lieven --- hw/ide/core.c | 54 ++ hw/ide/internal.h | 16 hw/ide/pci.c | 42 -- 3 files changed, 98 insertions(+), 14 deletions

[Qemu-block] [PATCH V2 0/4] ide: avoid main-loop hang on CDROM/NFS failure

2015-10-12 Thread Peter Lieven
is upstream meanwhile. Peter Lieven (4): ide/atapi: make PIO read requests async ide/atapi: blk_aio_readv may return NULL ide: add support for cancelable read requests ide/atapi: enable cancelable requests hw/ide/atapi.c| 99 +-- hw/

[Qemu-block] [PATCH 4/4] ide/atapi: enable cancelable requests

2015-10-12 Thread Peter Lieven
Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 4 ++-- hw/ide/core.c | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index e0cf066..8d38b1d 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -187,7 +187,7 @@ static int cd_read_sector

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-14 Thread Peter Lieven
Am 08.10.2015 um 18:44 schrieb John Snow: > > On 10/08/2015 08:06 AM, Peter Lieven wrote: >> Hi all, >> >> short summary from my side. The whole thing seems to get complicated, >> let me explain why: >> >> 1) During review I found that the code in ide_atap

Re: [Qemu-block] [Qemu-devel] [PATCH 1/5] ide/atapi: make PIO read requests async

2015-10-16 Thread Peter Lieven
Am 14.10.2015 um 20:21 schrieb John Snow: > > On 10/14/2015 02:19 PM, Peter Lieven wrote: >> Am 08.10.2015 um 18:44 schrieb John Snow: >>> On 10/08/2015 08:06 AM, Peter Lieven wrote: >>>> Hi all, >>>> >>>> short summary from my side. The

Re: [Qemu-block] [PATCH] block/nfs: add support for setting debug level

2015-10-21 Thread Peter Lieven
Am 22.09.2015 um 08:13 schrieb Peter Lieven: Am 25.06.2015 um 15:18 schrieb Stefan Hajnoczi: On Tue, Jun 23, 2015 at 10:12:15AM +0200, Peter Lieven wrote: upcoming libnfs versions will support logging debug messages. Add support for it in qemu through an URL parameter. Signed-off-by: Peter

Re: [Qemu-block] [PATCH 1/2] iscsi: Translate scsi sense into error code

2015-10-22 Thread Peter Lieven
Am 22.10.2015 um 10:17 schrieb Fam Zheng: Previously we return -EIO blindly when anything goes wrong. Add a helper function to parse sense fields and try to make the return code more meaningful. Signed-off-by: Fam Zheng --- block/iscsi.c | 56 ++

Re: [Qemu-block] [PATCH 0/2] Fix werror=enospc for qcow2 on iscsi

2015-10-22 Thread Peter Lieven
Am 22.10.2015 um 10:17 schrieb Fam Zheng: When qcow2 is created on iscsi target with a virtual size greater than physical capacity of the LUN, over time it's possible that guest fills too much data and at that point, new clusters in qcow2 will be allocated beyond the end of disk. Why would you

Re: [Qemu-block] [PATCH 1/2] iscsi: Translate scsi sense into error code

2015-10-22 Thread Peter Lieven
Am 22.10.2015 um 10:45 schrieb Paolo Bonzini: On 22/10/2015 10:31, Peter Lieven wrote: +switch (sense->key) { +case SCSI_SENSE_NO_SENSE: +return 0; +break; Isn't it dangerous to return 0 (no error) if the status is != SCSI_STATUS_GOOD? Peter

Re: [Qemu-block] [PATCH 1/4] ide/atapi: make PIO read requests async

2015-10-23 Thread Peter Lieven
Am 22.10.2015 um 18:17 schrieb Stefan Hajnoczi: > On Mon, Oct 12, 2015 at 02:27:22PM +0200, Peter Lieven wrote: >> @@ -129,9 +134,71 @@ static int cd_read_sector(IDEState *s, int lba, uint8_t >> *buf, int sector_size) >> ret = -EIO; >> break; >

Re: [Qemu-block] [PATCH 2/4] ide/atapi: blk_aio_readv may return NULL

2015-10-23 Thread Peter Lieven
Am 22.10.2015 um 18:20 schrieb Stefan Hajnoczi: > On Mon, Oct 12, 2015 at 02:27:23PM +0200, Peter Lieven wrote: >> Signed-off-by: Peter Lieven >> --- >> hw/ide/atapi.c | 4 >> 1 file changed, 4 insertions(+) >> >> diff --git a/hw/ide/atapi.c b/hw/ide/a

Re: [Qemu-block] [PATCH] block/nfs: add support for setting debug level

2015-10-26 Thread Peter Lieven
Am 26.10.2015 um 11:45 schrieb Stefan Hajnoczi: On Thu, Oct 22, 2015 at 08:37:19AM +0200, Peter Lieven wrote: Am 22.09.2015 um 08:13 schrieb Peter Lieven: Am 25.06.2015 um 15:18 schrieb Stefan Hajnoczi: On Tue, Jun 23, 2015 at 10:12:15AM +0200, Peter Lieven wrote: upcoming libnfs versions

Re: [Qemu-block] [PATCH V2 0/4] ide: avoid main-loop hang on CDROM/NFS failure

2015-10-26 Thread Peter Lieven
Am 26.10.2015 um 11:42 schrieb Stefan Hajnoczi: On Mon, Oct 12, 2015 at 02:27:21PM +0200, Peter Lieven wrote: This series aims at avoiding a hanging main-loop if a vserver has a CDROM image mounted from a NFS share and that NFS share goes down. Typical situation is that users mount an CDROM ISO

Re: [Qemu-block] [PATCH 3/4] ide: add support for cancelable read requests

2015-10-27 Thread Peter Lieven
Am 26.10.2015 um 11:39 schrieb Stefan Hajnoczi: On Mon, Oct 12, 2015 at 02:27:24PM +0200, Peter Lieven wrote: this patch adds a new aio readv compatible function which copies all data through a bounce buffer. The benefit is that these requests can be flagged as canceled to avoid guest memory

Re: [Qemu-block] [PATCH 3/4] ide: add support for cancelable read requests

2015-10-28 Thread Peter Lieven
Am 28.10.2015 um 12:26 schrieb Stefan Hajnoczi: > On Tue, Oct 27, 2015 at 11:58:55AM +0100, Peter Lieven wrote: >> Am 26.10.2015 um 11:39 schrieb Stefan Hajnoczi: >>> On Mon, Oct 12, 2015 at 02:27:24PM +0200, Peter Lieven wrote: >>>> +BlockAIOCB *ide_readv_c

Re: [Qemu-block] [Qemu-devel] [PATCH 1/4] ide/atapi: make PIO read requests async

2015-11-02 Thread Peter Lieven
Am 03.11.2015 um 01:48 schrieb John Snow: On 10/12/2015 08:27 AM, Peter Lieven wrote: PIO read requests on the ATAPI interface used to be sync blk requests. This has two significant drawbacks. First the main loop hangs util an I/O request is completed and secondly if the I/O request does not

Re: [Qemu-block] [PATCH v2] iscsi: Translate scsi sense into error code

2015-11-04 Thread Peter Lieven
Am 04.11.2015 um 02:36 schrieb Fam Zheng: > Previously we return -EIO blindly when anything goes wrong. Add a helper > function to parse sense fields and try to make the return code more > meaningful. > > This also fixes the default werror configuration (enospc) when we're > using qcow2 on an iscsi

Re: [Qemu-block] [PATCH v3] iscsi: Translate scsi sense into error code

2015-11-05 Thread Peter Lieven
} > > acb->ioh->driver_status = 0; > @@ -905,7 +952,7 @@ retry: > } > > if (iTask.status != SCSI_STATUS_GOOD) { > -return -EIO; > +return iTask.err_code; > } > > iscsi_allocationmap_clear(iscsilun, sector_num, nb_sectors); > @@ -999,7 +1046,7 @@ retry: > } > > if (iTask.status != SCSI_STATUS_GOOD) { > -return -EIO; > +return iTask.err_code; > } > > if (flags & BDRV_REQ_MAY_UNMAP) { Reviewed-by: Peter Lieven

[Qemu-block] [PATCH V4] block/nfs: add support for setting debug level

2015-11-05 Thread Peter Lieven
recent libnfs versions support logging debug messages. Add support for it in qemu through an URL parameter. Example: qemu -cdrom nfs://127.0.0.1/iso/my.iso?debug=2 --- v3->v4: revert to the initial version, but limit max debug level v2->v3: use a per-drive option instead of a global one. [Stefan]

[Qemu-block] [PATCH V3 4/6] ide: orphan all buffered requests on DMA cancel

2015-11-06 Thread Peter Lieven
If the guests canceles a DMA request we can prematurely invoke all callbacks of buffered requests and flag all them as orphaned. Ideally this avoids the need for draining all requests. For CDROM devices this works in 100% of all cases. Signed-off-by: Peter Lieven --- hw/ide/pci.c | 19

[Qemu-block] [PATCH V3 2/6] block: add blk_abort_aio_request

2015-11-06 Thread Peter Lieven
Signed-off-by: Peter Lieven --- block/block-backend.c | 17 + include/sysemu/block-backend.h | 3 +++ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/block/block-backend.c b/block/block-backend.c index 19fdaae..b13dc4e 100644 --- a/block/block-backend.c

[Qemu-block] [PATCH V3 3/6] ide: add support for IDEBufferedRequest

2015-11-06 Thread Peter Lieven
written to the storage. Signed-off-by: Peter Lieven --- hw/ide/core.c | 46 ++ hw/ide/internal.h | 14 ++ 2 files changed, 60 insertions(+) diff --git a/hw/ide/core.c b/hw/ide/core.c index 364ba21..53f9c2c 100644 --- a/hw/ide/core.c

[Qemu-block] [PATCH V3 0/6] ide: avoid main-loop hang on CDROM/NFS failure

2015-11-06 Thread Peter Lieven
. So I would like to start with this version as it is a big improvement already. - Dropped Patch 5 because it is upstream meanwhile. Peter Lieven (6): ide/atapi: make PIO read requests async block: add blk_abort_aio_request ide: add support for IDEBufferedRequest

[Qemu-block] [PATCH V3 1/6] ide/atapi: make PIO read requests async

2015-11-06 Thread Peter Lieven
possible race conditions requests during an ongoing elementary transfer are still sync. Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 97 ++ 1 file changed, 85 insertions(+), 12 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index

[Qemu-block] [PATCH V3 5/6] ide: enable buffered requests for ATAPI devices

2015-11-06 Thread Peter Lieven
Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index 29fd131..2f6d018 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -190,8 +190,8 @@ static int cd_read_sector(IDEState *s, void

[Qemu-block] [PATCH V3 6/6] ide: enable buffered requests for PIO read requests

2015-11-06 Thread Peter Lieven
Signed-off-by: Peter Lieven --- hw/ide/core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/ide/core.c b/hw/ide/core.c index 53f9c2c..d1feae2 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -676,8 +676,8 @@ static void ide_sector_read(IDEState *s

Re: [Qemu-block] [PATCH V4] block/nfs: add support for setting debug level

2015-11-06 Thread Peter Lieven
Am 06.11.2015 um 12:23 schrieb Stefan Hajnoczi: > On Thu, Nov 05, 2015 at 11:25:34PM +0100, Peter Lieven wrote: >> recent libnfs versions support logging debug messages. Add >> support for it in qemu through an URL parameter. >> >> Example: >> qemu -cdrom n

[Qemu-block] [PATCH V5] block/nfs: add support for setting debug level

2015-11-08 Thread Peter Lieven
recent libnfs versions support logging debug messages. Add support for it in qemu through an URL parameter. Example: qemu -cdrom nfs://127.0.0.1/iso/my.iso?debug=2 Signed-off-by: Peter Lieven --- v4->v5: add a comment in the code why we limit the debug level [Stefan] v3->v4: revert

Re: [Qemu-block] [Qemu-devel] [PATCH V3 4/6] ide: orphan all buffered requests on DMA cancel

2015-11-12 Thread Peter Lieven
Am 12.11.2015 um 09:27 schrieb Fam Zheng: On Fri, 11/06 09:42, Peter Lieven wrote: If the guests canceles a DMA request we can prematurely invoke all callbacks of buffered requests and flag all them as orphaned. Ideally this avoids the need for draining all requests. For CDROM devices this

Re: [Qemu-block] [Qemu-devel] [PATCH V3 3/6] ide: add support for IDEBufferedRequest

2015-11-12 Thread Peter Lieven
Am 12.11.2015 um 10:57 schrieb Fam Zheng: On Fri, 11/06 09:42, Peter Lieven wrote: +BlockAIOCB *ide_buffered_readv(IDEState *s, int64_t sector_num, + QEMUIOVector *iov, int nb_sectors, + BlockCompletionFunc *cb, void *opaque

Re: [Qemu-block] [Qemu-devel] [PATCH V3 5/6] ide: enable buffered requests for ATAPI devices

2015-11-12 Thread Peter Lieven
Am 12.11.2015 um 12:25 schrieb Fam Zheng: On Fri, 11/06 09:42, Peter Lieven wrote: Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index 29fd131..2f6d018 100644 --- a/hw/ide/atapi.c

Re: [Qemu-block] [Qemu-devel] [PATCH V3 0/6] ide: avoid main-loop hang on CDROM/NFS failure

2015-11-12 Thread Peter Lieven
Am 12.11.2015 um 12:33 schrieb Fam Zheng: On Fri, 11/06 09:42, Peter Lieven wrote: This series aims at avoiding a hanging main-loop if a vserver has a CDROM image mounted from a NFS share and that NFS share goes down. Typical situation is that users mount an CDROM ISO to install something and

[Qemu-block] [PATCH V4 2/6] block: add blk_abort_aio_request

2015-11-12 Thread Peter Lieven
Signed-off-by: Peter Lieven --- block/block-backend.c | 17 + include/sysemu/block-backend.h | 3 +++ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/block/block-backend.c b/block/block-backend.c index 6f9309f..701234e 100644 --- a/block/block-backend.c

[Qemu-block] [PATCH V4 1/6] ide/atapi: make PIO read requests async

2015-11-12 Thread Peter Lieven
possible race conditions requests during an ongoing elementary transfer are still sync. Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 97 ++ 1 file changed, 85 insertions(+), 12 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index

[Qemu-block] [PATCH V4 5/6] ide: enable buffered requests for ATAPI devices

2015-11-12 Thread Peter Lieven
Signed-off-by: Peter Lieven --- hw/ide/atapi.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index cfd2d63..d1eaa29 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -190,8 +190,8 @@ static int cd_read_sector(IDEState *s

[Qemu-block] [PATCH V4 0/6] ide: avoid main-loop hang on CDROM/NFS failure

2015-11-12 Thread Peter Lieven
improvement already. - Dropped Patch 5 because it is upstream meanwhile. Peter Lieven (6): ide/atapi: make PIO read requests async block: add blk_abort_aio_request ide: add support for IDEBufferedRequest ide: orphan all buffered requests on DMA cancel ide: enable buffered

[Qemu-block] [PATCH V4 4/6] ide: orphan all buffered requests on DMA cancel

2015-11-12 Thread Peter Lieven
If the guests canceles a DMA request we can prematurely invoke all callbacks of buffered requests and flag all them as orphaned. Ideally this avoids the need for draining all requests. For CDROM devices this works in 100% of all cases. Signed-off-by: Peter Lieven --- hw/ide/pci.c | 19

[Qemu-block] [PATCH V4 6/6] ide: enable buffered requests for PIO read requests

2015-11-12 Thread Peter Lieven
Signed-off-by: Peter Lieven --- hw/ide/core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/ide/core.c b/hw/ide/core.c index 7ca67bc..b9b531c 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -677,8 +677,8 @@ static void ide_sector_read(IDEState *s

[Qemu-block] [PATCH V4 3/6] ide: add support for IDEBufferedRequest

2015-11-12 Thread Peter Lieven
written to the storage. Signed-off-by: Peter Lieven --- hw/ide/core.c | 47 +++ hw/ide/internal.h | 14 ++ 2 files changed, 61 insertions(+) diff --git a/hw/ide/core.c b/hw/ide/core.c index 364ba21..7ca67bc 100644 --- a/hw/ide/core.c

Re: [Qemu-block] [PATCH V5] block/nfs: add support for setting debug level

2015-11-13 Thread Peter Lieven
Am 13.11.2015 um 10:45 schrieb Stefan Hajnoczi: > On Mon, Nov 09, 2015 at 08:09:33AM +0100, Peter Lieven wrote: >> recent libnfs versions support logging debug messages. Add >> support for it in qemu through an URL parameter. >> >> Example: >> qemu -cdrom n

Re: [Qemu-block] [Qemu-devel] [PATCH V4 1/6] ide/atapi: make PIO read requests async

2015-11-13 Thread Peter Lieven
> Am 13.11.2015 um 23:42 schrieb John Snow : > > > >> On 11/12/2015 11:30 AM, Peter Lieven wrote: >> PIO read requests on the ATAPI interface used to be sync blk requests. >> This has two significant drawbacks. First the main loop hangs util an >> I/O requ

Re: [Qemu-block] [Qemu-devel] [PATCH V4 0/6] ide: avoid main-loop hang on CDROM/NFS failure

2015-11-16 Thread Peter Lieven
Am 16.11.2015 um 07:17 schrieb Fam Zheng: On Fri, 11/13 17:44, John Snow wrote: On 11/12/2015 11:30 AM, Peter Lieven wrote: This series aims at avoiding a hanging main-loop if a vserver has a CDROM image mounted from a NFS share and that NFS share goes down. Typical situation is that users

[Qemu-block] [PATCH] tests: fix cdrom_pio_impl in ide-test

2015-11-20 Thread Peter Lieven
transfers the data. Signed-off-by: Peter Lieven --- tests/ide-test.c | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/tests/ide-test.c b/tests/ide-test.c index d1014bb..fc1ce52 100644 --- a/tests/ide-test.c +++ b/tests/ide-test.c @@ -699,24 +699,19 @@ static

Re: [Qemu-block] [PATCH] fix:readcapacity 10 failure shown even 16 sent

2015-12-10 Thread Peter Lieven
Am 10.12.2015 um 09:55 schrieb Paolo Bonzini: On 10/12/2015 03:59, Zhu Lingshan wrote: -if (task == NULL || task->status != SCSI_STATUS_GOOD) { +if ((rc16 != NULL) && ((task == NULL) || (task->status != SCSI_STATUS_GOOD))) { +error_setg(errp, "iSCSI: failed to send readcapacity

Re: [Qemu-block] [Qemu-devel] [PATCH] send readcapacity10 when readcapacity16 failed

2016-01-11 Thread Peter Lieven
Am 07.01.2016 um 11:07 schrieb Paolo Bonzini: > > On 06/01/2016 18:57, John Snow wrote: >> Ronnie: Thanks for the explanation! >> >> Zhu: In light of this, can the patch be reworked slightly to explicitly >> check *why* READCAPACITY16 failed and only attempt the READCAPACITY10 as >> a fallback if i

Re: [Qemu-block] [PATCH V5] block/nfs: add support for setting debug level

2016-01-11 Thread Peter Lieven
Am 13.11.2015 um 10:45 schrieb Stefan Hajnoczi: > On Mon, Nov 09, 2015 at 08:09:33AM +0100, Peter Lieven wrote: >> recent libnfs versions support logging debug messages. Add >> support for it in qemu through an URL parameter. >> >> Example: >> qemu -cdrom n

Re: [Qemu-block] [Qemu-devel] block/nfs: Fine grained runtime options in nfs

2016-10-18 Thread Peter Lieven
Am 17.10.2016 um 21:34 schrieb Ashijeet Acharya: On Tue, Oct 18, 2016 at 12:59 AM, Eric Blake wrote: On 10/17/2016 01:00 PM, Ashijeet Acharya wrote: One more relatively easy question though, will we include @port as an option in runtime_opts while converting NFS to use several runtime_opts? T

Re: [Qemu-block] [PATCH 4/4] block: Cater to iscsi with non-power-of-2 discard

2016-10-25 Thread Peter Lieven
Am 01.08.2016 um 11:22 schrieb Paolo Bonzini: On 28/07/2016 04:39, Eric Blake wrote: On 07/27/2016 01:25 AM, Fam Zheng wrote: On Thu, 07/21 13:34, Eric Blake wrote: +max_write_zeroes = max_write_zeroes / alignment * alignment; Not using QEMU_ALIGN_DOWN despite patch 3? Looks like I miss

Re: [Qemu-block] [PATCH 4/4] block: Cater to iscsi with non-power-of-2 discard

2016-10-25 Thread Peter Lieven
Am 25.10.2016 um 14:09 schrieb Paolo Bonzini: On 25/10/2016 14:03, Peter Lieven wrote: Am 01.08.2016 um 11:22 schrieb Paolo Bonzini: On 28/07/2016 04:39, Eric Blake wrote: On 07/27/2016 01:25 AM, Fam Zheng wrote: On Thu, 07/21 13:34, Eric Blake wrote: +max_write_zeroes

Re: [Qemu-block] [PATCH 4/4] block: Cater to iscsi with non-power-of-2 discard

2016-10-25 Thread Peter Lieven
Am 25.10.2016 um 14:19 schrieb Paolo Bonzini: On 25/10/2016 14:12, Peter Lieven wrote: Am 25.10.2016 um 14:09 schrieb Paolo Bonzini: On 25/10/2016 14:03, Peter Lieven wrote: Am 01.08.2016 um 11:22 schrieb Paolo Bonzini: On 28/07/2016 04:39, Eric Blake wrote: On 07/27/2016 01:25 AM, Fam

Re: [Qemu-block] [PATCH 4/4] block: Cater to iscsi with non-power-of-2 discard

2016-10-25 Thread Peter Lieven
Am 25.10.2016 um 15:59 schrieb Eric Blake: On 10/25/2016 07:42 AM, Peter Lieven wrote: But hey, that firmware is seriously weird. :) Yes, so you would not change the new implementation? Even if the discard is e.g. 1MB it could theretically be that internally the device has a finer granularity

Re: [Qemu-block] [PATCH v2 1/2] block/nfs: Introduce runtime_opts in NFS

2016-10-25 Thread Peter Lieven
Am 25.10.2016 um 16:02 schrieb Kevin Wolf: Peter, there is a question for you hidden somewhere below. Am 24.10.2016 um 21:27 hat Ashijeet Acharya geschrieben: Make NFS block driver use various fine grained runtime_opts. Set .bdrv_parse_filename() to nfs_parse_filename() and introduce two new fu

[Qemu-block] nbd max request size

2016-10-27 Thread Peter Lieven
Hi, while talking to a very old NBD server from a recent Qemu Version i noticed that the max request size for NBD changed from 1MB to 32MB somewhen in the past with commit commit 2d8214885942becb8f4371a66d6f8c9a9580108a Author: Stefan Hajnoczi Date: Thu May 2 14:23:08 2013 +0200 nbd: su

Re: [Qemu-block] [PATCH 4/4] block: Cater to iscsi with non-power-of-2 discard

2016-11-08 Thread Peter Lieven
Am 25.10.2016 um 18:12 schrieb Eric Blake: On 10/25/2016 09:36 AM, Paolo Bonzini wrote: On 25/10/2016 16:35, Eric Blake wrote: So your argument is that we should always pass down every unaligned less-than-optimum discard request all the way to the hardware, rather than dropping it higher in th

Re: [Qemu-block] [Qemu-stable] [PATCH 2/2] block: Pass unaligned discard requests to drivers

2016-11-11 Thread Peter Lieven
d request is to silently ignore that > portion of the discard request; but for devices that can pass > the partial request all the way down to hardware, this can > result in the hardware coalescing requests and discarding > aligned pages after all. > > Reported by: Peter Lieven >

Re: [Qemu-block] [PATCH v2 5/9] block: Pass unaligned discard requests to drivers

2016-11-21 Thread Peter Lieven
Am 19.11.2016 um 23:05 schrieb Max Reitz: On 18.11.2016 02:13, Eric Blake wrote: On 11/17/2016 05:44 PM, Max Reitz wrote: Since the SCSI specification says nothing about a minimum discard granularity, and only documents the preferred alignment, it is best if the block layer gives the driver eve

[Qemu-block] [PATCH] block/iscsi: avoid data corruption with cache=writeback

2017-01-16 Thread Peter Lieven
Fixes: e1123a3b40a1a9a625a29c8ed4debb7e206ea690 Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven --- block/iscsi.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/block/iscsi.c b/block/iscsi.c index 6aeeb9e..1860f1b 100644 --- a/block/iscsi.c +++ b/block/iscsi.c @@ -499,14 +4

Re: [Qemu-block] [Qemu-stable] [PATCH] block/iscsi: avoid data corruption with cache=writeback

2017-01-17 Thread Peter Lieven
Am 17.01.2017 um 12:28 schrieb Fam Zheng: On Mon, 01/16 16:17, Peter Lieven wrote: nb_cls_shrunk in iscsi_allocmap_update can become -1 if the request starts and ends within the same cluster. This results in passing -1 to bitmap_set and bitmap_clear and they don't handle negative v

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-17 Thread Peter Lieven
Am 31.10.2016 um 18:20 schrieb Kevin Wolf: Am 31.10.2016 um 16:05 hat Ashijeet Acharya geschrieben: Previously posted series patches: v5: https://lists.gnu.org/archive/html/qemu-devel/2016-10/msg07580.html v4: https://lists.gnu.org/archive/html/qemu-devel/2016-10/msg07449.html v3: https://lists.

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-19 Thread Peter Lieven
Am 18.01.2017 um 10:59 schrieb Kevin Wolf: Am 17.01.2017 um 16:14 hat Peter Lieven geschrieben: Am 31.10.2016 um 18:20 schrieb Kevin Wolf: Am 31.10.2016 um 16:05 hat Ashijeet Acharya geschrieben: Previously posted series patches: v5: https://lists.gnu.org/archive/html/qemu-devel/2016-10

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-19 Thread Peter Lieven
Am 19.01.2017 um 16:42 schrieb Kevin Wolf: Am 19.01.2017 um 16:34 hat Peter Lieven geschrieben: Am 19.01.2017 um 16:20 schrieb Kevin Wolf: Am 19.01.2017 um 15:59 hat Eric Blake geschrieben: On 01/19/2017 08:30 AM, Peter Lieven wrote: qemu-img: Could not open 'nfs://172.21.200.61/vcor

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-19 Thread Peter Lieven
Am 19.01.2017 um 16:42 schrieb Kevin Wolf: Am 19.01.2017 um 16:34 hat Peter Lieven geschrieben: Am 19.01.2017 um 16:20 schrieb Kevin Wolf: Am 19.01.2017 um 15:59 hat Eric Blake geschrieben: On 01/19/2017 08:30 AM, Peter Lieven wrote: qemu-img: Could not open 'nfs://172.21.200.61/vcor

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-19 Thread Peter Lieven
Am 19.01.2017 um 16:20 schrieb Kevin Wolf: Am 19.01.2017 um 15:59 hat Eric Blake geschrieben: On 01/19/2017 08:30 AM, Peter Lieven wrote: qemu-img: Could not open 'nfs://172.21.200.61/vcore-dev-cdrom/templates/VC_debian8-20170116.qcow2,linux?readahead=131072': Block protocol &#x

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-19 Thread Peter Lieven
Am 19.01.2017 um 16:55 schrieb Kevin Wolf: Am 19.01.2017 um 16:44 hat Peter Lieven geschrieben: Am 19.01.2017 um 16:42 schrieb Kevin Wolf: Am 19.01.2017 um 16:34 hat Peter Lieven geschrieben: Am 19.01.2017 um 16:20 schrieb Kevin Wolf: Am 19.01.2017 um 15:59 hat Eric Blake geschrieben: On 01

[Qemu-block] [PATCH] qemu-img: optimize is_allocated_sectors_min

2017-01-19 Thread Peter Lieven
the current implementation always splits requests if a buffer begins or ends with zeroes independent of the length of the zero area. Change this to really only split off zero areas that have at least a length of 'min' bytes. Signed-off-by: Peter Lieven --- qemu-

Re: [Qemu-block] [PATCH] qemu-img: optimize is_allocated_sectors_min

2017-01-19 Thread Peter Lieven
Please ignore this one The code was suboptimal. Will send v2. Peter Am 19.01.2017 um 16:56 schrieb Peter Lieven: the current implementation always splits requests if a buffer begins or ends with zeroes independent of the length of the zero area. Change this to really only split off zero areas

[Qemu-block] qemu-img: complains about missing iscsi option group

2017-01-19 Thread Peter Lieven
Hi all, since commit f57b4b5 (blockdev: prepare iSCSI block driver for dynamic loading) qemu-img complains about a missing option group several times. ~/git/qemu$ ./qemu-img info iscsi://172.21.200.56:3260/iqn.2001-05.com.equallogic:0-8a0906-69d384e0a-aa3004e55e15878d-00lieven-data/0 qemu-im

[Qemu-block] [PATCH V2] qemu-img: optimize is_allocated_sectors_min

2017-01-19 Thread Peter Lieven
the current implementation always splits requests if a buffer begins or ends with zeroes independent of the length of the zero area. Change this to really only split off zero areas that have at least a length of 'min' bytes. Signed-off-by: Peter Lieven --- qemu-

Re: [Qemu-block] [Qemu-devel] qemu-img: complains about missing iscsi option group

2017-01-19 Thread Peter Lieven
Am 19.01.2017 um 17:38 schrieb Daniel P. Berrange: On Thu, Jan 19, 2017 at 05:30:20PM +0100, Peter Lieven wrote: Hi all, since commit f57b4b5 (blockdev: prepare iSCSI block driver for dynamic loading) qemu-img complains about a missing option group several times. ~/git/qemu$ ./qemu-img

Re: [Qemu-block] [PATCH v6 0/2] allow blockdev-add for NFS

2017-01-19 Thread Peter Lieven
Am 19.01.2017 um 18:08 schrieb Kevin Wolf: Am 19.01.2017 um 16:58 hat Peter Lieven geschrieben: Am 19.01.2017 um 16:55 schrieb Kevin Wolf: Am 19.01.2017 um 16:44 hat Peter Lieven geschrieben: Am 19.01.2017 um 16:42 schrieb Kevin Wolf: Am 19.01.2017 um 16:34 hat Peter Lieven geschrieben: Am

[Qemu-block] [PATCH 1/2] block/nfs: fix NULL pointer dereference in URI parsing

2017-01-20 Thread Peter Lieven
parse_uint_full wants to put the parsed value into the variabled passed via its second argument which is NULL. Fixes: 94d6a7a76e9df9919629428f6c598e2b97d9426c Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven --- block/nfs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff

[Qemu-block] [PATCH 2/2] block/nfs: fix naming of runtime opts

2017-01-20 Thread Peter Lieven
: Peter Lieven --- block/nfs.c | 30 +++--- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/block/nfs.c b/block/nfs.c index baaecff..464d547 100644 --- a/block/nfs.c +++ b/block/nfs.c @@ -359,27 +359,27 @@ static QemuOptsList runtime_opts

[Qemu-block] [PATCH 0/2] block/nfs: fix segfault and naming of runtime opts

2017-01-20 Thread Peter Lieven
commit 94d6a7a accidently left the naming of runtime opts and QAPI scheme inconsistent. Furthermore a NULL pointer dereference resulted in a segfault when parsing URI parameters. Peter Lieven (2): block/nfs: fix NULL pointer dereference in URI parsing block/nfs: fix naming of runtime opts

Re: [Qemu-block] [PATCH V2] qemu-img: optimize is_allocated_sectors_min

2017-01-23 Thread Peter Lieven
Am 21.01.2017 um 20:58 schrieb Max Reitz: On 19.01.2017 17:35, Peter Lieven wrote: the current implementation always splits requests if a buffer begins or ends with zeroes independent of the length of the zero area. Change this to really only split off zero areas that have at least a length of

Re: [Qemu-block] qemu-img: complains about missing iscsi option group

2017-01-24 Thread Peter Lieven
Am 24.01.2017 um 12:24 schrieb Paolo Bonzini: On 19/01/2017 18:03, Daniel P. Berrange wrote: Move the iscsi option registration out of vl.c and back into a shared file in block/ such that all programs see the options, not just the emulators. Any preference which file? It seems no other block d

Re: [Qemu-block] qemu-img: complains about missing iscsi option group

2017-01-24 Thread Peter Lieven
Am 24.01.2017 um 12:29 schrieb Paolo Bonzini: On 24/01/2017 12:25, Peter Lieven wrote: Am 24.01.2017 um 12:24 schrieb Paolo Bonzini: On 19/01/2017 18:03, Daniel P. Berrange wrote: Move the iscsi option registration out of vl.c and back into a shared file in block/ such that all programs see

[Qemu-block] [PATCH] block/iscsi: statically link qemu_iscsi_opts

2017-01-24 Thread Peter Lieven
commit f57b4b5f moved qemu_iscsi_opts into vl.c. This made them invisible for qemu-img, qemu-nbd etc. Fixes: f57b4b5fb127b60e1aade2684a8b16bc4f630b29 Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven --- MAINTAINERS | 1 + block/Makefile.objs | 1 + block/iscsi-opts.c | 71

Re: [Qemu-block] [PATCH] block/iscsi: statically link qemu_iscsi_opts

2017-01-24 Thread Peter Lieven
Am 24.01.2017 um 13:52 schrieb Paolo Bonzini: On 24/01/2017 13:49, Peter Lieven wrote: +#ifdef CONFIG_LIBISCSI The #ifdef is not needed here. Right, can you drop it or shall I send a V2? Peter Paolo +static QemuOptsList qemu_iscsi_opts = { +.name = "iscsi",

[Qemu-block] [PATCH V2 0/2] fix segfault and naming of runtime opts

2017-01-31 Thread Peter Lieven
ric] Peter Lieven (2): block/nfs: fix NULL pointer dereference in URI parsing block/nfs: fix naming of runtime opts block/nfs.c | 33 + 1 file changed, 17 insertions(+), 16 deletions(-) -- 1.9.1

[Qemu-block] [PATCH V2 2/2] block/nfs: fix naming of runtime opts

2017-01-31 Thread Peter Lieven
2.8 release is the only version that had the wrong naming. Furthermore release 2.8 suffered from a NULL pointer deference during URI parsing. Fixes: 94d6a7a76e9df9919629428f6c598e2b97d9426c Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven Reviewed-by: Eric Blake --- block/nfs.c | 30

[Qemu-block] [PATCH V2 1/2] block/nfs: fix NULL pointer dereference in URI parsing

2017-01-31 Thread Peter Lieven
parse_uint_full wants to put the parsed value into the variable passed via its second argument which is NULL. Fixes: 94d6a7a76e9df9919629428f6c598e2b97d9426c Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven Reviewed-by: Eric Blake --- block/nfs.c | 3 ++- 1 file changed, 2 insertions

Re: [Qemu-block] [PATCH V2 2/2] block/nfs: fix naming of runtime opts

2017-02-01 Thread Peter Lieven
Am 01.02.2017 um 02:06 schrieb Max Reitz: > On 31.01.2017 16:56, Peter Lieven wrote: >> commit 94d6a7a accidently left the naming of runtime opts and QAPI >> scheme inconsistent. As one consequence passing of parameters in the >> URI is broken. Sync the naming of the run

[Qemu-block] [PATCH V3 2/2] block/nfs: fix naming of runtime opts

2017-02-01 Thread Peter Lieven
2.8 release is the only version that had the wrong naming. Furthermore release 2.8 suffered from a NULL pointer dereference during URI parsing. Fixes: 94d6a7a76e9df9919629428f6c598e2b97d9426c Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven --- block/nfs.c | 46

[Qemu-block] [PATCH V3 1/2] block/nfs: fix NULL pointer dereference in URI parsing

2017-02-01 Thread Peter Lieven
parse_uint_full wants to put the parsed value into the variable passed via its second argument which is NULL. Fixes: 94d6a7a76e9df9919629428f6c598e2b97d9426c Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Lieven Reviewed-by: Eric Blake --- block/nfs.c | 3 ++- 1 file changed, 2 insertions

[Qemu-block] [PATCH V3 0/2] fix segfault and naming of runtime opts

2017-02-01 Thread Peter Lieven
v2->v3: Patch 2: also change names in nfs_refresh_filename [Max] fix typo in commit msg [Eric] Peter Lieven (2): block/nfs: fix NULL pointer dereference in URI parsing block/nfs: fix naming of runtime opts block/nfs.c | 49 +

[Qemu-block] [RFC][PATCH] qemu-img: make convert async

2017-02-02 Thread Peter Lieven
I would expect the runtime to be as slow as the slowest of the two involved transfers. Thank you, Peter Signed-off-by: Peter Lieven --- qemu-img.c | 271 + 1 file changed, 199 insertions(+), 72 deletions(-) diff --git a/qemu-img.c b/qemu-i

Re: [Qemu-block] [RFC][PATCH] qemu-img: make convert async

2017-02-13 Thread Peter Lieven
Am 12.02.2017 um 03:06 schrieb Max Reitz: On 02.02.2017 17:06, Peter Lieven wrote: this is something I have been thinking about for almost 2 years now. we heavily have the following two use cases when using qemu-img convert. a) reading from NFS and writing to iSCSI for deploying templates b

[Qemu-block] [RFC PATCH V2] qemu-img: make convert async

2017-02-13 Thread Peter Lieven
f the two involved transfers. Thank you, Peter Signed-off-by: Peter Lieven --- v1->v2: - using coroutine as worker "threads". [Max] - keeping the request queue as otherwise it happens that we wait on BLK_ZERO chunks while keeping the write order. it also avoid

[Qemu-block] [RFC PATCH V3] qemu-img: make convert async

2017-02-14 Thread Peter Lieven
s ram -> iscsi 11.7 secs Comments appreciated. Thank you, Peter Signed-off-by: Peter Lieven --- v2->v3: - updated stats in the commit msg from a host with a better network card - only wake up the coroutine that is acutally waiting for a write to complete. this was not only

Re: [Qemu-block] [RFC PATCH V3] qemu-img: make convert async

2017-02-14 Thread Peter Lieven
Von: Kevin Wolf An: Peter Lieven Kopie: , , , Gesendet: 14.02.2017 17:20 Betreff: Re: [RFC PATCH V3] qemu-img: make convert async Am 14.02.2017 um 14:39 hat Peter Lieven geschrieben: > this is something I have been thinking about for almost 2 years now. > we h

  1   2   3   4   5   6   7   >