[meta-virtualization] [meta-cloud-services][PATCH 3/3] glusterfs: uprev to 3.11.1

2017-07-23 Thread Yi Zhao
* Add systemd support

* Drop the following patch which already fixed in upstream:
  0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch

Signed-off-by: Yi Zhao 
---
 ...nt.glusterfs-not-accepting-version-argume.patch |  33 -
 ...c-allow-PYTHON-values-to-be-passed-via-en.patch |  67 ++
 .../dependence-on-correct-header-file-path.patch   |  32 +
 .../files/glusterd-change-port-range.patch |  39 ++
 .../files/{glusterd-ovp => glusterd.init}  |   6 +-
 recipes-extended/glusterfs/files/glusterd.service  |  12 ++
 ...fs-api-remove-unnecessary-library-options.patch |  31 +
 .../glusterfs-change-default-nfs-port-number.patch |  49 +++
 ...onfigure-automake-with-subdir-objects-for.patch |  37 ++
 ...glusterfs-disable-default-startup-scripts.patch |  24 +++-
 .../libglusterfs-Don-t-link-against-libfl.patch|  46 +++
 ...python-work-around-host-and-target-python.patch |  81 
 .../files/xlator-host-contamination-3.4.patch  |  34 +++--
 recipes-extended/glusterfs/glusterfs.inc   | 142 -
 recipes-extended/glusterfs/glusterfs_3.11.1.bb |   6 +
 recipes-extended/glusterfs/glusterfs_3.4.2.bb  |  12 --
 16 files changed, 550 insertions(+), 101 deletions(-)
 delete mode 100644 
recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch
 create mode 100644 
recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch
 create mode 100644 
recipes-extended/glusterfs/files/dependence-on-correct-header-file-path.patch
 create mode 100644 
recipes-extended/glusterfs/files/glusterd-change-port-range.patch
 rename recipes-extended/glusterfs/files/{glusterd-ovp => glusterd.init} (92%)
 create mode 100644 recipes-extended/glusterfs/files/glusterd.service
 create mode 100644 
recipes-extended/glusterfs/files/glusterfs-api-remove-unnecessary-library-options.patch
 create mode 100644 
recipes-extended/glusterfs/files/glusterfs-change-default-nfs-port-number.patch
 create mode 100644 
recipes-extended/glusterfs/files/glusterfs-configure-automake-with-subdir-objects-for.patch
 create mode 100644 
recipes-extended/glusterfs/files/libglusterfs-Don-t-link-against-libfl.patch
 create mode 100644 
recipes-extended/glusterfs/files/python-work-around-host-and-target-python.patch
 create mode 100644 recipes-extended/glusterfs/glusterfs_3.11.1.bb
 delete mode 100644 recipes-extended/glusterfs/glusterfs_3.4.2.bb

diff --git 
a/recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch
 
b/recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch
deleted file mode 100644
index d89fde9..000
--- 
a/recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 960a101ab795fed1b7505ed9db61769cbdb9450e Mon Sep 17 00:00:00 2001
-From: Sebastian Lenartowicz 
-Date: Wed, 4 Dec 2013 15:16:02 -0500
-Subject: [PATCH 1/1] Fix for mount.glusterfs not accepting --version argument
-
-The mount.glusterfs shell script serves as a convenient "gatekeeper"
-for the glusterfs program itself, and performs a few setup tasks,
-depending on the options it's given. However, an overzealous check
-for the number of arguments (any number of arguments less than 2)
-was preventing the --version and --help arguments from being usable
-on their own. This patch solves that by dropping the check (the
-glusterfs software itself can throw out commands with too few
-arguments, which makes the check redundant in any event).

- xlators/mount/fuse/utils/mount.glusterfs.in |2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/xlators/mount/fuse/utils/mount.glusterfs.in 
b/xlators/mount/fuse/utils/mount.glusterfs.in
-index 2a8183c..ea18efb 100755
 a/xlators/mount/fuse/utils/mount.glusterfs.in
-+++ b/xlators/mount/fuse/utils/mount.glusterfs.in
-@@ -395,7 +395,7 @@ main ()
- pos_args=$((pos_args+1))
- fi
- done
--if [ $in_opt = "yes" -o $pos_args -lt 2 ]; then
-+if [ $in_opt = "yes" ]; then
- usage
- exit 1
- fi
--- 
-1.7.9.7
-
diff --git 
a/recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch
 
b/recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch
new file mode 100644
index 000..a33ffce
--- /dev/null
+++ 
b/recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch
@@ -0,0 +1,67 @@
+From d535a5448191d433e328b0a25a0710da203c44e7 Mon Sep 17 00:00:00 2001
+From: Yi Zhao 
+Date: Wed, 19 Jul 2017 09:40:57 +0800
+Subject: [PATCH] configure.ac: allow PYTHON values to be passed via env
+
+Allow the recipe can specify specific values for PYTHON.
+
+Upstream-Status: Inappropriate [embedded 

[meta-virtualization] [meta-cloud-services][PATCH 2/3] librdmacm: add new recipe

2017-07-23 Thread Yi Zhao
User space RDMA 'socket' protocol and libraries for establising RDMA
communication. Includes both Infiniband specific and general RDMA
communication management libraries for unreliable datagram, reliable
connected, and multicast data transfers.

Signed-off-by: Yi Zhao 
---
 .../librdmacm/files/librdmacm-needs-libdl.patch| 21 +++
 recipes-extended/librdmacm/librdmacm_1.0.17.bb | 41 ++
 2 files changed, 62 insertions(+)
 create mode 100644 recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch
 create mode 100644 recipes-extended/librdmacm/librdmacm_1.0.17.bb

diff --git a/recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch 
b/recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch
new file mode 100644
index 000..bf15bea
--- /dev/null
+++ b/recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch
@@ -0,0 +1,21 @@
+Librdmacm links against libibverbs, and the current version of libibverbs
+uses dlopen(), so librdmacm must also link against libdl.
+
+Upstream-Status: Pending
+
+Signed-off-by: Donn Seeley 
+---
+ configure.in |2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/configure.in
 b/configure.in
+@@ -39,6 +39,8 @@ AC_CHECK_SIZEOF(long)
+ dnl Checks for libraries
+ AC_CHECK_LIB(pthread, pthread_mutex_init, [],
+ AC_MSG_ERROR([pthread_mutex_init() not found.  librdmacm requires 
libpthread.]))
++AC_CHECK_LIB(dl, dlsym, [],
++AC_MSG_ERROR([dlsym() not found.  librdmacm requires libdl.]))
+ if test "$disable_libcheck" != "yes"; then
+ AC_CHECK_LIB(ibverbs, ibv_get_device_list, [],
+ AC_MSG_ERROR([ibv_get_device_list() not found.  librdmacm requires 
libibverbs.]))
diff --git a/recipes-extended/librdmacm/librdmacm_1.0.17.bb 
b/recipes-extended/librdmacm/librdmacm_1.0.17.bb
new file mode 100644
index 000..ba022b0
--- /dev/null
+++ b/recipes-extended/librdmacm/librdmacm_1.0.17.bb
@@ -0,0 +1,41 @@
+SUMMARY = "Userspace RDMA Connection Manager"
+DESCRIPTION = "\
+User space RDMA 'socket' protocol and libraries for establising RDMA\
+communication.  Includes both Infiniband specific and general RDMA\
+communication management libraries for unreliable datagram, reliable\
+connected, and multicast data transfers.\
+Also includes ACM (communication management assistant) service."
+
+HOMEPAGE = "http://www.openfabrics.org/downloads/rdmacm/;
+SECTION = "libs/devel"
+
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=39cc3044d68741f9005da73e9b92db95"
+
+DEPENDS = "libibverbs"
+
+# Repo is at http://git.openfabrics.org/git?p=~shefty/librdmacm.git
+SRC_URI = "http://www.openfabrics.org/downloads/rdmacm/${BPN}-${PV}.tar.gz \
+   file://librdmacm-needs-libdl.patch"
+
+SRC_URI[md5sum] = "da6fad887e9c24cb01b74b75f8449cb1"
+SRC_URI[sha256sum] = 
"9381e1bf2c7079fc257b8eee74e731d3e7eec70e539bb4245084a7b05aeecb2a"
+
+inherit autotools
+
+# Allow plug-in symlinks.
+INSANE_SKIP_${PN} += "dev-so"
+
+PACKAGES += "${PN}-utils"
+FILES_${PN} = "${libdir}/*.so.* ${libdir}/rsocket/*.so*"
+FILES_${PN}-utils = "${bindir}"
+FILES_${PN}-staticdev += "${libdir}/rsocket/librspreload.a"
+FILES_${PN}-dbg += "${libdir}/rsocket/.debug"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind,"
+
+do_install_append() {
+rm -f ${D}${libdir}/librdmacm.la
+rm -f ${D}${libdir}/rsocket/librspreload.la
+}
-- 
2.7.4

-- 
___
meta-virtualization mailing list
meta-virtualization@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-virtualization


[meta-virtualization] [meta-cloud-services][PATCH 1/3] libibverbs: add new recpie

2017-07-23 Thread Yi Zhao
Libibverbs is a library that allows userspace processes to use
InfiniBand/RDMA 'verbs' directly.

Signed-off-by: Yi Zhao 
---
 recipes-extended/libibverbs/libibverbs_1.1.7.bb | 27 +
 1 file changed, 27 insertions(+)
 create mode 100644 recipes-extended/libibverbs/libibverbs_1.1.7.bb

diff --git a/recipes-extended/libibverbs/libibverbs_1.1.7.bb 
b/recipes-extended/libibverbs/libibverbs_1.1.7.bb
new file mode 100644
index 000..e75f90d
--- /dev/null
+++ b/recipes-extended/libibverbs/libibverbs_1.1.7.bb
@@ -0,0 +1,27 @@
+SUMMARY = "Support InfiniBand verbs"
+DESCRIPTION = "Libibverbs is a library that allows userspace processes to use 
InfiniBand/RDMA 'verbs' directly."
+HOMEPAGE = "http://www.openfabrics.org/downloads/verbs/;
+SECTION = "libs/devel"
+
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7c557f27dd795ba77cc419dddc656b51"
+
+# Official repo is at 
git://git.kernel.org/pub/scm/libs/infiniband/libibverbs.git
+SRC_URI = "http://www.openfabrics.org/downloads/verbs/${BPN}-${PV}.tar.gz;
+
+SRC_URI[md5sum] = "5aea59e4766ae4548419010ac84032ff"
+SRC_URI[sha256sum] = 
"31b4114bf32d41c9fc81a862ec5febed1e982975f21fa177ea9c7516c9064690"
+
+inherit autotools
+
+PACKAGES += "${PN}-utils"
+FILES_${PN} = "${sysconfdir} ${libdir}/*.so.*"
+FILES_${PN}-utils = "${bindir}"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind,"
+
+do_install_append() {
+mkdir -p ${D}${sysconfdir}/libibverbs.d
+rm -f ${D}${libdir}/libibverbs.la
+}
-- 
2.7.4

-- 
___
meta-virtualization mailing list
meta-virtualization@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-virtualization


[meta-virtualization] [meta-cloud-services][PATCH 0/3] glusterfs: upgrade to 3.11.1

2017-07-23 Thread Yi Zhao
Upgrade glusterfs from 3.4.2 to 3.11.1
Add libiverbs and librdmacm recipes which is needed by glusterfs.

Yi Zhao (3):
  libibverbs: add new recpie
  librdmacm: add new recipe
  glusterfs: uprev to 3.11.1

 ...nt.glusterfs-not-accepting-version-argume.patch |  33 -
 ...c-allow-PYTHON-values-to-be-passed-via-en.patch |  67 ++
 .../dependence-on-correct-header-file-path.patch   |  32 +
 .../files/glusterd-change-port-range.patch |  39 ++
 .../files/{glusterd-ovp => glusterd.init}  |   6 +-
 recipes-extended/glusterfs/files/glusterd.service  |  12 ++
 ...fs-api-remove-unnecessary-library-options.patch |  31 +
 .../glusterfs-change-default-nfs-port-number.patch |  49 +++
 ...onfigure-automake-with-subdir-objects-for.patch |  37 ++
 ...glusterfs-disable-default-startup-scripts.patch |  24 +++-
 .../libglusterfs-Don-t-link-against-libfl.patch|  46 +++
 ...python-work-around-host-and-target-python.patch |  81 
 .../files/xlator-host-contamination-3.4.patch  |  34 +++--
 recipes-extended/glusterfs/glusterfs.inc   | 142 -
 recipes-extended/glusterfs/glusterfs_3.11.1.bb |   6 +
 recipes-extended/glusterfs/glusterfs_3.4.2.bb  |  12 --
 recipes-extended/libibverbs/libibverbs_1.1.7.bb|  27 
 .../librdmacm/files/librdmacm-needs-libdl.patch|  21 +++
 recipes-extended/librdmacm/librdmacm_1.0.17.bb |  41 ++
 19 files changed, 639 insertions(+), 101 deletions(-)
 delete mode 100644 
recipes-extended/glusterfs/files/0001-Fix-for-mount.glusterfs-not-accepting-version-argume.patch
 create mode 100644 
recipes-extended/glusterfs/files/configure.ac-allow-PYTHON-values-to-be-passed-via-en.patch
 create mode 100644 
recipes-extended/glusterfs/files/dependence-on-correct-header-file-path.patch
 create mode 100644 
recipes-extended/glusterfs/files/glusterd-change-port-range.patch
 rename recipes-extended/glusterfs/files/{glusterd-ovp => glusterd.init} (92%)
 create mode 100644 recipes-extended/glusterfs/files/glusterd.service
 create mode 100644 
recipes-extended/glusterfs/files/glusterfs-api-remove-unnecessary-library-options.patch
 create mode 100644 
recipes-extended/glusterfs/files/glusterfs-change-default-nfs-port-number.patch
 create mode 100644 
recipes-extended/glusterfs/files/glusterfs-configure-automake-with-subdir-objects-for.patch
 create mode 100644 
recipes-extended/glusterfs/files/libglusterfs-Don-t-link-against-libfl.patch
 create mode 100644 
recipes-extended/glusterfs/files/python-work-around-host-and-target-python.patch
 create mode 100644 recipes-extended/glusterfs/glusterfs_3.11.1.bb
 delete mode 100644 recipes-extended/glusterfs/glusterfs_3.4.2.bb
 create mode 100644 recipes-extended/libibverbs/libibverbs_1.1.7.bb
 create mode 100644 recipes-extended/librdmacm/files/librdmacm-needs-libdl.patch
 create mode 100644 recipes-extended/librdmacm/librdmacm_1.0.17.bb

-- 
2.7.4

-- 
___
meta-virtualization mailing list
meta-virtualization@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-virtualization


[meta-virtualization] [PATCH] spice: Fix build failures

2017-07-23 Thread zhe.he
From: He Zhe 

Backport 3cb746329ea4846bd9c65e0198e69423379b6f62 "Use PRI macros in printf to
keep compatibility between 32/64bit system" from upstream to fix the following
errors:

server/jpeg_encoder.c:639:17: error: format '%lu' expects argument of type 'long
unsigned int', but argument 12 has type 'uint64_t {aka long long unsigned int}'
[-Werror=format=]

server/mjpeg_encoder.c:639:17: error: format '%lu' expects argument of type
'long unsigned int', but argument 13 has type 'uint64_t {aka long long unsigned
int}' [-Werror=format=]

server/mjpeg_encoder.c:706:21: error: format '%lu' expects argument of type
'long unsigned int', but argument 6 has type 'uint64_t {aka long long unsigned
int}' [-Werror=format=]

server/mjpeg_encoder.c:706:21: error: format '%lu' expects argument of type
'long unsigned int', but argument 7 has type 'uint64_t {aka long long unsigned
int}' [-Werror=format=]

server/mjpeg_encoder.c:936:75: error: integer overflow in expression
[-Werror=overflow]

Signed-off-by: He Zhe 
---
 ...ros-in-printf-to-keep-compatibility-betwe.patch | 72 ++
 recipes-support/spice/spice_git.bb |  1 +
 2 files changed, 73 insertions(+)
 create mode 100644 
recipes-support/spice/files/0001-Use-PRI-macros-in-printf-to-keep-compatibility-betwe.patch

diff --git 
a/recipes-support/spice/files/0001-Use-PRI-macros-in-printf-to-keep-compatibility-betwe.patch
 
b/recipes-support/spice/files/0001-Use-PRI-macros-in-printf-to-keep-compatibility-betwe.patch
new file mode 100644
index 000..18fa8fa
--- /dev/null
+++ 
b/recipes-support/spice/files/0001-Use-PRI-macros-in-printf-to-keep-compatibility-betwe.patch
@@ -0,0 +1,72 @@
+From 3cb746329ea4846bd9c65e0198e69423379b6f62 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=EC=86=8C=EB=B3=91=EC=B2=A0?= 
+Date: Thu, 24 Apr 2014 12:26:32 +
+Subject: [PATCH] Use PRI macros in printf to keep compatibility between
+ 32/64bit system
+
+gcc's some integer type definitions are different between 32/64bit system.
+This causes platform dependency problem with printf function. However,
+we can avoid this problem by using PRI macros that supports platform
+independent printf.
+---
+ server/mjpeg_encoder.c | 7 ---
+ server/red_worker.c| 4 ++--
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/server/mjpeg_encoder.c b/server/mjpeg_encoder.c
+index aea4964..f465d88 100644
+--- a/server/mjpeg_encoder.c
 b/server/mjpeg_encoder.c
+@@ -23,6 +23,7 @@
+ #include "mjpeg_encoder.h"
+ #include 
+ #include 
++#include 
+ 
+ #define MJPEG_MAX_FPS 25
+ #define MJPEG_MIN_FPS 1
+@@ -66,7 +67,7 @@ static const int 
mjpeg_quality_samples[MJPEG_QUALITY_SAMPLE_NUM] = {20, 30, 40,
+  * are not necessarily related to mis-estimation of the bit rate, and we would
+  * like to wait till the stream stabilizes.
+  */
+-#define MJPEG_WARMUP_TIME 3000L // 3 sec
++#define MJPEG_WARMUP_TIME 3000LL // 3 sec
+ 
+ enum {
+ MJPEG_QUALITY_EVAL_TYPE_SET,
+@@ -638,7 +639,7 @@ static void 
mjpeg_encoder_adjust_params_to_bit_rate(MJpegEncoder *encoder)
+ 
+ spice_debug("cur-fps=%u new-fps=%u (new/old=%.2f) |"
+ "bit-rate=%.2f (Mbps) latency=%u (ms) quality=%d |"
+-" new-size-avg %lu , base-size %lu, (new/old=%.2f) ",
++" new-size-avg %"PRIu64" , base-size %"PRIu64", 
(new/old=%.2f) ",
+ rate_control->fps, new_fps, 
((double)new_fps)/rate_control->fps,
+ ((double)rate_control->byte_rate*8)/1024/1024,
+ latency,
+@@ -703,7 +704,7 @@ static void mjpeg_encoder_adjust_fps(MJpegEncoder 
*encoder, uint64_t now)
+ 
+ avg_fps = ((double)rate_control->adjusted_fps_num_frames*1000) /
+   adjusted_fps_time_passed;
+-spice_debug("#frames-adjust=%lu #adjust-time=%lu avg-fps=%.2f",
++spice_debug("#frames-adjust=%"PRIu64" #adjust-time=%"PRIu64" 
avg-fps=%.2f",
+ rate_control->adjusted_fps_num_frames, 
adjusted_fps_time_passed, avg_fps);
+ spice_debug("defined=%u old-adjusted=%.2f", rate_control->fps, 
rate_control->adjusted_fps);
+ fps_ratio = avg_fps / rate_control->fps;
+diff --git a/server/red_worker.c b/server/red_worker.c
+index 619f7bc..1871e13 100644
+--- a/server/red_worker.c
 b/server/red_worker.c
+@@ -2594,8 +2594,8 @@ static void red_print_stream_stats(DisplayChannelClient 
*dcc, StreamAgent *agent
+ mjpeg_encoder_get_stats(agent->mjpeg_encoder, _stats);
+ }
+ 
+-spice_debug("stream=%ld dim=(%dx%d) #in-frames=%lu #in-avg-fps=%.2f 
#out-frames=%lu "
+-"out/in=%.2f #drops=%lu (#pipe=%lu #fps=%lu) out-avg-fps=%.2f 
"
++spice_debug("stream=%"PRIdPTR" dim=(%dx%d) #in-frames=%"PRIu64" 
#in-avg-fps=%.2f #out-frames=%"PRIu64" "
++"out/in=%.2f #drops=%"PRIu64" (#pipe=%"PRIu64" 
#fps=%"PRIu64") out-avg-fps=%.2f "
+ "passed-mm-time(sec)=%.2f