All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [RFC PATCH v1 0/3] pkg-config and discard support for gluster driver
@ 2013-07-12  6:56 Bharata B Rao
  2013-07-12  6:58 ` [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver Bharata B Rao
  2013-07-12  7:00 ` [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for " Bharata B Rao
  0 siblings, 2 replies; 14+ messages in thread
From: Bharata B Rao @ 2013-07-12  6:56 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kevin Wolf, Stefan Hajnoczi, Anand Avati

Hi,

This is a patchset that achieves the following:

- Use pkg-config to configure GlusterFS driver in QEMU.
- Enable discard support in GlusterFS driver.

Regards,
Bharata.

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

* [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-12  6:56 [Qemu-devel] [RFC PATCH v1 0/3] pkg-config and discard support for gluster driver Bharata B Rao
@ 2013-07-12  6:58 ` Bharata B Rao
  2013-07-16  6:02   ` Stefan Hajnoczi
                     ` (2 more replies)
  2013-07-12  7:00 ` [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for " Bharata B Rao
  1 sibling, 3 replies; 14+ messages in thread
From: Bharata B Rao @ 2013-07-12  6:58 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kevin Wolf, Stefan Hajnoczi, Anand Avati

gluster: Use pkg-config to configure GlusterFS block driver

Use pkg-config to determine the version and library dependency
for GlusterFS block driver.

Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
---
 configure |   20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/configure b/configure
index cb0f870..76adcb1 100755
--- a/configure
+++ b/configure
@@ -2566,23 +2566,17 @@ fi
 ##########################################
 # glusterfs probe
 if test "$glusterfs" != "no" ; then
-  cat > $TMPC <<EOF
-#include <glusterfs/api/glfs.h>
-int main(void) {
-    (void) glfs_new("volume");
-    return 0;
-}
-EOF
-  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
-  if compile_prog "" "$glusterfs_libs" ; then
-    glusterfs=yes
-    libs_tools="$glusterfs_libs $libs_tools"
-    libs_softmmu="$glusterfs_libs $libs_softmmu"
+  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
+    glusterfs="yes"
+    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
+    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
+    CFLAGS="$CFLAGS $glusterfs_cflags"
+    LIBS="$LIBS $glusterfs_libs"
   else
     if test "$glusterfs" = "yes" ; then
       feature_not_found "GlusterFS backend support"
     fi
-    glusterfs=no
+    glusterfs="no"
   fi
 fi
 

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

* [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for GlusterFS block driver
  2013-07-12  6:56 [Qemu-devel] [RFC PATCH v1 0/3] pkg-config and discard support for gluster driver Bharata B Rao
  2013-07-12  6:58 ` [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver Bharata B Rao
@ 2013-07-12  7:00 ` Bharata B Rao
  2013-07-16  6:05   ` Stefan Hajnoczi
  2013-07-16  8:29   ` Kevin Wolf
  1 sibling, 2 replies; 14+ messages in thread
From: Bharata B Rao @ 2013-07-12  7:00 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kevin Wolf, Stefan Hajnoczi, Anand Avati

gluster: Add discard support for GlusterFS block driver.

Implement bdrv_aio_discard for gluster.

Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
---
 block/gluster.c |   45 +++++++++++++++++++++++++++++++++++++++++++++
 configure       |    8 ++++++++
 2 files changed, 53 insertions(+)

diff --git a/block/gluster.c b/block/gluster.c
index 61424bc..6de418c 100644
--- a/block/gluster.c
+++ b/block/gluster.c
@@ -532,6 +532,39 @@ out:
     return NULL;
 }
 
+#ifdef CONFIG_GLUSTERFS_DISCARD
+static BlockDriverAIOCB *qemu_gluster_aio_discard(BlockDriverState *bs,
+        int64_t sector_num, int nb_sectors, BlockDriverCompletionFunc *cb,
+        void *opaque)
+{
+    int ret;
+    GlusterAIOCB *acb;
+    BDRVGlusterState *s = bs->opaque;
+    size_t size;
+    off_t offset;
+
+    offset = sector_num * BDRV_SECTOR_SIZE;
+    size = nb_sectors * BDRV_SECTOR_SIZE;
+
+    acb = qemu_aio_get(&gluster_aiocb_info, bs, cb, opaque);
+    acb->size = 0;
+    acb->ret = 0;
+    acb->finished = NULL;
+    s->qemu_aio_count++;
+
+    ret = glfs_discard_async(s->fd, offset, size, &gluster_finish_aiocb, acb);
+    if (ret < 0) {
+        goto out;
+    }
+    return &acb->common;
+
+out:
+    s->qemu_aio_count--;
+    qemu_aio_release(acb);
+    return NULL;
+}
+#endif
+
 static int64_t qemu_gluster_getlength(BlockDriverState *bs)
 {
     BDRVGlusterState *s = bs->opaque;
@@ -602,6 +635,9 @@ static BlockDriver bdrv_gluster = {
     .bdrv_aio_writev              = qemu_gluster_aio_writev,
     .bdrv_aio_flush               = qemu_gluster_aio_flush,
     .bdrv_has_zero_init           = qemu_gluster_has_zero_init,
+#ifdef CONFIG_GLUSTERFS_DISCARD
+    .bdrv_aio_discard             = qemu_gluster_aio_discard,
+#endif
     .create_options               = qemu_gluster_create_options,
 };
 
@@ -618,6 +654,9 @@ static BlockDriver bdrv_gluster_tcp = {
     .bdrv_aio_writev              = qemu_gluster_aio_writev,
     .bdrv_aio_flush               = qemu_gluster_aio_flush,
     .bdrv_has_zero_init           = qemu_gluster_has_zero_init,
+#ifdef CONFIG_GLUSTERFS_DISCARD
+    .bdrv_aio_discard             = qemu_gluster_aio_discard,
+#endif
     .create_options               = qemu_gluster_create_options,
 };
 
@@ -634,6 +673,9 @@ static BlockDriver bdrv_gluster_unix = {
     .bdrv_aio_writev              = qemu_gluster_aio_writev,
     .bdrv_aio_flush               = qemu_gluster_aio_flush,
     .bdrv_has_zero_init           = qemu_gluster_has_zero_init,
+#ifdef CONFIG_GLUSTERFS_DISCARD
+    .bdrv_aio_discard             = qemu_gluster_aio_discard,
+#endif
     .create_options               = qemu_gluster_create_options,
 };
 
@@ -650,6 +692,9 @@ static BlockDriver bdrv_gluster_rdma = {
     .bdrv_aio_writev              = qemu_gluster_aio_writev,
     .bdrv_aio_flush               = qemu_gluster_aio_flush,
     .bdrv_has_zero_init           = qemu_gluster_has_zero_init,
+#ifdef CONFIG_GLUSTERFS_DISCARD
+    .bdrv_aio_discard             = qemu_gluster_aio_discard,
+#endif
     .create_options               = qemu_gluster_create_options,
 };
 
diff --git a/configure b/configure
index 76adcb1..7f90882 100755
--- a/configure
+++ b/configure
@@ -237,6 +237,7 @@ libiscsi=""
 coroutine=""
 seccomp=""
 glusterfs=""
+glusterfs_discard="no"
 virtio_blk_data_plane=""
 gtk=""
 gtkabi="2.0"
@@ -2572,6 +2573,9 @@ if test "$glusterfs" != "no" ; then
     glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
     CFLAGS="$CFLAGS $glusterfs_cflags"
     LIBS="$LIBS $glusterfs_libs"
+    if $pkg_config --atleast-version=5 glusterfs-api >/dev/null 2>&1; then
+      glusterfs_discard="yes"
+    fi
   else
     if test "$glusterfs" = "yes" ; then
       feature_not_found "GlusterFS backend support"
@@ -3959,6 +3963,10 @@ if test "$glusterfs" = "yes" ; then
   echo "CONFIG_GLUSTERFS=y" >> $config_host_mak
 fi
 
+if test "$glusterfs_discard" = "yes" ; then
+  echo "CONFIG_GLUSTERFS_DISCARD=y" >> $config_host_mak
+fi
+
 if test "$libssh2" = "yes" ; then
   echo "CONFIG_LIBSSH2=y" >> $config_host_mak
 fi

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-12  6:58 ` [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver Bharata B Rao
@ 2013-07-16  6:02   ` Stefan Hajnoczi
  2013-07-16  6:04     ` Anand Avati
  2013-07-16  8:25   ` Kevin Wolf
  2013-07-23 11:57   ` Daniel P. Berrange
  2 siblings, 1 reply; 14+ messages in thread
From: Stefan Hajnoczi @ 2013-07-16  6:02 UTC (permalink / raw)
  To: Bharata B Rao; +Cc: Kevin Wolf, Anand Avati, qemu-devel

On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
> gluster: Use pkg-config to configure GlusterFS block driver

The commit message is duplicated in the commit description.

> Use pkg-config to determine the version and library dependency
> for GlusterFS block driver.
> 
> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
> ---
>  configure |   20 +++++++-------------
>  1 file changed, 7 insertions(+), 13 deletions(-)
> 
> diff --git a/configure b/configure
> index cb0f870..76adcb1 100755
> --- a/configure
> +++ b/configure
> @@ -2566,23 +2566,17 @@ fi
>  ##########################################
>  # glusterfs probe
>  if test "$glusterfs" != "no" ; then
> -  cat > $TMPC <<EOF
> -#include <glusterfs/api/glfs.h>
> -int main(void) {
> -    (void) glfs_new("volume");
> -    return 0;
> -}
> -EOF
> -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
> -  if compile_prog "" "$glusterfs_libs" ; then
> -    glusterfs=yes
> -    libs_tools="$glusterfs_libs $libs_tools"
> -    libs_softmmu="$glusterfs_libs $libs_softmmu"
> +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then

gfapi was added in Gluster 3.4.  Is --atleast-version=3 sufficient?

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-16  6:02   ` Stefan Hajnoczi
@ 2013-07-16  6:04     ` Anand Avati
  0 siblings, 0 replies; 14+ messages in thread
From: Anand Avati @ 2013-07-16  6:04 UTC (permalink / raw)
  To: Stefan Hajnoczi; +Cc: Kevin Wolf, qemu-devel, Bharata B Rao

On 7/15/13 11:02 PM, Stefan Hajnoczi wrote:
> On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
>> gluster: Use pkg-config to configure GlusterFS block driver
>
> The commit message is duplicated in the commit description.
>
>> Use pkg-config to determine the version and library dependency
>> for GlusterFS block driver.
>>
>> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
>> ---
>>   configure |   20 +++++++-------------
>>   1 file changed, 7 insertions(+), 13 deletions(-)
>>
>> diff --git a/configure b/configure
>> index cb0f870..76adcb1 100755
>> --- a/configure
>> +++ b/configure
>> @@ -2566,23 +2566,17 @@ fi
>>   ##########################################
>>   # glusterfs probe
>>   if test "$glusterfs" != "no" ; then
>> -  cat > $TMPC <<EOF
>> -#include <glusterfs/api/glfs.h>
>> -int main(void) {
>> -    (void) glfs_new("volume");
>> -    return 0;
>> -}
>> -EOF
>> -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
>> -  if compile_prog "" "$glusterfs_libs" ; then
>> -    glusterfs=yes
>> -    libs_tools="$glusterfs_libs $libs_tools"
>> -    libs_softmmu="$glusterfs_libs $libs_softmmu"
>> +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
>
> gfapi was added in Gluster 3.4.  Is --atleast-version=3 sufficient?
>

--atleast-version=3 is the api version (not release version). 3 is 
sufficient for basic qemu integration. 5 and above has fallocate/discard.

Avati

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

* Re: [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for GlusterFS block driver
  2013-07-12  7:00 ` [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for " Bharata B Rao
@ 2013-07-16  6:05   ` Stefan Hajnoczi
  2013-07-16  8:29   ` Kevin Wolf
  1 sibling, 0 replies; 14+ messages in thread
From: Stefan Hajnoczi @ 2013-07-16  6:05 UTC (permalink / raw)
  To: Bharata B Rao; +Cc: Kevin Wolf, Anand Avati, qemu-devel

On Fri, Jul 12, 2013 at 12:30:08PM +0530, Bharata B Rao wrote:
> gluster: Add discard support for GlusterFS block driver.

Commit message duplicated into commit description.

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-12  6:58 ` [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver Bharata B Rao
  2013-07-16  6:02   ` Stefan Hajnoczi
@ 2013-07-16  8:25   ` Kevin Wolf
  2013-07-16 11:34     ` Bharata B Rao
  2013-07-23 11:57   ` Daniel P. Berrange
  2 siblings, 1 reply; 14+ messages in thread
From: Kevin Wolf @ 2013-07-16  8:25 UTC (permalink / raw)
  To: Bharata B Rao; +Cc: Stefan Hajnoczi, Anand Avati, qemu-devel

Am 12.07.2013 um 08:58 hat Bharata B Rao geschrieben:
> gluster: Use pkg-config to configure GlusterFS block driver
> 
> Use pkg-config to determine the version and library dependency
> for GlusterFS block driver.
> 
> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
> ---
>  configure |   20 +++++++-------------
>  1 file changed, 7 insertions(+), 13 deletions(-)
> 
> diff --git a/configure b/configure
> index cb0f870..76adcb1 100755
> --- a/configure
> +++ b/configure
> @@ -2566,23 +2566,17 @@ fi
>  ##########################################
>  # glusterfs probe
>  if test "$glusterfs" != "no" ; then
> -  cat > $TMPC <<EOF
> -#include <glusterfs/api/glfs.h>
> -int main(void) {
> -    (void) glfs_new("volume");
> -    return 0;
> -}
> -EOF
> -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
> -  if compile_prog "" "$glusterfs_libs" ; then
> -    glusterfs=yes
> -    libs_tools="$glusterfs_libs $libs_tools"
> -    libs_softmmu="$glusterfs_libs $libs_softmmu"
> +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
> +    glusterfs="yes"
> +    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
> +    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
> +    CFLAGS="$CFLAGS $glusterfs_cflags"
> +    LIBS="$LIBS $glusterfs_libs"

Why do you switch from libs_tools/libs_softmmu to LIBS? If I understand
it right, this means that you now link the library to linux-user targets
as well, but I can't see how they need it.

Kevin

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

* Re: [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for GlusterFS block driver
  2013-07-12  7:00 ` [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for " Bharata B Rao
  2013-07-16  6:05   ` Stefan Hajnoczi
@ 2013-07-16  8:29   ` Kevin Wolf
  1 sibling, 0 replies; 14+ messages in thread
From: Kevin Wolf @ 2013-07-16  8:29 UTC (permalink / raw)
  To: Bharata B Rao; +Cc: Stefan Hajnoczi, Anand Avati, qemu-devel

Am 12.07.2013 um 09:00 hat Bharata B Rao geschrieben:
> gluster: Add discard support for GlusterFS block driver.
> 
> Implement bdrv_aio_discard for gluster.
> 
> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>

Reviewed-by: Kevin Wolf <kwolf@redhat.com>

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-16  8:25   ` Kevin Wolf
@ 2013-07-16 11:34     ` Bharata B Rao
  0 siblings, 0 replies; 14+ messages in thread
From: Bharata B Rao @ 2013-07-16 11:34 UTC (permalink / raw)
  To: Kevin Wolf; +Cc: Stefan Hajnoczi, Anand Avati, qemu-devel

On Tue, Jul 16, 2013 at 10:25:29AM +0200, Kevin Wolf wrote:
> > -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
> > -  if compile_prog "" "$glusterfs_libs" ; then
> > -    glusterfs=yes
> > -    libs_tools="$glusterfs_libs $libs_tools"
> > -    libs_softmmu="$glusterfs_libs $libs_softmmu"
> > +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
> > +    glusterfs="yes"
> > +    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
> > +    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
> > +    CFLAGS="$CFLAGS $glusterfs_cflags"
> > +    LIBS="$LIBS $glusterfs_libs"
> 
> Why do you switch from libs_tools/libs_softmmu to LIBS? If I understand
> it right, this means that you now link the library to linux-user targets
> as well, but I can't see how they need it.

Copied from some other backend and didn't realize that I ended up considering
linux-user target also. Will change this and send v2.

Regards,
Bharata.

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-12  6:58 ` [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver Bharata B Rao
  2013-07-16  6:02   ` Stefan Hajnoczi
  2013-07-16  8:25   ` Kevin Wolf
@ 2013-07-23 11:57   ` Daniel P. Berrange
  2013-07-23 12:02     ` Anand Avati
  2 siblings, 1 reply; 14+ messages in thread
From: Daniel P. Berrange @ 2013-07-23 11:57 UTC (permalink / raw)
  To: Bharata B Rao; +Cc: Kevin Wolf, Stefan Hajnoczi, Anand Avati, qemu-devel

On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
> gluster: Use pkg-config to configure GlusterFS block driver
> 
> Use pkg-config to determine the version and library dependency
> for GlusterFS block driver.
> 
> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
> ---
>  configure |   20 +++++++-------------
>  1 file changed, 7 insertions(+), 13 deletions(-)
> 
> diff --git a/configure b/configure
> index cb0f870..76adcb1 100755
> --- a/configure
> +++ b/configure
> @@ -2566,23 +2566,17 @@ fi
>  ##########################################
>  # glusterfs probe
>  if test "$glusterfs" != "no" ; then
> -  cat > $TMPC <<EOF
> -#include <glusterfs/api/glfs.h>
> -int main(void) {
> -    (void) glfs_new("volume");
> -    return 0;
> -}
> -EOF
> -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
> -  if compile_prog "" "$glusterfs_libs" ; then
> -    glusterfs=yes
> -    libs_tools="$glusterfs_libs $libs_tools"
> -    libs_softmmu="$glusterfs_libs $libs_softmmu"
> +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
> +    glusterfs="yes"
> +    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
> +    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
> +    CFLAGS="$CFLAGS $glusterfs_cflags"
> +    LIBS="$LIBS $glusterfs_libs"

The glusterfs v 3.4 RPMs in Fedora do not include any pkg-config files.
So with this change now in GIT, QEMU no longer detects support for
glusterfs even though it is present.

Has the min required glusterfs been increased to a new 3.5 version
which does include pkg-config support ?  If not, then I think this
patch needs to be reverted, so that it does a non-pkg-config based
check for glusterfs.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-23 11:57   ` Daniel P. Berrange
@ 2013-07-23 12:02     ` Anand Avati
  2013-07-23 12:03       ` Daniel P. Berrange
  2013-07-23 12:07       ` Kaleb KEITHLEY
  0 siblings, 2 replies; 14+ messages in thread
From: Anand Avati @ 2013-07-23 12:02 UTC (permalink / raw)
  To: Daniel P. Berrange
  Cc: Kevin Wolf, Stefan Hajnoczi, qemu-devel, Bharata B Rao,
	Kaleb Keithley, devel

On 7/23/13 4:57 AM, Daniel P. Berrange wrote:
> On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
>> gluster: Use pkg-config to configure GlusterFS block driver
>>
>> Use pkg-config to determine the version and library dependency
>> for GlusterFS block driver.
>>
>> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
>> ---
>>   configure |   20 +++++++-------------
>>   1 file changed, 7 insertions(+), 13 deletions(-)
>>
>> diff --git a/configure b/configure
>> index cb0f870..76adcb1 100755
>> --- a/configure
>> +++ b/configure
>> @@ -2566,23 +2566,17 @@ fi
>>   ##########################################
>>   # glusterfs probe
>>   if test "$glusterfs" != "no" ; then
>> -  cat > $TMPC <<EOF
>> -#include <glusterfs/api/glfs.h>
>> -int main(void) {
>> -    (void) glfs_new("volume");
>> -    return 0;
>> -}
>> -EOF
>> -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
>> -  if compile_prog "" "$glusterfs_libs" ; then
>> -    glusterfs=yes
>> -    libs_tools="$glusterfs_libs $libs_tools"
>> -    libs_softmmu="$glusterfs_libs $libs_softmmu"
>> +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
>> +    glusterfs="yes"
>> +    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
>> +    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
>> +    CFLAGS="$CFLAGS $glusterfs_cflags"
>> +    LIBS="$LIBS $glusterfs_libs"
>
> The glusterfs v 3.4 RPMs in Fedora do not include any pkg-config files.
> So with this change now in GIT, QEMU no longer detects support for
> glusterfs even though it is present.
>
> Has the min required glusterfs been increased to a new 3.5 version
> which does include pkg-config support ?  If not, then I think this
> patch needs to be reverted, so that it does a non-pkg-config based
> check for glusterfs.
>
> Regards,
> Daniel
>

Copying Kaleb.

We should just include the pkg-config file in the Fedora RPM for 
glusterfs if it already isn't.

Avati

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-23 12:02     ` Anand Avati
@ 2013-07-23 12:03       ` Daniel P. Berrange
  2013-07-23 12:07       ` Kaleb KEITHLEY
  1 sibling, 0 replies; 14+ messages in thread
From: Daniel P. Berrange @ 2013-07-23 12:03 UTC (permalink / raw)
  To: Anand Avati
  Cc: Kevin Wolf, Stefan Hajnoczi, qemu-devel, Bharata B Rao,
	Kaleb Keithley, devel

On Tue, Jul 23, 2013 at 05:02:20AM -0700, Anand Avati wrote:
> On 7/23/13 4:57 AM, Daniel P. Berrange wrote:
> >On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
> >>gluster: Use pkg-config to configure GlusterFS block driver
> >>
> >>Use pkg-config to determine the version and library dependency
> >>for GlusterFS block driver.
> >>
> >>Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
> >>---
> >>  configure |   20 +++++++-------------
> >>  1 file changed, 7 insertions(+), 13 deletions(-)
> >>
> >>diff --git a/configure b/configure
> >>index cb0f870..76adcb1 100755
> >>--- a/configure
> >>+++ b/configure
> >>@@ -2566,23 +2566,17 @@ fi
> >>  ##########################################
> >>  # glusterfs probe
> >>  if test "$glusterfs" != "no" ; then
> >>-  cat > $TMPC <<EOF
> >>-#include <glusterfs/api/glfs.h>
> >>-int main(void) {
> >>-    (void) glfs_new("volume");
> >>-    return 0;
> >>-}
> >>-EOF
> >>-  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
> >>-  if compile_prog "" "$glusterfs_libs" ; then
> >>-    glusterfs=yes
> >>-    libs_tools="$glusterfs_libs $libs_tools"
> >>-    libs_softmmu="$glusterfs_libs $libs_softmmu"
> >>+  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1; then
> >>+    glusterfs="yes"
> >>+    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
> >>+    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
> >>+    CFLAGS="$CFLAGS $glusterfs_cflags"
> >>+    LIBS="$LIBS $glusterfs_libs"
> >
> >The glusterfs v 3.4 RPMs in Fedora do not include any pkg-config files.
> >So with this change now in GIT, QEMU no longer detects support for
> >glusterfs even though it is present.
> >
> >Has the min required glusterfs been increased to a new 3.5 version
> >which does include pkg-config support ?  If not, then I think this
> >patch needs to be reverted, so that it does a non-pkg-config based
> >check for glusterfs.
> >
> >Regards,
> >Daniel
> >
> 
> Copying Kaleb.
> 
> We should just include the pkg-config file in the Fedora RPM for
> glusterfs if it already isn't.

That doesn't help anyone trying to build QEMU with gluster support
on all the existing released distros which lack the pkg-config files.

If you really want a pkg-config file check for glusterfs in QEMU,
then it must at least fallback to probing the non-pkg-config way
to support existing deployed distros.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-23 12:02     ` Anand Avati
  2013-07-23 12:03       ` Daniel P. Berrange
@ 2013-07-23 12:07       ` Kaleb KEITHLEY
  2013-07-23 12:14         ` Daniel P. Berrange
  1 sibling, 1 reply; 14+ messages in thread
From: Kaleb KEITHLEY @ 2013-07-23 12:07 UTC (permalink / raw)
  To: Anand Avati, Daniel P. Berrange
  Cc: Kevin Wolf, Stefan Hajnoczi, qemu-devel, devel, Bharata B Rao

On 07/23/2013 05:32 PM, Anand Avati wrote:
> On 7/23/13 4:57 AM, Daniel P. Berrange wrote:
>> On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
>>> gluster: Use pkg-config to configure GlusterFS block driver
>>>
>>> Use pkg-config to determine the version and library dependency
>>> for GlusterFS block driver.
>>>
>>> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
>>> ---
>>>   configure |   20 +++++++-------------
>>>   1 file changed, 7 insertions(+), 13 deletions(-)
>>>
>>> diff --git a/configure b/configure
>>> index cb0f870..76adcb1 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -2566,23 +2566,17 @@ fi
>>>   ##########################################
>>>   # glusterfs probe
>>>   if test "$glusterfs" != "no" ; then
>>> -  cat > $TMPC <<EOF
>>> -#include <glusterfs/api/glfs.h>
>>> -int main(void) {
>>> -    (void) glfs_new("volume");
>>> -    return 0;
>>> -}
>>> -EOF
>>> -  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
>>> -  if compile_prog "" "$glusterfs_libs" ; then
>>> -    glusterfs=yes
>>> -    libs_tools="$glusterfs_libs $libs_tools"
>>> -    libs_softmmu="$glusterfs_libs $libs_softmmu"
>>> +  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1;
>>> then
>>> +    glusterfs="yes"
>>> +    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
>>> +    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
>>> +    CFLAGS="$CFLAGS $glusterfs_cflags"
>>> +    LIBS="$LIBS $glusterfs_libs"
>>
>> The glusterfs v 3.4 RPMs in Fedora do not include any pkg-config files.
>> So with this change now in GIT, QEMU no longer detects support for
>> glusterfs even though it is present.
>>
>> Has the min required glusterfs been increased to a new 3.5 version
>> which does include pkg-config support ?  If not, then I think this
>> patch needs to be reverted, so that it does a non-pkg-config based
>> check for glusterfs.
>>
>> Regards,
>> Daniel
>>
>
> Copying Kaleb.
>
> We should just include the pkg-config file in the Fedora RPM for
> glusterfs if it already isn't.

It's in the glusterfs-api-devel rpm:

% rpm -ql glusterfs-api-devel
/usr/include/glusterfs/api/glfs.h
/usr/lib64/libgfapi.so
/usr/lib64/pkgconfig/glusterfs-api.pc

--

Kaleb

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

* Re: [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver
  2013-07-23 12:07       ` Kaleb KEITHLEY
@ 2013-07-23 12:14         ` Daniel P. Berrange
  0 siblings, 0 replies; 14+ messages in thread
From: Daniel P. Berrange @ 2013-07-23 12:14 UTC (permalink / raw)
  To: Kaleb KEITHLEY
  Cc: Kevin Wolf, Anand Avati, Stefan Hajnoczi, qemu-devel,
	Bharata B Rao, devel

On Tue, Jul 23, 2013 at 05:37:54PM +0530, Kaleb KEITHLEY wrote:
> On 07/23/2013 05:32 PM, Anand Avati wrote:
> >On 7/23/13 4:57 AM, Daniel P. Berrange wrote:
> >>On Fri, Jul 12, 2013 at 12:28:54PM +0530, Bharata B Rao wrote:
> >>>gluster: Use pkg-config to configure GlusterFS block driver
> >>>
> >>>Use pkg-config to determine the version and library dependency
> >>>for GlusterFS block driver.
> >>>
> >>>Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
> >>>---
> >>>  configure |   20 +++++++-------------
> >>>  1 file changed, 7 insertions(+), 13 deletions(-)
> >>>
> >>>diff --git a/configure b/configure
> >>>index cb0f870..76adcb1 100755
> >>>--- a/configure
> >>>+++ b/configure
> >>>@@ -2566,23 +2566,17 @@ fi
> >>>  ##########################################
> >>>  # glusterfs probe
> >>>  if test "$glusterfs" != "no" ; then
> >>>-  cat > $TMPC <<EOF
> >>>-#include <glusterfs/api/glfs.h>
> >>>-int main(void) {
> >>>-    (void) glfs_new("volume");
> >>>-    return 0;
> >>>-}
> >>>-EOF
> >>>-  glusterfs_libs="-lgfapi -lgfrpc -lgfxdr"
> >>>-  if compile_prog "" "$glusterfs_libs" ; then
> >>>-    glusterfs=yes
> >>>-    libs_tools="$glusterfs_libs $libs_tools"
> >>>-    libs_softmmu="$glusterfs_libs $libs_softmmu"
> >>>+  if $pkg_config --atleast-version=3 glusterfs-api >/dev/null 2>&1;
> >>>then
> >>>+    glusterfs="yes"
> >>>+    glusterfs_cflags=`$pkg_config --cflags glusterfs-api 2>/dev/null`
> >>>+    glusterfs_libs=`$pkg_config --libs glusterfs-api 2>/dev/null`
> >>>+    CFLAGS="$CFLAGS $glusterfs_cflags"
> >>>+    LIBS="$LIBS $glusterfs_libs"
> >>
> >>The glusterfs v 3.4 RPMs in Fedora do not include any pkg-config files.
> >>So with this change now in GIT, QEMU no longer detects support for
> >>glusterfs even though it is present.
> >>
> >>Has the min required glusterfs been increased to a new 3.5 version
> >>which does include pkg-config support ?  If not, then I think this
> >>patch needs to be reverted, so that it does a non-pkg-config based
> >>check for glusterfs.
> >>
> >>Regards,
> >>Daniel
> >>
> >
> >Copying Kaleb.
> >
> >We should just include the pkg-config file in the Fedora RPM for
> >glusterfs if it already isn't.
> 
> It's in the glusterfs-api-devel rpm:
> 
> % rpm -ql glusterfs-api-devel
> /usr/include/glusterfs/api/glfs.h
> /usr/lib64/libgfapi.so
> /usr/lib64/pkgconfig/glusterfs-api.pc

Oooh, not the main glusterfs-devel RPM. Ok, ignore my earlier message

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

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

end of thread, other threads:[~2013-07-23 12:14 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-12  6:56 [Qemu-devel] [RFC PATCH v1 0/3] pkg-config and discard support for gluster driver Bharata B Rao
2013-07-12  6:58 ` [Qemu-devel] [RFC PATCH v1 1/2] gluster: Use pkg-config to configure GlusterFS block driver Bharata B Rao
2013-07-16  6:02   ` Stefan Hajnoczi
2013-07-16  6:04     ` Anand Avati
2013-07-16  8:25   ` Kevin Wolf
2013-07-16 11:34     ` Bharata B Rao
2013-07-23 11:57   ` Daniel P. Berrange
2013-07-23 12:02     ` Anand Avati
2013-07-23 12:03       ` Daniel P. Berrange
2013-07-23 12:07       ` Kaleb KEITHLEY
2013-07-23 12:14         ` Daniel P. Berrange
2013-07-12  7:00 ` [Qemu-devel] [RFC PATCH v1 2/2] gluster: Add discard support for " Bharata B Rao
2013-07-16  6:05   ` Stefan Hajnoczi
2013-07-16  8:29   ` 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.