All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5] libxl: add option for discard support to xl disk configuration
@ 2014-05-09 12:09 Olaf Hering
  2014-05-09 12:18 ` Olaf Hering
  2014-05-12 14:29 ` Ian Jackson
  0 siblings, 2 replies; 13+ messages in thread
From: Olaf Hering @ 2014-05-09 12:09 UTC (permalink / raw)
  To: xen-devel; +Cc: Olaf Hering, ian.jackson, ian.campbell, stefano.stabellini

Handle new boolean option discard/no-discard for disk configuration. It
is supposed to disable discard support if file based backing storage was
intentionally created non-sparse to avoid fragmentation of the file.

The option intended for the backend driver. A new boolean property
"discard-enable" is written to the backend node. An upcoming patch for
qemu will make use of this property. The kernel blkback driver may be
updated as well to disable discard for phy based backing storage.

v5:
replace option discard=0|1 with boolean discard/no-discard
adjust wording in xl-disk-configuration.txt and blkif.h
call libxl_defbool_setdefault directly
adjust linewarapping in device_disk_add
v4:
rebase ontop of commit 6ec48cf4 (direct_io_safe)
rebase ontop of fixup commit for 6ec48cf4 (direct_io_safe)
add testcases to tools/libxl/check-xl-disk-parse
v3:
enable discard unconditionally by always writing discard-enable=1 to xenstore
fix typos in xl-disk-configuration.txt
update description in blkif.h, property should be ignored if unsupported
v2:
rename xenstore property from discard_enable to discard-enable
update description in xl-disk-configuration.txt
use libxl_defbool as type for discard_enable
update check-xl-disk-parse to use "<default>"
add LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_ENABLE to libxl.h

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Ian Campbell <ian.campbell@citrix.com>
---

Please rerun bison/flex due to changes to .l files
Also note the change to the .idl file


 docs/misc/xl-disk-configuration.txt | 17 ++++++++
 tools/libxl/check-xl-disk-parse     | 80 +++++++++++++++++++++++++++++++++----
 tools/libxl/libxl.c                 |  3 ++
 tools/libxl/libxl.h                 |  5 +++
 tools/libxl/libxl_types.idl         |  1 +
 tools/libxl/libxlu_disk.c           |  1 +
 tools/libxl/libxlu_disk_l.l         |  2 +
 xen/include/public/io/blkif.h       | 10 +++++
 8 files changed, 112 insertions(+), 7 deletions(-)

diff --git a/docs/misc/xl-disk-configuration.txt b/docs/misc/xl-disk-configuration.txt
index 11fee9a..8421e8a 100644
--- a/docs/misc/xl-disk-configuration.txt
+++ b/docs/misc/xl-disk-configuration.txt
@@ -217,6 +217,23 @@ If in the future the bug is fixed properly this option will then be
 silently ignored.
 
 
+discard / no-discard
+---------------
+
+Description:           Request backend to advertise discard support to frontend
+Supported values:      discard
+                       no-discard
+Mandatory:             No
+Default value:         discard
+
+An advisory setting for the backend driver, specifying whether, to
+advertise discard support (TRIM, UNMAP) to the frontend.  The real
+benefit of this option is to be able to force it off rather than on.  It
+can be used to disable "hole punching" for file based backends which
+were intentionally created non-sparse to avoid fragmentation of the
+file.
+
+
 ============================================
 DEPRECATED PARAMETERS, PREFIXES AND SYNTAXES
 ============================================
diff --git a/tools/libxl/check-xl-disk-parse b/tools/libxl/check-xl-disk-parse
index 0698586..1bec4ca 100755
--- a/tools/libxl/check-xl-disk-parse
+++ b/tools/libxl/check-xl-disk-parse
@@ -62,7 +62,8 @@ disk: {
     "removable": 0,
     "readwrite": 1,
     "is_cdrom": 0,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "True"
 }
 
 END
@@ -84,7 +85,8 @@ disk: {
     "removable": 1,
     "readwrite": 0,
     "is_cdrom": 1,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "False"
 }
 
 END
@@ -107,7 +109,8 @@ disk: {
     "removable": 0,
     "readwrite": 1,
     "is_cdrom": 0,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "True"
 }
 
 EOF
@@ -125,7 +128,8 @@ disk: {
     "removable": 1,
     "readwrite": 0,
     "is_cdrom": 1,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "False"
 }
 
 EOF
@@ -147,7 +151,8 @@ disk: {
     "removable": 1,
     "readwrite": 0,
     "is_cdrom": 1,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "False"
 }
 
 EOF
@@ -166,7 +171,8 @@ disk: {
     "removable": 0,
     "readwrite": 1,
     "is_cdrom": 0,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "True"
 }
 
 EOF
@@ -187,7 +193,8 @@ disk: {
     "removable": 0,
     "readwrite": 1,
     "is_cdrom": 0,
-    "direct_io_safe": false
+    "direct_io_safe": false,
+    "discard_enable": "True"
 }
 
 EOF
@@ -196,4 +203,63 @@ EOF
 # http://www.drbd.org/users-guide-emb/s-xen-configure-domu.html
 one 0 drbd:app01,hda,w
 
+expected <<END
+disk: {
+    "backend_domid": 0,
+    "backend_domname": null,
+    "pdev_path": "/some/disk/image.raw",
+    "vdev": "hda",
+    "backend": "unknown",
+    "format": "raw",
+    "script": null,
+    "removable": 0,
+    "readwrite": 1,
+    "is_cdrom": 0,
+    "direct_io_safe": false,
+    "discard_enable": "True"
+}
+
+END
+one 0  discard=on  vdev=hda target=/some/disk/image.raw
+one 0  discard=1   vdev=hda target=/some/disk/image.raw
+
+expected <<END
+disk: {
+    "backend_domid": 0,
+    "backend_domname": null,
+    "pdev_path": "/some/disk/image.raw",
+    "vdev": "hda",
+    "backend": "unknown",
+    "format": "raw",
+    "script": null,
+    "removable": 0,
+    "readwrite": 1,
+    "is_cdrom": 0,
+    "direct_io_safe": false,
+    "discard_enable": "False"
+}
+
+END
+one 0  discard vdev=hda target=/some/disk/image.raw
+one 0  discard vdev=hda target=/some/disk/image.raw
+
+expected <<END
+disk: {
+    "backend_domid": 0,
+    "backend_domname": null,
+    "pdev_path": "/some/disk/image.iso",
+    "vdev": "hda",
+    "backend": "unknown",
+    "format": "raw",
+    "script": null,
+    "removable": 1,
+    "readwrite": 0,
+    "is_cdrom": 1,
+    "direct_io_safe": false,
+    "discard_enable": "False"
+}
+
+END
+one 0  cdrom no-discard vdev=hda target=/some/disk/image.iso
+
 complete
diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
index 2a876b9..c3a9236 100644
--- a/tools/libxl/libxl.c
+++ b/tools/libxl/libxl.c
@@ -2476,6 +2476,9 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
             flexarray_append(back, "direct-io-safe");
             flexarray_append(back, "1");
         }
+        flexarray_append_pair(back, "discard-enable",
+                              libxl_defbool_val(disk->discard_enable) ?
+                              "1" : "0");
 
         flexarray_append(front, "backend-id");
         flexarray_append(front, libxl__sprintf(gc, "%d", disk->backend_domid));
diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
index 872a618..6cca2ef 100644
--- a/tools/libxl/libxl.h
+++ b/tools/libxl/libxl.h
@@ -102,6 +102,11 @@
 #define LIBXL_HAVE_DEVICE_DISK_DIRECT_IO_SAFE 1
 
 /*
+ * The libxl_device_disk has the discard_enable field.
+ */
+#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_ENABLE 1
+
+/*
  * libxl ABI compatibility
  *
  * The only guarantee which libxl makes regarding ABI compatibility
diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
index 81471c8..c2bee07 100644
--- a/tools/libxl/libxl_types.idl
+++ b/tools/libxl/libxl_types.idl
@@ -417,6 +417,7 @@ libxl_device_disk = Struct("device_disk", [
     ("readwrite", integer),
     ("is_cdrom", integer),
     ("direct_io_safe", bool),
+    ("discard_enable", libxl_defbool),
     ])
 
 libxl_device_nic = Struct("device_nic", [
diff --git a/tools/libxl/libxlu_disk.c b/tools/libxl/libxlu_disk.c
index 18fe386..752a2c7 100644
--- a/tools/libxl/libxlu_disk.c
+++ b/tools/libxl/libxlu_disk.c
@@ -79,6 +79,7 @@ int xlu_disk_parse(XLU_Config *cfg,
         if (!disk->pdev_path || !strcmp(disk->pdev_path, ""))
             disk->format = LIBXL_DISK_FORMAT_EMPTY;
     }
+    libxl_defbool_setdefault(&disk->discard_enable, !!disk->readwrite);
 
     if (!disk->vdev) {
         xlu__disk_err(&dpc,0, "no vdev specified");
diff --git a/tools/libxl/libxlu_disk_l.l b/tools/libxl/libxlu_disk_l.l
index ba8577c..1a5deb5 100644
--- a/tools/libxl/libxlu_disk_l.l
+++ b/tools/libxl/libxlu_disk_l.l
@@ -174,6 +174,8 @@ backendtype=[^,]*,? { STRIP(','); setbackendtype(DPC,FROMEQUALS); }
 vdev=[^,]*,?	{ STRIP(','); SAVESTRING("vdev", vdev, FROMEQUALS); }
 script=[^,]*,?	{ STRIP(','); SAVESTRING("script", script, FROMEQUALS); }
 direct-io-safe,? { DPC->disk->direct_io_safe = 1; }
+discard,?	{ libxl_defbool_set(&DPC->disk->discard_enable, true); }
+no-discard,?	{ libxl_defbool_set(&DPC->disk->discard_enable, false); }
 
  /* the target magic parameter, eats the rest of the string */
 
diff --git a/xen/include/public/io/blkif.h b/xen/include/public/io/blkif.h
index 1e7cea9..6baf7fb 100644
--- a/xen/include/public/io/blkif.h
+++ b/xen/include/public/io/blkif.h
@@ -197,6 +197,16 @@
  *
  *------------------------- Backend Device Properties -------------------------
  *
+ * discard-enable
+ *      Values:         0/1 (boolean)
+ *      Default Value:  1
+ *
+ *      This optional property, set by the toolstack, instructs the backend
+ *      to offer discard to the frontend. If the property is missing the
+ *      backend should offer discard if the backing storage actually supports
+ *      it. This optional property, set by the toolstack, requests that the
+ *      backend offer, or not offer, discard to the frontend.
+ *
  * discard-alignment
  *      Values:         <uint32_t>
  *      Default Value:  0

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-09 12:09 [PATCH v5] libxl: add option for discard support to xl disk configuration Olaf Hering
@ 2014-05-09 12:18 ` Olaf Hering
  2014-05-12 14:28   ` Ian Jackson
  2014-05-12 14:29 ` Ian Jackson
  1 sibling, 1 reply; 13+ messages in thread
From: Olaf Hering @ 2014-05-09 12:18 UTC (permalink / raw)
  To: stefano.stabellini; +Cc: ian.jackson, ian.campbell, xen-devel

On Fri, May 09, Olaf Hering wrote:

> Handle new boolean option discard/no-discard for disk configuration. It
> is supposed to disable discard support if file based backing storage was
> intentionally created non-sparse to avoid fragmentation of the file.
> 
> The option intended for the backend driver. A new boolean property
> "discard-enable" is written to the backend node. An upcoming patch for
> qemu will make use of this property. The kernel blkback driver may be
> updated as well to disable discard for phy based backing storage.

Stefano,

please backport these changes from qemu.git to qemu-xen.git so that
discard:

58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support

Thanks.

Olaf

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-09 12:18 ` Olaf Hering
@ 2014-05-12 14:28   ` Ian Jackson
  2014-05-12 14:37     ` Olaf Hering
  0 siblings, 1 reply; 13+ messages in thread
From: Ian Jackson @ 2014-05-12 14:28 UTC (permalink / raw)
  To: Olaf Hering; +Cc: xen-devel, ian.campbell, stefano.stabellini

Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard support to xl disk configuration"):
> On Fri, May 09, Olaf Hering wrote:
> > Handle new boolean option discard/no-discard for disk configuration. It
> > is supposed to disable discard support if file based backing storage was
> > intentionally created non-sparse to avoid fragmentation of the file.
> > 
> > The option intended for the backend driver. A new boolean property
> > "discard-enable" is written to the backend node. An upcoming patch for
> > qemu will make use of this property. The kernel blkback driver may be
> > updated as well to disable discard for phy based backing storage.
> 
> Stefano,
> 
> please backport these changes from qemu.git to qemu-xen.git so that
> discard:
> 
> 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support

Do you mean you want these patches backported from our qemu upstream
to the old ("traditional") xen qemu fork ?

I'm the maintainer for the latter but it's very much in the deep
freeze, maintenance wise.  I don't think we're going to add discard
support to it.

If there's something wrong with the io accounting in it I would
consider a backported patch to fix it.

Thanks,
Ian.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-09 12:09 [PATCH v5] libxl: add option for discard support to xl disk configuration Olaf Hering
  2014-05-09 12:18 ` Olaf Hering
@ 2014-05-12 14:29 ` Ian Jackson
  1 sibling, 0 replies; 13+ messages in thread
From: Ian Jackson @ 2014-05-12 14:29 UTC (permalink / raw)
  To: Olaf Hering; +Cc: stefano.stabellini, ian.campbell, xen-devel

Olaf Hering writes ("[PATCH v5] libxl: add option for discard support to xl disk configuration"):
> Handle new boolean option discard/no-discard for disk configuration. It
> is supposed to disable discard support if file based backing storage was
> intentionally created non-sparse to avoid fragmentation of the file.
> 
> The option intended for the backend driver. A new boolean property
> "discard-enable" is written to the backend node. An upcoming patch for
> qemu will make use of this property. The kernel blkback driver may be
> updated as well to disable discard for phy based backing storage.

Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>

> +discard / no-discard
> +---------------
> +
> +Description:           Request backend to advertise discard support to frontend

I have one tiny comment, which is that slightly better English grammar
here would be "Request that backend advertise".  If Ian C agrees then
we should make this change as we commit it.

Thanks,
Ian.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-12 14:28   ` Ian Jackson
@ 2014-05-12 14:37     ` Olaf Hering
  2014-05-12 15:44       ` Stefano Stabellini
  0 siblings, 1 reply; 13+ messages in thread
From: Olaf Hering @ 2014-05-12 14:37 UTC (permalink / raw)
  To: Ian Jackson; +Cc: xen-devel, ian.campbell, stefano.stabellini

On Mon, May 12, Ian Jackson wrote:

> Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard support to xl disk configuration"):
> > Stefano,
> > please backport these changes from qemu.git to qemu-xen.git so that
> > discard:
> > 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
> > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> 
> Do you mean you want these patches backported from our qemu upstream
> to the old ("traditional") xen qemu fork ?

I mean this copy, sorry if the wording was misleading:
git://xenbits.xen.org/qemu-upstream-unstable.git

Looks like its state is currently at "1.6.2 + something".

Olaf

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-12 14:37     ` Olaf Hering
@ 2014-05-12 15:44       ` Stefano Stabellini
  2014-05-13 14:16         ` Fabio Fantoni
  0 siblings, 1 reply; 13+ messages in thread
From: Stefano Stabellini @ 2014-05-12 15:44 UTC (permalink / raw)
  To: Olaf Hering; +Cc: xen-devel, Ian Jackson, ian.campbell, stefano.stabellini

On Mon, 12 May 2014, Olaf Hering wrote:
> On Mon, May 12, Ian Jackson wrote:
> 
> > Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard support to xl disk configuration"):
> > > Stefano,
> > > please backport these changes from qemu.git to qemu-xen.git so that
> > > discard:
> > > 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
> > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> > 
> > Do you mean you want these patches backported from our qemu upstream
> > to the old ("traditional") xen qemu fork ?
> 
> I mean this copy, sorry if the wording was misleading:
> git://xenbits.xen.org/qemu-upstream-unstable.git
> 
> Looks like its state is currently at "1.6.2 + something".

Right. I didn't reply but I agree.
I think that we should upgrade qemu-upstream-unstable to QEMU v2.0, plus
this series:

http://marc.info/?l=qemu-devel&m=139948451916847&w=2

but I haven't had the time to do it yet.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-12 15:44       ` Stefano Stabellini
@ 2014-05-13 14:16         ` Fabio Fantoni
  2014-05-13 16:15           ` Stefano Stabellini
  0 siblings, 1 reply; 13+ messages in thread
From: Fabio Fantoni @ 2014-05-13 14:16 UTC (permalink / raw)
  To: Stefano Stabellini, Olaf Hering; +Cc: Ian Jackson, ian.campbell, xen-devel

Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
> On Mon, 12 May 2014, Olaf Hering wrote:
>> On Mon, May 12, Ian Jackson wrote:
>>
>>> Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard support to xl disk configuration"):
>>>> Stefano,
>>>> please backport these changes from qemu.git to qemu-xen.git so that
>>>> discard:
>>>> 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
>>>> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
>>> Do you mean you want these patches backported from our qemu upstream
>>> to the old ("traditional") xen qemu fork ?
>> I mean this copy, sorry if the wording was misleading:
>> git://xenbits.xen.org/qemu-upstream-unstable.git
>>
>> Looks like its state is currently at "1.6.2 + something".
> Right. I didn't reply but I agree.
> I think that we should upgrade qemu-upstream-unstable to QEMU v2.0, plus
> this series:
>
> http://marc.info/?l=qemu-devel&m=139948451916847&w=2
>
> but I haven't had the time to do it yet.

If nobody does it before, I'll prepare andtest and the qemu 2.0.0 + xen 
missed patches as soon as I have time and I'll post iton github where 
you can easily do a pull.
Or anything else "special" are needed?

Is also important remember to update also the seabios version to 1.7.4 
to avoid regression in some cases with qemu >=1.7.

>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-13 14:16         ` Fabio Fantoni
@ 2014-05-13 16:15           ` Stefano Stabellini
  2014-05-13 17:23             ` Stefano Stabellini
  0 siblings, 1 reply; 13+ messages in thread
From: Stefano Stabellini @ 2014-05-13 16:15 UTC (permalink / raw)
  To: Fabio Fantoni
  Cc: Olaf Hering, xen-devel, Ian Jackson, ian.campbell, Stefano Stabellini

On Tue, 13 May 2014, Fabio Fantoni wrote:
> Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
> > On Mon, 12 May 2014, Olaf Hering wrote:
> > > On Mon, May 12, Ian Jackson wrote:
> > > 
> > > > Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard
> > > > support to xl disk configuration"):
> > > > > Stefano,
> > > > > please backport these changes from qemu.git to qemu-xen.git so that
> > > > > discard:
> > > > > 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
> > > > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> > > > Do you mean you want these patches backported from our qemu upstream
> > > > to the old ("traditional") xen qemu fork ?
> > > I mean this copy, sorry if the wording was misleading:
> > > git://xenbits.xen.org/qemu-upstream-unstable.git
> > > 
> > > Looks like its state is currently at "1.6.2 + something".
> > Right. I didn't reply but I agree.
> > I think that we should upgrade qemu-upstream-unstable to QEMU v2.0, plus
> > this series:
> > 
> > http://marc.info/?l=qemu-devel&m=139948451916847&w=2
> > 
> > but I haven't had the time to do it yet.
> 
> If nobody does it before, I'll prepare andtest and the qemu 2.0.0 + xen missed
> patches as soon as I have time and I'll post iton github where you can easily
> do a pull.
> Or anything else "special" are needed?

No, that would be all.
Make sure to only have these commits on top of v2.0.0:

f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
8b6bb0ad17ab776239ba2bfc99ff107ada01c506 pass an inclusive address range to xc_domain_pin_memory_cacheattr
04b0de0ee83fe464487406064afe14de27decc24 xen: factor out common functions
ad3f7e31bfc148135d93c176d1c9197933fa8344 xen: move Xen HVM files under hw/i386/xen
d5fdb85e3d2c319603f87f3205689ed5659f621d xen: move Xen PV machine files to hw/xenpv
c976437c7dba9c7444fb41df45468968aaa326ad qemu-xen: free all the pirqs for msi/msix when driver unload
fe680d0dac85e0f2d6c3b53838c250f6e0b1f49b exec: Limit translation limiting in address_space_translate to xen

And please test the updated QEMU with PV (qdisk) and HVM guests.
If everything works as expected, I can just pull your tree.


> Is also important remember to update also the seabios version to 1.7.4 to
> avoid regression in some cases with qemu >=1.7.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-13 16:15           ` Stefano Stabellini
@ 2014-05-13 17:23             ` Stefano Stabellini
  2014-05-14 10:20               ` Fabio Fantoni
  0 siblings, 1 reply; 13+ messages in thread
From: Stefano Stabellini @ 2014-05-13 17:23 UTC (permalink / raw)
  To: Stefano Stabellini
  Cc: Olaf Hering, Ian Campbell, Ian Jackson, xen-devel, Fabio Fantoni,
	Anthony Perard

On Tue, 13 May 2014, Stefano Stabellini wrote:
> On Tue, 13 May 2014, Fabio Fantoni wrote:
> > Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
> > > On Mon, 12 May 2014, Olaf Hering wrote:
> > > > On Mon, May 12, Ian Jackson wrote:
> > > > 
> > > > > Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard
> > > > > support to xl disk configuration"):
> > > > > > Stefano,
> > > > > > please backport these changes from qemu.git to qemu-xen.git so that
> > > > > > discard:
> > > > > > 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
> > > > > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> > > > > Do you mean you want these patches backported from our qemu upstream
> > > > > to the old ("traditional") xen qemu fork ?
> > > > I mean this copy, sorry if the wording was misleading:
> > > > git://xenbits.xen.org/qemu-upstream-unstable.git
> > > > 
> > > > Looks like its state is currently at "1.6.2 + something".
> > > Right. I didn't reply but I agree.
> > > I think that we should upgrade qemu-upstream-unstable to QEMU v2.0, plus
> > > this series:
> > > 
> > > http://marc.info/?l=qemu-devel&m=139948451916847&w=2
> > > 
> > > but I haven't had the time to do it yet.
> > 
> > If nobody does it before, I'll prepare andtest and the qemu 2.0.0 + xen missed
> > patches as soon as I have time and I'll post iton github where you can easily
> > do a pull.
> > Or anything else "special" are needed?
> 
> No, that would be all.
> Make sure to only have these commits on top of v2.0.0:
> 
> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> 8b6bb0ad17ab776239ba2bfc99ff107ada01c506 pass an inclusive address range to xc_domain_pin_memory_cacheattr
> 04b0de0ee83fe464487406064afe14de27decc24 xen: factor out common functions
> ad3f7e31bfc148135d93c176d1c9197933fa8344 xen: move Xen HVM files under hw/i386/xen
> d5fdb85e3d2c319603f87f3205689ed5659f621d xen: move Xen PV machine files to hw/xenpv
> c976437c7dba9c7444fb41df45468968aaa326ad qemu-xen: free all the pirqs for msi/msix when driver unload
> fe680d0dac85e0f2d6c3b53838c250f6e0b1f49b exec: Limit translation limiting in address_space_translate to xen
> 
> And please test the updated QEMU with PV (qdisk) and HVM guests.
> If everything works as expected, I can just pull your tree.

I had few minutes and I prepared a branch:

git://xenbits.xen.org/people/sstabellini/qemu-dm.git qemu-xen-for-4.5

however your help testing QEMU with HVM and PV guests would still be
very much appreciated and save me a lot of time!

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-13 17:23             ` Stefano Stabellini
@ 2014-05-14 10:20               ` Fabio Fantoni
  2014-05-14 11:09                 ` Stefano Stabellini
  0 siblings, 1 reply; 13+ messages in thread
From: Fabio Fantoni @ 2014-05-14 10:20 UTC (permalink / raw)
  To: Stefano Stabellini
  Cc: Anthony Perard, Olaf Hering, Ian Jackson, Ian Campbell, xen-devel

Il 13/05/2014 19:23, Stefano Stabellini ha scritto:
> On Tue, 13 May 2014, Stefano Stabellini wrote:
>> On Tue, 13 May 2014, Fabio Fantoni wrote:
>>> Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
>>>> On Mon, 12 May 2014, Olaf Hering wrote:
>>>>> On Mon, May 12, Ian Jackson wrote:
>>>>>
>>>>>> Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard
>>>>>> support to xl disk configuration"):
>>>>>>> Stefano,
>>>>>>> please backport these changes from qemu.git to qemu-xen.git so that
>>>>>>> discard:
>>>>>>> 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io accounting
>>>>>>> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
>>>>>> Do you mean you want these patches backported from our qemu upstream
>>>>>> to the old ("traditional") xen qemu fork ?
>>>>> I mean this copy, sorry if the wording was misleading:
>>>>> git://xenbits.xen.org/qemu-upstream-unstable.git
>>>>>
>>>>> Looks like its state is currently at "1.6.2 + something".
>>>> Right. I didn't reply but I agree.
>>>> I think that we should upgrade qemu-upstream-unstable to QEMU v2.0, plus
>>>> this series:
>>>>
>>>> http://marc.info/?l=qemu-devel&m=139948451916847&w=2
>>>>
>>>> but I haven't had the time to do it yet.
>>> If nobody does it before, I'll prepare andtest and the qemu 2.0.0 + xen missed
>>> patches as soon as I have time and I'll post iton github where you can easily
>>> do a pull.
>>> Or anything else "special" are needed?
>> No, that would be all.
>> Make sure to only have these commits on top of v2.0.0:
>>
>> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
>> 8b6bb0ad17ab776239ba2bfc99ff107ada01c506 pass an inclusive address range to xc_domain_pin_memory_cacheattr
>> 04b0de0ee83fe464487406064afe14de27decc24 xen: factor out common functions
>> ad3f7e31bfc148135d93c176d1c9197933fa8344 xen: move Xen HVM files under hw/i386/xen
>> d5fdb85e3d2c319603f87f3205689ed5659f621d xen: move Xen PV machine files to hw/xenpv
>> c976437c7dba9c7444fb41df45468968aaa326ad qemu-xen: free all the pirqs for msi/msix when driver unload
>> fe680d0dac85e0f2d6c3b53838c250f6e0b1f49b exec: Limit translation limiting in address_space_translate to xen
>>
>> And please test the updated QEMU with PV (qdisk) and HVM guests.
>> If everything works as expected, I can just pull your tree.
> I had few minutes and I prepared a branch:
>
> git://xenbits.xen.org/people/sstabellini/qemu-dm.git qemu-xen-for-4.5
>
> however your help testing QEMU with HVM and PV guests would still be
> very much appreciated and save me a lot of time!

I did some fast tests with pv and hvm domUs (both with qdisk's disks) 
and I not found regression for now.

Note: for not add regression in some cases before (or when) push the use 
of qemu 2.0 in xen-unstable there must also be this serie: [PATCH 0/2] 
tools: update to SeaBIOS 1.7.4

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-14 10:20               ` Fabio Fantoni
@ 2014-05-14 11:09                 ` Stefano Stabellini
  2014-05-14 12:43                   ` Fabio Fantoni
  0 siblings, 1 reply; 13+ messages in thread
From: Stefano Stabellini @ 2014-05-14 11:09 UTC (permalink / raw)
  To: Fabio Fantoni
  Cc: Olaf Hering, Ian Campbell, Stefano Stabellini, Ian Jackson,
	xen-devel, Anthony Perard

On Wed, 14 May 2014, Fabio Fantoni wrote:
> Il 13/05/2014 19:23, Stefano Stabellini ha scritto:
> > On Tue, 13 May 2014, Stefano Stabellini wrote:
> > > On Tue, 13 May 2014, Fabio Fantoni wrote:
> > > > Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
> > > > > On Mon, 12 May 2014, Olaf Hering wrote:
> > > > > > On Mon, May 12, Ian Jackson wrote:
> > > > > > 
> > > > > > > Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard
> > > > > > > support to xl disk configuration"):
> > > > > > > > Stefano,
> > > > > > > > please backport these changes from qemu.git to qemu-xen.git so
> > > > > > > > that
> > > > > > > > discard:
> > > > > > > > 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io
> > > > > > > > accounting
> > > > > > > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard
> > > > > > > > support
> > > > > > > Do you mean you want these patches backported from our qemu
> > > > > > > upstream
> > > > > > > to the old ("traditional") xen qemu fork ?
> > > > > > I mean this copy, sorry if the wording was misleading:
> > > > > > git://xenbits.xen.org/qemu-upstream-unstable.git
> > > > > > 
> > > > > > Looks like its state is currently at "1.6.2 + something".
> > > > > Right. I didn't reply but I agree.
> > > > > I think that we should upgrade qemu-upstream-unstable to QEMU v2.0,
> > > > > plus
> > > > > this series:
> > > > > 
> > > > > http://marc.info/?l=qemu-devel&m=139948451916847&w=2
> > > > > 
> > > > > but I haven't had the time to do it yet.
> > > > If nobody does it before, I'll prepare andtest and the qemu 2.0.0 + xen
> > > > missed
> > > > patches as soon as I have time and I'll post iton github where you can
> > > > easily
> > > > do a pull.
> > > > Or anything else "special" are needed?
> > > No, that would be all.
> > > Make sure to only have these commits on top of v2.0.0:
> > > 
> > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> > > 8b6bb0ad17ab776239ba2bfc99ff107ada01c506 pass an inclusive address range
> > > to xc_domain_pin_memory_cacheattr
> > > 04b0de0ee83fe464487406064afe14de27decc24 xen: factor out common functions
> > > ad3f7e31bfc148135d93c176d1c9197933fa8344 xen: move Xen HVM files under
> > > hw/i386/xen
> > > d5fdb85e3d2c319603f87f3205689ed5659f621d xen: move Xen PV machine files to
> > > hw/xenpv
> > > c976437c7dba9c7444fb41df45468968aaa326ad qemu-xen: free all the pirqs for
> > > msi/msix when driver unload
> > > fe680d0dac85e0f2d6c3b53838c250f6e0b1f49b exec: Limit translation limiting
> > > in address_space_translate to xen
> > > 
> > > And please test the updated QEMU with PV (qdisk) and HVM guests.
> > > If everything works as expected, I can just pull your tree.
> > I had few minutes and I prepared a branch:
> > 
> > git://xenbits.xen.org/people/sstabellini/qemu-dm.git qemu-xen-for-4.5
> > 
> > however your help testing QEMU with HVM and PV guests would still be
> > very much appreciated and save me a lot of time!
> 
> I did some fast tests with pv and hvm domUs (both with qdisk's disks) and I
> not found regression for now.
> 
> Note: for not add regression in some cases before (or when) push the use of
> qemu 2.0 in xen-unstable there must also be this serie: [PATCH 0/2] tools:
> update to SeaBIOS 1.7.4

Is the SeaBIOS update actually required to update QEMU?
I am not saying we shouldn't update SeaBIOS but I would like to know if
I have to wait until SeaBIOS has been updated or I can go ahead and
update QEMU now.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-14 11:09                 ` Stefano Stabellini
@ 2014-05-14 12:43                   ` Fabio Fantoni
  2014-05-14 13:16                     ` Stefano Stabellini
  0 siblings, 1 reply; 13+ messages in thread
From: Fabio Fantoni @ 2014-05-14 12:43 UTC (permalink / raw)
  To: Stefano Stabellini
  Cc: Anthony Perard, Olaf Hering, Ian Jackson, Ian Campbell, xen-devel

Il 14/05/2014 13:09, Stefano Stabellini ha scritto:
> On Wed, 14 May 2014, Fabio Fantoni wrote:
>> Il 13/05/2014 19:23, Stefano Stabellini ha scritto:
>>> On Tue, 13 May 2014, Stefano Stabellini wrote:
>>>> On Tue, 13 May 2014, Fabio Fantoni wrote:
>>>>> Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
>>>>>> On Mon, 12 May 2014, Olaf Hering wrote:
>>>>>>> On Mon, May 12, Ian Jackson wrote:
>>>>>>>
>>>>>>>> Olaf Hering writes ("Re: [PATCH v5] libxl: add option for discard
>>>>>>>> support to xl disk configuration"):
>>>>>>>>> Stefano,
>>>>>>>>> please backport these changes from qemu.git to qemu-xen.git so
>>>>>>>>> that
>>>>>>>>> discard:
>>>>>>>>> 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io
>>>>>>>>> accounting
>>>>>>>>> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard
>>>>>>>>> support
>>>>>>>> Do you mean you want these patches backported from our qemu
>>>>>>>> upstream
>>>>>>>> to the old ("traditional") xen qemu fork ?
>>>>>>> I mean this copy, sorry if the wording was misleading:
>>>>>>> git://xenbits.xen.org/qemu-upstream-unstable.git
>>>>>>>
>>>>>>> Looks like its state is currently at "1.6.2 + something".
>>>>>> Right. I didn't reply but I agree.
>>>>>> I think that we should upgrade qemu-upstream-unstable to QEMU v2.0,
>>>>>> plus
>>>>>> this series:
>>>>>>
>>>>>> http://marc.info/?l=qemu-devel&m=139948451916847&w=2
>>>>>>
>>>>>> but I haven't had the time to do it yet.
>>>>> If nobody does it before, I'll prepare andtest and the qemu 2.0.0 + xen
>>>>> missed
>>>>> patches as soon as I have time and I'll post iton github where you can
>>>>> easily
>>>>> do a pull.
>>>>> Or anything else "special" are needed?
>>>> No, that would be all.
>>>> Make sure to only have these commits on top of v2.0.0:
>>>>
>>>> f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
>>>> 8b6bb0ad17ab776239ba2bfc99ff107ada01c506 pass an inclusive address range
>>>> to xc_domain_pin_memory_cacheattr
>>>> 04b0de0ee83fe464487406064afe14de27decc24 xen: factor out common functions
>>>> ad3f7e31bfc148135d93c176d1c9197933fa8344 xen: move Xen HVM files under
>>>> hw/i386/xen
>>>> d5fdb85e3d2c319603f87f3205689ed5659f621d xen: move Xen PV machine files to
>>>> hw/xenpv
>>>> c976437c7dba9c7444fb41df45468968aaa326ad qemu-xen: free all the pirqs for
>>>> msi/msix when driver unload
>>>> fe680d0dac85e0f2d6c3b53838c250f6e0b1f49b exec: Limit translation limiting
>>>> in address_space_translate to xen
>>>>
>>>> And please test the updated QEMU with PV (qdisk) and HVM guests.
>>>> If everything works as expected, I can just pull your tree.
>>> I had few minutes and I prepared a branch:
>>>
>>> git://xenbits.xen.org/people/sstabellini/qemu-dm.git qemu-xen-for-4.5
>>>
>>> however your help testing QEMU with HVM and PV guests would still be
>>> very much appreciated and save me a lot of time!
>> I did some fast tests with pv and hvm domUs (both with qdisk's disks) and I
>> not found regression for now.
>>
>> Note: for not add regression in some cases before (or when) push the use of
>> qemu 2.0 in xen-unstable there must also be this serie: [PATCH 0/2] tools:
>> update to SeaBIOS 1.7.4
> Is the SeaBIOS update actually required to update QEMU?
> I am not saying we shouldn't update SeaBIOS but I would like to know if
> I have to wait until SeaBIOS has been updated or I can go ahead and
> update QEMU now.

I not know if is required but I already saw 4 cases reported by other 
users here and on debian that had critical regression with hvm domUs 
using qemu 1.7 or 2.0 with seabios 1.7.3, all solved upgrading seabios 
to 1.7.4

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v5] libxl: add option for discard support to xl disk configuration
  2014-05-14 12:43                   ` Fabio Fantoni
@ 2014-05-14 13:16                     ` Stefano Stabellini
  0 siblings, 0 replies; 13+ messages in thread
From: Stefano Stabellini @ 2014-05-14 13:16 UTC (permalink / raw)
  To: Fabio Fantoni
  Cc: Olaf Hering, Ian Campbell, Stefano Stabellini, Ian Jackson,
	xen-devel, Anthony Perard

On Wed, 14 May 2014, Fabio Fantoni wrote:
> Il 14/05/2014 13:09, Stefano Stabellini ha scritto:
> > On Wed, 14 May 2014, Fabio Fantoni wrote:
> > > Il 13/05/2014 19:23, Stefano Stabellini ha scritto:
> > > > On Tue, 13 May 2014, Stefano Stabellini wrote:
> > > > > On Tue, 13 May 2014, Fabio Fantoni wrote:
> > > > > > Il 12/05/2014 17:44, Stefano Stabellini ha scritto:
> > > > > > > On Mon, 12 May 2014, Olaf Hering wrote:
> > > > > > > > On Mon, May 12, Ian Jackson wrote:
> > > > > > > > 
> > > > > > > > > Olaf Hering writes ("Re: [PATCH v5] libxl: add option for
> > > > > > > > > discard
> > > > > > > > > support to xl disk configuration"):
> > > > > > > > > > Stefano,
> > > > > > > > > > please backport these changes from qemu.git to qemu-xen.git
> > > > > > > > > > so
> > > > > > > > > > that
> > > > > > > > > > discard:
> > > > > > > > > > 58da5b1e01a586eb5a52ba3eec342d6828269839 xen_disk: fix io
> > > > > > > > > > accounting
> > > > > > > > > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add
> > > > > > > > > > discard
> > > > > > > > > > support
> > > > > > > > > Do you mean you want these patches backported from our qemu
> > > > > > > > > upstream
> > > > > > > > > to the old ("traditional") xen qemu fork ?
> > > > > > > > I mean this copy, sorry if the wording was misleading:
> > > > > > > > git://xenbits.xen.org/qemu-upstream-unstable.git
> > > > > > > > 
> > > > > > > > Looks like its state is currently at "1.6.2 + something".
> > > > > > > Right. I didn't reply but I agree.
> > > > > > > I think that we should upgrade qemu-upstream-unstable to QEMU
> > > > > > > v2.0,
> > > > > > > plus
> > > > > > > this series:
> > > > > > > 
> > > > > > > http://marc.info/?l=qemu-devel&m=139948451916847&w=2
> > > > > > > 
> > > > > > > but I haven't had the time to do it yet.
> > > > > > If nobody does it before, I'll prepare andtest and the qemu 2.0.0 +
> > > > > > xen
> > > > > > missed
> > > > > > patches as soon as I have time and I'll post iton github where you
> > > > > > can
> > > > > > easily
> > > > > > do a pull.
> > > > > > Or anything else "special" are needed?
> > > > > No, that would be all.
> > > > > Make sure to only have these commits on top of v2.0.0:
> > > > > 
> > > > > f31352041bdde436c3f6d07e1525a42e48dec215 xen_disk: add discard support
> > > > > 8b6bb0ad17ab776239ba2bfc99ff107ada01c506 pass an inclusive address
> > > > > range
> > > > > to xc_domain_pin_memory_cacheattr
> > > > > 04b0de0ee83fe464487406064afe14de27decc24 xen: factor out common
> > > > > functions
> > > > > ad3f7e31bfc148135d93c176d1c9197933fa8344 xen: move Xen HVM files under
> > > > > hw/i386/xen
> > > > > d5fdb85e3d2c319603f87f3205689ed5659f621d xen: move Xen PV machine
> > > > > files to
> > > > > hw/xenpv
> > > > > c976437c7dba9c7444fb41df45468968aaa326ad qemu-xen: free all the pirqs
> > > > > for
> > > > > msi/msix when driver unload
> > > > > fe680d0dac85e0f2d6c3b53838c250f6e0b1f49b exec: Limit translation
> > > > > limiting
> > > > > in address_space_translate to xen
> > > > > 
> > > > > And please test the updated QEMU with PV (qdisk) and HVM guests.
> > > > > If everything works as expected, I can just pull your tree.
> > > > I had few minutes and I prepared a branch:
> > > > 
> > > > git://xenbits.xen.org/people/sstabellini/qemu-dm.git qemu-xen-for-4.5
> > > > 
> > > > however your help testing QEMU with HVM and PV guests would still be
> > > > very much appreciated and save me a lot of time!
> > > I did some fast tests with pv and hvm domUs (both with qdisk's disks) and
> > > I
> > > not found regression for now.
> > > 
> > > Note: for not add regression in some cases before (or when) push the use
> > > of
> > > qemu 2.0 in xen-unstable there must also be this serie: [PATCH 0/2] tools:
> > > update to SeaBIOS 1.7.4
> > Is the SeaBIOS update actually required to update QEMU?
> > I am not saying we shouldn't update SeaBIOS but I would like to know if
> > I have to wait until SeaBIOS has been updated or I can go ahead and
> > update QEMU now.
> 
> I not know if is required but I already saw 4 cases reported by other users
> here and on debian that had critical regression with hvm domUs using qemu 1.7
> or 2.0 with seabios 1.7.3, all solved upgrading seabios to 1.7.4

Thanks, I'll wait for the upgrade then.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2014-05-14 13:16 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-09 12:09 [PATCH v5] libxl: add option for discard support to xl disk configuration Olaf Hering
2014-05-09 12:18 ` Olaf Hering
2014-05-12 14:28   ` Ian Jackson
2014-05-12 14:37     ` Olaf Hering
2014-05-12 15:44       ` Stefano Stabellini
2014-05-13 14:16         ` Fabio Fantoni
2014-05-13 16:15           ` Stefano Stabellini
2014-05-13 17:23             ` Stefano Stabellini
2014-05-14 10:20               ` Fabio Fantoni
2014-05-14 11:09                 ` Stefano Stabellini
2014-05-14 12:43                   ` Fabio Fantoni
2014-05-14 13:16                     ` Stefano Stabellini
2014-05-12 14:29 ` Ian Jackson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.