All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/2] block: Gluster 6 compatibility
@ 2019-03-05 15:46 Niels de Vos
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature Niels de Vos
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Niels de Vos @ 2019-03-05 15:46 UTC (permalink / raw)
  To: qemu-block; +Cc: Cole Robinson, integration, qemu-devel, Niels de Vos

Gluster 6 is currently available as release candidate. There have been a
few changes to libgfapi.so that need to be adapted by consuming projects
like QEMU. Fedora Rawhide already contains glusterfs-6.0-RC0, and this
prevents rebuilds of QEMU there (https://bugzilla.redhat.com/1684298).

The following two changes should be sufficient to consume Gluster 6 once
it is released. These have been tested on CentOS-7 with Gluster 5 and
Gluster 6 (minimal manual qemu-img tests only).

This v2 post contains changes suggested by Daniel P. Berrangé and Kevin
Wolf. Thanks!

Cheers,
Niels


Niels de Vos (2):
  block/gluster: Handle changed glfs_ftruncate signature
  gluster: the glfs_io_cbk callback function pointer adds pre/post stat
    args

 block/gluster.c | 17 ++++++++++++++---
 configure       | 42 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 3 deletions(-)

-- 
2.20.1

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

* [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature
  2019-03-05 15:46 [Qemu-devel] [PATCH v2 0/2] block: Gluster 6 compatibility Niels de Vos
@ 2019-03-05 15:46 ` Niels de Vos
  2019-03-06 10:46   ` Stefano Garzarella
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v2 2/2] gluster: the glfs_io_cbk callback function pointer adds pre/post stat args Niels de Vos
  2019-03-08 13:11 ` [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility Kevin Wolf
  2 siblings, 1 reply; 8+ messages in thread
From: Niels de Vos @ 2019-03-05 15:46 UTC (permalink / raw)
  To: qemu-block
  Cc: Cole Robinson, integration, qemu-devel, Niels de Vos,
	Prasanna Kumar Kalever

From: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>

New versions of Glusters libgfapi.so have an updated glfs_ftruncate()
function that returns additional 'struct stat' structures to enable
advanced caching of attributes. This is useful for file servers, not so
much for QEMU. Nevertheless, the API has changed and needs to be
adopted.

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
Signed-off-by: Niels de Vos <ndevos@redhat.com>

--
v5: pass default NULL arguments through macro (Daniel P. Berrangé)
v4: rebase to current master branch
v3: define old backwards compatible glfs_ftruncate() macro, from Eric Blake
v2: do a compile check as suggested by Eric Blake
---
 block/gluster.c |  4 ++++
 configure       | 18 ++++++++++++++++++
 2 files changed, 22 insertions(+)

diff --git a/block/gluster.c b/block/gluster.c
index af64330211..f853aa87f4 100644
--- a/block/gluster.c
+++ b/block/gluster.c
@@ -20,6 +20,10 @@
 #include "qemu/option.h"
 #include "qemu/cutils.h"
 
+#ifdef CONFIG_GLUSTERFS_FTRUNCATE_HAS_STAT
+# define glfs_ftruncate(fd, offset) glfs_ftruncate(fd, offset, NULL, NULL)
+#endif
+
 #define GLUSTER_OPT_FILENAME        "filename"
 #define GLUSTER_OPT_VOLUME          "volume"
 #define GLUSTER_OPT_PATH            "path"
diff --git a/configure b/configure
index cefeb8fcce..bbfe587b88 100755
--- a/configure
+++ b/configure
@@ -456,6 +456,7 @@ glusterfs_xlator_opt="no"
 glusterfs_discard="no"
 glusterfs_fallocate="no"
 glusterfs_zerofill="no"
+glusterfs_ftruncate_has_stat="no"
 gtk=""
 gtk_gl="no"
 tls_priority="NORMAL"
@@ -4083,6 +4084,19 @@ if test "$glusterfs" != "no" ; then
       glusterfs_fallocate="yes"
       glusterfs_zerofill="yes"
     fi
+    cat > $TMPC << EOF
+#include <glusterfs/api/glfs.h>
+
+int
+main(void)
+{
+	/* new glfs_ftruncate() passes two additional args */
+	return glfs_ftruncate(NULL, 0, NULL, NULL);
+}
+EOF
+    if compile_prog "$glusterfs_cflags" "$glusterfs_libs" ; then
+      glusterfs_ftruncate_has_stat="yes"
+    fi
   else
     if test "$glusterfs" = "yes" ; then
       feature_not_found "GlusterFS backend support" \
@@ -6885,6 +6899,10 @@ if test "$glusterfs_zerofill" = "yes" ; then
   echo "CONFIG_GLUSTERFS_ZEROFILL=y" >> $config_host_mak
 fi
 
+if test "$glusterfs_ftruncate_has_stat" = "yes" ; then
+  echo "CONFIG_GLUSTERFS_FTRUNCATE_HAS_STAT=y" >> $config_host_mak
+fi
+
 if test "$libssh2" = "yes" ; then
   echo "CONFIG_LIBSSH2=m" >> $config_host_mak
   echo "LIBSSH2_CFLAGS=$libssh2_cflags" >> $config_host_mak
-- 
2.20.1

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

* [Qemu-devel] [PATCH v2 2/2] gluster: the glfs_io_cbk callback function pointer adds pre/post stat args
  2019-03-05 15:46 [Qemu-devel] [PATCH v2 0/2] block: Gluster 6 compatibility Niels de Vos
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature Niels de Vos
@ 2019-03-05 15:46 ` Niels de Vos
  2019-03-06 10:52   ` Stefano Garzarella
  2019-03-08 13:11 ` [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility Kevin Wolf
  2 siblings, 1 reply; 8+ messages in thread
From: Niels de Vos @ 2019-03-05 15:46 UTC (permalink / raw)
  To: qemu-block; +Cc: Cole Robinson, integration, qemu-devel, Niels de Vos

The glfs_*_async() functions do a callback once finished. This callback
has changed its arguments, pre- and post-stat structures have been
added. This makes it possible to improve caching, which is useful for
Samba and NFS-Ganesha, but not so much for QEMU. Gluster 6 is the first
release that includes these new arguments.

With an additional detection in ./configure, the new arguments can
conditionally get included in the glfs_io_cbk handler.

Signed-off-by: Niels de Vos <ndevos@redhat.com>

--
v2: correct typo in commit message (Kevin Wolf)
---
 block/gluster.c |  6 +++++-
 configure       | 24 ++++++++++++++++++++++++
 2 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/block/gluster.c b/block/gluster.c
index f853aa87f4..51f184cbd8 100644
--- a/block/gluster.c
+++ b/block/gluster.c
@@ -729,7 +729,11 @@ static struct glfs *qemu_gluster_init(BlockdevOptionsGluster *gconf,
 /*
  * AIO callback routine called from GlusterFS thread.
  */
-static void gluster_finish_aiocb(struct glfs_fd *fd, ssize_t ret, void *arg)
+static void gluster_finish_aiocb(struct glfs_fd *fd, ssize_t ret,
+#ifdef CONFIG_GLUSTERFS_IOCB_HAS_STAT
+                                 struct glfs_stat *pre, struct glfs_stat *post,
+#endif
+                                 void *arg)
 {
     GlusterAIOCB *acb = (GlusterAIOCB *)arg;
 
diff --git a/configure b/configure
index bbfe587b88..db548d9b08 100755
--- a/configure
+++ b/configure
@@ -457,6 +457,7 @@ glusterfs_discard="no"
 glusterfs_fallocate="no"
 glusterfs_zerofill="no"
 glusterfs_ftruncate_has_stat="no"
+glusterfs_iocb_has_stat="no"
 gtk=""
 gtk_gl="no"
 tls_priority="NORMAL"
@@ -4097,6 +4098,25 @@ EOF
     if compile_prog "$glusterfs_cflags" "$glusterfs_libs" ; then
       glusterfs_ftruncate_has_stat="yes"
     fi
+    cat > $TMPC << EOF
+#include <glusterfs/api/glfs.h>
+
+/* new glfs_io_cbk() passes two additional glfs_stat structs */
+static void
+glusterfs_iocb(glfs_fd_t *fd, ssize_t ret, struct glfs_stat *prestat, struct glfs_stat *poststat, void *data)
+{}
+
+int
+main(void)
+{
+	glfs_io_cbk iocb = &glusterfs_iocb;
+	iocb(NULL, 0 , NULL, NULL, NULL);
+	return 0;
+}
+EOF
+    if compile_prog "$glusterfs_cflags" "$glusterfs_libs" ; then
+      glusterfs_iocb_has_stat="yes"
+    fi
   else
     if test "$glusterfs" = "yes" ; then
       feature_not_found "GlusterFS backend support" \
@@ -6903,6 +6923,10 @@ if test "$glusterfs_ftruncate_has_stat" = "yes" ; then
   echo "CONFIG_GLUSTERFS_FTRUNCATE_HAS_STAT=y" >> $config_host_mak
 fi
 
+if test "$glusterfs_iocb_has_stat" = "yes" ; then
+  echo "CONFIG_GLUSTERFS_IOCB_HAS_STAT=y" >> $config_host_mak
+fi
+
 if test "$libssh2" = "yes" ; then
   echo "CONFIG_LIBSSH2=m" >> $config_host_mak
   echo "LIBSSH2_CFLAGS=$libssh2_cflags" >> $config_host_mak
-- 
2.20.1

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

* Re: [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature Niels de Vos
@ 2019-03-06 10:46   ` Stefano Garzarella
  0 siblings, 0 replies; 8+ messages in thread
From: Stefano Garzarella @ 2019-03-06 10:46 UTC (permalink / raw)
  To: Niels de Vos
  Cc: qemu-block, integration, Prasanna Kumar Kalever, qemu-devel,
	Cole Robinson

Hi Niels,

On Tue, Mar 05, 2019 at 04:46:33PM +0100, Niels de Vos wrote:
> From: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
> 
> New versions of Glusters libgfapi.so have an updated glfs_ftruncate()
> function that returns additional 'struct stat' structures to enable
> advanced caching of attributes. This is useful for file servers, not so
> much for QEMU. Nevertheless, the API has changed and needs to be
> adopted.
> 
> Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
> Signed-off-by: Niels de Vos <ndevos@redhat.com>
> 
> --
> v5: pass default NULL arguments through macro (Daniel P. Berrangé)
> v4: rebase to current master branch
> v3: define old backwards compatible glfs_ftruncate() macro, from Eric Blake
> v2: do a compile check as suggested by Eric Blake

to avoid to record these information in the commit message, you should use 3
dashes or move these lines after the 3 dashes below.

> ---
>  block/gluster.c |  4 ++++
>  configure       | 18 ++++++++++++++++++
>  2 files changed, 22 insertions(+)
> 
> diff --git a/block/gluster.c b/block/gluster.c
> index af64330211..f853aa87f4 100644
> --- a/block/gluster.c
> +++ b/block/gluster.c
> @@ -20,6 +20,10 @@
>  #include "qemu/option.h"
>  #include "qemu/cutils.h"
>  
> +#ifdef CONFIG_GLUSTERFS_FTRUNCATE_HAS_STAT
> +# define glfs_ftruncate(fd, offset) glfs_ftruncate(fd, offset, NULL, NULL)
> +#endif
> +
>  #define GLUSTER_OPT_FILENAME        "filename"
>  #define GLUSTER_OPT_VOLUME          "volume"
>  #define GLUSTER_OPT_PATH            "path"
> diff --git a/configure b/configure
> index cefeb8fcce..bbfe587b88 100755
> --- a/configure
> +++ b/configure
> @@ -456,6 +456,7 @@ glusterfs_xlator_opt="no"
>  glusterfs_discard="no"
>  glusterfs_fallocate="no"
>  glusterfs_zerofill="no"
> +glusterfs_ftruncate_has_stat="no"
>  gtk=""
>  gtk_gl="no"
>  tls_priority="NORMAL"
> @@ -4083,6 +4084,19 @@ if test "$glusterfs" != "no" ; then
>        glusterfs_fallocate="yes"
>        glusterfs_zerofill="yes"
>      fi
> +    cat > $TMPC << EOF
> +#include <glusterfs/api/glfs.h>
> +
> +int
> +main(void)
> +{
> +	/* new glfs_ftruncate() passes two additional args */
> +	return glfs_ftruncate(NULL, 0, NULL, NULL);
> +}
> +EOF
> +    if compile_prog "$glusterfs_cflags" "$glusterfs_libs" ; then
> +      glusterfs_ftruncate_has_stat="yes"
> +    fi
>    else
>      if test "$glusterfs" = "yes" ; then
>        feature_not_found "GlusterFS backend support" \
> @@ -6885,6 +6899,10 @@ if test "$glusterfs_zerofill" = "yes" ; then
>    echo "CONFIG_GLUSTERFS_ZEROFILL=y" >> $config_host_mak
>  fi
>  
> +if test "$glusterfs_ftruncate_has_stat" = "yes" ; then
> +  echo "CONFIG_GLUSTERFS_FTRUNCATE_HAS_STAT=y" >> $config_host_mak
> +fi
> +
>  if test "$libssh2" = "yes" ; then
>    echo "CONFIG_LIBSSH2=m" >> $config_host_mak
>    echo "LIBSSH2_CFLAGS=$libssh2_cflags" >> $config_host_mak
> -- 
> 2.20.1
> 
> 

The patch LGTM.

Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>

Thanks,
Stefano

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

* Re: [Qemu-devel] [PATCH v2 2/2] gluster: the glfs_io_cbk callback function pointer adds pre/post stat args
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v2 2/2] gluster: the glfs_io_cbk callback function pointer adds pre/post stat args Niels de Vos
@ 2019-03-06 10:52   ` Stefano Garzarella
  0 siblings, 0 replies; 8+ messages in thread
From: Stefano Garzarella @ 2019-03-06 10:52 UTC (permalink / raw)
  To: Niels de Vos; +Cc: qemu-block, integration, qemu-devel, Cole Robinson

On Tue, Mar 05, 2019 at 04:46:34PM +0100, Niels de Vos wrote:
> The glfs_*_async() functions do a callback once finished. This callback
> has changed its arguments, pre- and post-stat structures have been
> added. This makes it possible to improve caching, which is useful for
> Samba and NFS-Ganesha, but not so much for QEMU. Gluster 6 is the first
> release that includes these new arguments.
> 
> With an additional detection in ./configure, the new arguments can
> conditionally get included in the glfs_io_cbk handler.
> 
> Signed-off-by: Niels de Vos <ndevos@redhat.com>
> 
> --
> v2: correct typo in commit message (Kevin Wolf)

Also here, please use 3 dashes or move below.

> ---
>  block/gluster.c |  6 +++++-
>  configure       | 24 ++++++++++++++++++++++++
>  2 files changed, 29 insertions(+), 1 deletion(-)
> 
> diff --git a/block/gluster.c b/block/gluster.c
> index f853aa87f4..51f184cbd8 100644
> --- a/block/gluster.c
> +++ b/block/gluster.c
> @@ -729,7 +729,11 @@ static struct glfs *qemu_gluster_init(BlockdevOptionsGluster *gconf,
>  /*
>   * AIO callback routine called from GlusterFS thread.
>   */
> -static void gluster_finish_aiocb(struct glfs_fd *fd, ssize_t ret, void *arg)
> +static void gluster_finish_aiocb(struct glfs_fd *fd, ssize_t ret,
> +#ifdef CONFIG_GLUSTERFS_IOCB_HAS_STAT
> +                                 struct glfs_stat *pre, struct glfs_stat *post,
> +#endif
> +                                 void *arg)

I'm note sure that is a good idea put function parameters in the ifdef
block.
What do you think to rename gluster_finish_aiocb() in
gluster_finish_aiocb_common() or something like that and create two
functions for the two cases with the right parameters that call
gluster_finish_aiocb_common()?

#ifdef CONFIG_GLUSTERFS_IOCB_HAS_STAT
static void gluster_finish_aiocb(struct glfs_fd *fd, ssize_t ret,
                                 struct glfs_stat *pre, struct glfs_stat *post,
                                 void *arg)
{
    gluster_finish_aiocb_common(fd, ret, args);
}
#else
static void gluster_finish_aiocb(struct glfs_fd *fd, ssize_t ret, void *arg)
{
    gluster_finish_aiocb_common(fd, ret, args);
}
#endif /* CONFIG_GLUSTERFS_IOCB_HAS_STAT */

Thanks,
Stefano

>  {
>      GlusterAIOCB *acb = (GlusterAIOCB *)arg;
>  
> diff --git a/configure b/configure
> index bbfe587b88..db548d9b08 100755
> --- a/configure
> +++ b/configure
> @@ -457,6 +457,7 @@ glusterfs_discard="no"
>  glusterfs_fallocate="no"
>  glusterfs_zerofill="no"
>  glusterfs_ftruncate_has_stat="no"
> +glusterfs_iocb_has_stat="no"
>  gtk=""
>  gtk_gl="no"
>  tls_priority="NORMAL"
> @@ -4097,6 +4098,25 @@ EOF
>      if compile_prog "$glusterfs_cflags" "$glusterfs_libs" ; then
>        glusterfs_ftruncate_has_stat="yes"
>      fi
> +    cat > $TMPC << EOF
> +#include <glusterfs/api/glfs.h>
> +
> +/* new glfs_io_cbk() passes two additional glfs_stat structs */
> +static void
> +glusterfs_iocb(glfs_fd_t *fd, ssize_t ret, struct glfs_stat *prestat, struct glfs_stat *poststat, void *data)
> +{}
> +
> +int
> +main(void)
> +{
> +	glfs_io_cbk iocb = &glusterfs_iocb;
> +	iocb(NULL, 0 , NULL, NULL, NULL);
> +	return 0;
> +}
> +EOF
> +    if compile_prog "$glusterfs_cflags" "$glusterfs_libs" ; then
> +      glusterfs_iocb_has_stat="yes"
> +    fi
>    else
>      if test "$glusterfs" = "yes" ; then
>        feature_not_found "GlusterFS backend support" \
> @@ -6903,6 +6923,10 @@ if test "$glusterfs_ftruncate_has_stat" = "yes" ; then
>    echo "CONFIG_GLUSTERFS_FTRUNCATE_HAS_STAT=y" >> $config_host_mak
>  fi
>  
> +if test "$glusterfs_iocb_has_stat" = "yes" ; then
> +  echo "CONFIG_GLUSTERFS_IOCB_HAS_STAT=y" >> $config_host_mak
> +fi
> +
>  if test "$libssh2" = "yes" ; then
>    echo "CONFIG_LIBSSH2=m" >> $config_host_mak
>    echo "LIBSSH2_CFLAGS=$libssh2_cflags" >> $config_host_mak
> -- 
> 2.20.1
> 
> 

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

* Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility
  2019-03-05 15:46 [Qemu-devel] [PATCH v2 0/2] block: Gluster 6 compatibility Niels de Vos
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature Niels de Vos
  2019-03-05 15:46 ` [Qemu-devel] [PATCH v2 2/2] gluster: the glfs_io_cbk callback function pointer adds pre/post stat args Niels de Vos
@ 2019-03-08 13:11 ` Kevin Wolf
  2019-03-09  9:40   ` Niels de Vos
  2 siblings, 1 reply; 8+ messages in thread
From: Kevin Wolf @ 2019-03-08 13:11 UTC (permalink / raw)
  To: Niels de Vos; +Cc: qemu-block, integration, qemu-devel, Cole Robinson

Am 05.03.2019 um 16:46 hat Niels de Vos geschrieben:
> Gluster 6 is currently available as release candidate. There have been a
> few changes to libgfapi.so that need to be adapted by consuming projects
> like QEMU. Fedora Rawhide already contains glusterfs-6.0-RC0, and this
> prevents rebuilds of QEMU there (https://bugzilla.redhat.com/1684298).
> 
> The following two changes should be sufficient to consume Gluster 6 once
> it is released. These have been tested on CentOS-7 with Gluster 5 and
> Gluster 6 (minimal manual qemu-img tests only).
> 
> This v2 post contains changes suggested by Daniel P. Berrangé and Kevin
> Wolf. Thanks!

Thanks, applied to the block branch.

Kevin

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

* Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility
  2019-03-08 13:11 ` [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility Kevin Wolf
@ 2019-03-09  9:40   ` Niels de Vos
  2019-03-11 11:10     ` Kevin Wolf
  0 siblings, 1 reply; 8+ messages in thread
From: Niels de Vos @ 2019-03-09  9:40 UTC (permalink / raw)
  To: Kevin Wolf; +Cc: qemu-block, integration, qemu-devel, Stefano Garzarella

On Fri, Mar 08, 2019 at 02:11:51PM +0100, Kevin Wolf wrote:
> Am 05.03.2019 um 16:46 hat Niels de Vos geschrieben:
> > Gluster 6 is currently available as release candidate. There have been a
> > few changes to libgfapi.so that need to be adapted by consuming projects
> > like QEMU. Fedora Rawhide already contains glusterfs-6.0-RC0, and this
> > prevents rebuilds of QEMU there (https://bugzilla.redhat.com/1684298).
> > 
> > The following two changes should be sufficient to consume Gluster 6 once
> > it is released. These have been tested on CentOS-7 with Gluster 5 and
> > Gluster 6 (minimal manual qemu-img tests only).
> > 
> > This v2 post contains changes suggested by Daniel P. Berrangé and Kevin
> > Wolf. Thanks!
> 
> Thanks, applied to the block branch.

Thanks! Stefano Garzarella gave a suggestion for further cleanup. I was
planning to address that (no #ifdef for function arguments) next week
when I'm back from a trip, Is that something you would also like to see,
or do you prefer the change to stay minimal/small as it is now? I'm
happy to send a followup if you agree that it is cleaner.

Niels

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

* Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility
  2019-03-09  9:40   ` Niels de Vos
@ 2019-03-11 11:10     ` Kevin Wolf
  0 siblings, 0 replies; 8+ messages in thread
From: Kevin Wolf @ 2019-03-11 11:10 UTC (permalink / raw)
  To: Niels de Vos; +Cc: qemu-block, integration, qemu-devel, Stefano Garzarella

Am 09.03.2019 um 10:40 hat Niels de Vos geschrieben:
> On Fri, Mar 08, 2019 at 02:11:51PM +0100, Kevin Wolf wrote:
> > Am 05.03.2019 um 16:46 hat Niels de Vos geschrieben:
> > > Gluster 6 is currently available as release candidate. There have been a
> > > few changes to libgfapi.so that need to be adapted by consuming projects
> > > like QEMU. Fedora Rawhide already contains glusterfs-6.0-RC0, and this
> > > prevents rebuilds of QEMU there (https://bugzilla.redhat.com/1684298).
> > > 
> > > The following two changes should be sufficient to consume Gluster 6 once
> > > it is released. These have been tested on CentOS-7 with Gluster 5 and
> > > Gluster 6 (minimal manual qemu-img tests only).
> > > 
> > > This v2 post contains changes suggested by Daniel P. Berrangé and Kevin
> > > Wolf. Thanks!
> > 
> > Thanks, applied to the block branch.
> 
> Thanks! Stefano Garzarella gave a suggestion for further cleanup. I was
> planning to address that (no #ifdef for function arguments) next week
> when I'm back from a trip, Is that something you would also like to see,
> or do you prefer the change to stay minimal/small as it is now? I'm
> happy to send a followup if you agree that it is cleaner.

I don't mind either way.

I'm going to send a pull request tomorrow for soft freeze, but if you
tell me that I should wait with this one, I can remove it from my queue
for now. It's a bug fix, so we can still apply an updated version during
the freeze.

A follow-up works for me, too, so whatever you prefer.

Kevin

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

end of thread, other threads:[~2019-03-11 11:26 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-05 15:46 [Qemu-devel] [PATCH v2 0/2] block: Gluster 6 compatibility Niels de Vos
2019-03-05 15:46 ` [Qemu-devel] [PATCH v5 1/2] block/gluster: Handle changed glfs_ftruncate signature Niels de Vos
2019-03-06 10:46   ` Stefano Garzarella
2019-03-05 15:46 ` [Qemu-devel] [PATCH v2 2/2] gluster: the glfs_io_cbk callback function pointer adds pre/post stat args Niels de Vos
2019-03-06 10:52   ` Stefano Garzarella
2019-03-08 13:11 ` [Qemu-devel] [Qemu-block] [PATCH v2 0/2] block: Gluster 6 compatibility Kevin Wolf
2019-03-09  9:40   ` Niels de Vos
2019-03-11 11:10     ` Kevin Wolf

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.