Hello community,

here is the log from the commit of package ocfs2-tools for openSUSE:Factory 
checked in at 2014-01-10 07:16:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ocfs2-tools (Old)
 and      /work/SRC/openSUSE:Factory/.ocfs2-tools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ocfs2-tools"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ocfs2-tools/ocfs2-tools.changes  2013-10-09 
09:44:55.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.ocfs2-tools.new/ocfs2-tools.changes     
2014-01-10 07:16:16.000000000 +0100
@@ -1,0 +2,20 @@
+Fri Dec 27 17:56:21 UTC 2013 - [email protected]
+
+- Patch re-factoring, so that we don't have to compile with ldlm
+  + 0001-Use-cmap-for-getting-cluster-name.patch
+  + 0002-Remove-controld-dependency-in-group_join-leave.patch
+  + 0003-Auto-setup-cluster_stack-based-on-what-is-on-disk.patch
+  + 0004-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
+  + 0005-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
+  - 0001-libo2cb-Remove-controld-actions-from-group-join-leav.patch
+  - 0002-libo2cb-Remove-rest-of-controld-functions.patch
+  - 0003-Get-cluster-name-from-corosync-cmap.patch
+  - 0004-Remove-controld-structures-from-debugfs.ocfs2.patch
+  - 0005-Check-for-DLM-kernel-version-in-user_begin_group_joi.patch
+  - 0006-Add-cmap-and-dlm-libraries-in-the-tools.patch
+  - 0008-mount.ocfs2-Read-stack-from-device-and-setup-stack-i.patch
+  - 0009-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
+  - 0010-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
+  - 0011-Use-dlm_lt-instead-of-dlm-for-DLM-libraries.patch
+
+-------------------------------------------------------------------

Old:
----
  0001-libo2cb-Remove-controld-actions-from-group-join-leav.patch
  0002-libo2cb-Remove-rest-of-controld-functions.patch
  0003-Get-cluster-name-from-corosync-cmap.patch
  0004-Remove-controld-structures-from-debugfs.ocfs2.patch
  0005-Check-for-DLM-kernel-version-in-user_begin_group_joi.patch
  0006-Add-cmap-and-dlm-libraries-in-the-tools.patch
  0007-Use-libdlm_lt.so.3-instead-of-libdlm_lt.so.patch
  0008-mount.ocfs2-Read-stack-from-device-and-setup-stack-i.patch
  0009-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
  0010-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
  0011-Use-dlm_lt-instead-of-dlm-for-DLM-libraries.patch

New:
----
  0001-Use-cmap-for-getting-cluster-name.patch
  0002-Remove-controld-dependency-in-group_join-leave.patch
  0003-Auto-setup-cluster_stack-based-on-what-is-on-disk.patch
  0004-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
  0005-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ocfs2-tools.spec ++++++
--- /var/tmp/diff_new_pack.ZXKX7B/_old  2014-01-10 07:16:17.000000000 +0100
+++ /var/tmp/diff_new_pack.ZXKX7B/_new  2014-01-10 07:16:17.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package ocfs2-tools
 #
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -47,16 +47,11 @@
 Patch215:       ocfs2console-libraries-include-aio.patch
 Patch220:       libocfs2-needs-libaio.patch
 Patch221:       libocfs2-Change-asserts-to-error.patch
-Patch222:       0001-libo2cb-Remove-controld-actions-from-group-join-leav.patch
-Patch223:       0002-libo2cb-Remove-rest-of-controld-functions.patch
-Patch224:       0003-Get-cluster-name-from-corosync-cmap.patch
-Patch225:       0004-Remove-controld-structures-from-debugfs.ocfs2.patch
-Patch226:       0005-Check-for-DLM-kernel-version-in-user_begin_group_joi.patch
-Patch227:       0006-Add-cmap-and-dlm-libraries-in-the-tools.patch
-Patch228:       0008-mount.ocfs2-Read-stack-from-device-and-setup-stack-i.patch
-Patch229:       0009-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
-Patch230:       0010-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
-Patch231:       0011-Use-dlm_lt-instead-of-dlm-for-DLM-libraries.patch
+Patch222:       0001-Use-cmap-for-getting-cluster-name.patch
+Patch223:       0002-Remove-controld-dependency-in-group_join-leave.patch
+Patch224:       0003-Auto-setup-cluster_stack-based-on-what-is-on-disk.patch
+Patch225:       0004-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
+Patch226:       0005-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
 
 BuildRequires:  autoconf
 BuildRequires:  e2fsprogs-devel
@@ -173,11 +168,6 @@
 %patch224 -p1
 %patch225 -p1
 %patch226 -p1
-%patch227 -p1
-%patch228 -p1
-%patch229 -p1
-%patch230 -p1
-%patch231 -p1
 
 %build
 export PROJECT="ocfs2-tools"

++++++ 0001-Use-cmap-for-getting-cluster-name.patch ++++++
>From 1110d13d756406a6188299bf68db4743cf7c41a3 Mon Sep 17 00:00:00 2001
From: Goldwyn Rodrigues <[email protected]>
Date: Sat, 21 Dec 2013 18:41:04 -0600
Subject: [PATCH] Use cmap for getting cluster name

---
 debugfs.ocfs2/Makefile |  2 +-
 libo2cb/o2cb_abi.c     | 79 +++++++++++++++++++++++++++-----------------------
 o2cb.pc.in             |  2 +-
 o2cb_ctl/Makefile      |  2 +-
 4 files changed, 46 insertions(+), 39 deletions(-)

diff --git a/debugfs.ocfs2/Makefile b/debugfs.ocfs2/Makefile
index ca4c9a4..30dfa5f 100644
--- a/debugfs.ocfs2/Makefile
+++ b/debugfs.ocfs2/Makefile
@@ -32,7 +32,7 @@ HFILES =                              \
 OBJS = $(subst .c,.o,$(CFILES))
 
 LIBOCFS2_LIBS = -L$(TOPDIR)/libocfs2 -locfs2
-LIBO2CB_LIBS = -L$(TOPDIR)/libo2cb -lo2cb
+LIBO2CB_LIBS = -L$(TOPDIR)/libo2cb -lo2cb $(DL_LIBS)
 
 MANS = debugfs.ocfs2.8
 
diff --git a/libo2cb/o2cb_abi.c b/libo2cb/o2cb_abi.c
index ae03595..40f8176 100644
--- a/libo2cb/o2cb_abi.c
+++ b/libo2cb/o2cb_abi.c
@@ -35,6 +35,8 @@
 #include <errno.h>
 #include <limits.h>
 #include <ctype.h>
+#include <dlfcn.h>
+#include <corosync/cmap.h>
 
 #include <linux/types.h>
 
@@ -1966,52 +1968,57 @@ static errcode_t classic_list_clusters(char ***clusters)
 
 static errcode_t user_list_clusters(char ***clusters)
 {
-       errcode_t err = O2CB_ET_SERVICE_UNAVAILABLE;
-       int rc, fd = -1;
-       char buf[OCFS2_CONTROLD_MAXLINE];
+       errcode_t ret = O2CB_ET_SERVICE_UNAVAILABLE;
+       void *lib_handle = NULL;
+       char **list;
+       int rv;
 
-       rc = ocfs2_client_connect();
-       if (rc < 0) {
-               /* fprintf(stderr, "Unable to connect to ocfs2_controld: %s\n",
-                       strerror(-rc)); */
-               switch (rc) {
-                       case -EACCES:
-                       case -EPERM:
-                               err = O2CB_ET_PERMISSION_DENIED;
-                               break;
+       cmap_handle_t handle;
+       static int (*initialize)(cmap_handle_t *handle);
+       static int (*get_string)(cmap_handle_t handle,
+                       const char *string,
+                       char **name);
+       static int (*finalize)(cmap_handle_t handle);
 
-                       default:
-                               err = O2CB_ET_SERVICE_UNAVAILABLE;
-                               break;
-               }
+
+       lib_handle = dlopen("libcmap.so", RTLD_NOW | RTLD_LOCAL);
+       if (!lib_handle)
+               return ret;
+
+       initialize = dlsym(lib_handle, "cmap_initialize");
+       if (!initialize)
                goto out;
-       }
-       fd = rc;
 
-       rc = send_message(fd, CM_LISTCLUSTERS);
-       if (rc) {
-               /* fprintf(stderr,
-                       "Unable to send LISTCLUSTERS message: %s\n",
-                       strerror(-rc)); */
-               err = O2CB_ET_IO;
+       get_string = dlsym(lib_handle, "cmap_get_string");
+       if (!get_string)
                goto out;
-       }
 
-       rc = receive_list(fd, buf, clusters);
-       if (rc) {
-               /* fprintf(stderr, "Error reading from daemon: %s\n",
-                       strerror(-rc)); */
-               err = O2CB_ET_IO;
+       finalize = dlsym(lib_handle, "cmap_finalize");
+       if (!finalize)
                goto out;
-       }
 
-       err = 0;
+       rv = initialize(&handle);
+       if (rv != CS_OK)
+               goto out;
 
-out:
-       if (fd != -1)
-               close(fd);
+       list = (char **)malloc(sizeof(char *) * 2);
+       if (!list)
+               goto out;
 
-       return err;
+       rv = get_string(handle, "totem.cluster_name", &list[0]);
+       if (rv != CS_OK) {
+               free(list);
+               ret = O2CB_ET_INTERNAL_FAILURE;
+               goto out;
+       }
+
+       list[1] = NULL;
+       *clusters = list;
+       finalize(handle);
+       ret = 0;
+out:
+       dlclose(lib_handle);
+       return ret;
 }
 
 errcode_t o2cb_list_clusters(char ***clusters)
diff --git a/o2cb.pc.in b/o2cb.pc.in
index be94b8a..f13c560 100644
--- a/o2cb.pc.in
+++ b/o2cb.pc.in
@@ -7,5 +7,5 @@ Name: o2cb
 Description: Library for accessing the ocfs2 cluster base (o2cb)
 Version: @VERSION@
 Requires: com_err
-Libs: -L${libdir} -lo2cb
+Libs: -L${libdir} -lo2cb -ldl
 Cflags: -I${includedir}
diff --git a/o2cb_ctl/Makefile b/o2cb_ctl/Makefile
index 5efcab4..8589748 100644
--- a/o2cb_ctl/Makefile
+++ b/o2cb_ctl/Makefile
@@ -13,7 +13,7 @@ LIBTOOLS_INTERNAL_DEPS = 
$(TOPDIR)/libtools-internal/libtools-internal.a
 LIBOCFS2_LIBS = -L$(TOPDIR)/libocfs2 -locfs2
 LIBOCFS2_DEPS = $(TOPDIR)/libocfs2/libocfs2.a
 
-LIBO2CB_LIBS  = -L$(TOPDIR)/libo2cb -lo2cb
+LIBO2CB_LIBS  = -L$(TOPDIR)/libo2cb -lo2cb $(DL_LIBS)
 LIBO2CB_DEPS = $(TOPDIR)/libo2cb/libo2cb.a
 
 LIBO2DLM_LIBS = -L$(TOPDIR)/libo2dlm -lo2dlm $(DL_LIBS)
-- 
1.8.4

++++++ 0002-Remove-controld-dependency-in-group_join-leave.patch ++++++
>From c863784d971acd7efddc415d5140b8846799162e Mon Sep 17 00:00:00 2001
From: Goldwyn Rodrigues <[email protected]>
Date: Fri, 27 Dec 2013 09:20:52 -0600
Subject: [PATCH] Remove controld dependency in group_join/leave

---
 libo2cb/o2cb_abi.c | 156 +++--------------------------------------------------
 1 file changed, 7 insertions(+), 149 deletions(-)

diff --git a/libo2cb/o2cb_abi.c b/libo2cb/o2cb_abi.c
index 40f8176..5eca49d 100644
--- a/libo2cb/o2cb_abi.c
+++ b/libo2cb/o2cb_abi.c
@@ -1373,164 +1373,22 @@ static errcode_t user_parse_status(char **args, int 
*error, char **error_msg)
 }
 
 static errcode_t user_begin_group_join(struct o2cb_cluster_desc *cluster,
-                                      struct o2cb_region_desc *region)
+               struct o2cb_region_desc *region)
 {
-       errcode_t err;
-       int rc;
-       int error;
-       char *error_msg;
-       client_message message;
-       char *argv[OCFS2_CONTROLD_MAXARGS + 1];
-       char buf[OCFS2_CONTROLD_MAXLINE];
-
-       if (control_daemon_fd != -1) {
-               /* fprintf(stderr, "Join already in progress!\n"); */
-               err = O2CB_ET_INTERNAL_FAILURE;
-               goto out;
-       }
-
-       rc = ocfs2_client_connect();
-       if (rc < 0) {
-               /* fprintf(stderr, "Unable to connect to ocfs2_controld: %s\n",
-                       strerror(-rc)); */
-               switch (rc) {
-                       case -EACCES:
-                       case -EPERM:
-                               err = O2CB_ET_PERMISSION_DENIED;
-                               break;
-
-                       default:
-                               err = O2CB_ET_SERVICE_UNAVAILABLE;
-                               break;
-               }
-               goto out;
-       }
-       control_daemon_fd = rc;
-
-       rc = send_message(control_daemon_fd, CM_MOUNT, OCFS2_FS_NAME,
-                         region->r_name, cluster->c_cluster,
-                         region->r_device_name, region->r_service);
-       if (rc) {
-               /* fprintf(stderr, "Unable to send MOUNT message: %s\n",
-                       strerror(-rc)); */
-               err = O2CB_ET_IO;
-               goto out;
-       }
-
-       rc = receive_message(control_daemon_fd, buf, &message, argv);
-       if (rc < 0) {
-               /* fprintf(stderr, "Error reading from daemon: %s\n",
-                       strerror(-rc)); */
-               err = O2CB_ET_IO;
-               goto out;
-       }
-
-       switch (message) {
-               case CM_STATUS:
-                       err = user_parse_status(argv, &error, &error_msg);
-                       if (err) {
-                               /* fprintf(stderr, "Bad status message: %s\n",
-                                       strerror(-rc)); */
-                               goto out;
-                       }
-                       if (error && (error != EALREADY)) {
-                               /* fprintf(stderr,
-                                       "Error %d from daemon: %s\n",
-                                       error, error_msg); */
-                               err = O2CB_ET_CONFIGURATION_ERROR;
-                               goto out;
-                       }
-                       break;
-
-               default:
-                       /* fprintf(stderr,
-                               "Unexpected message %s from daemon\n",
-                               message_to_string(message)); */
-                       err = O2CB_ET_INTERNAL_FAILURE;
-                       goto out;
-                       break;
-       }
-
-       err = 0;
+       errcode_t ret = 0;
 
-out:
-       if (err && (control_daemon_fd != -1)) {
-               close(control_daemon_fd);
-               control_daemon_fd = -1;
-       }
+       ret = o2cb_validate_cluster_name(cluster);
+       if (ret)
+               return ret;
 
-       return err;
+       return ret;
 }
 
 static errcode_t user_complete_group_join(struct o2cb_cluster_desc *cluster,
                                          struct o2cb_region_desc *region,
                                          int result)
 {
-       errcode_t err = O2CB_ET_SERVICE_UNAVAILABLE;
-       int rc;
-       int error;
-       char *error_msg;
-       client_message message;
-       char *argv[OCFS2_CONTROLD_MAXARGS + 1];
-       char buf[OCFS2_CONTROLD_MAXLINE];
-
-       if (control_daemon_fd == -1) {
-               /* fprintf(stderr, "Join not started!\n"); */
-               err = O2CB_ET_SERVICE_UNAVAILABLE;
-               goto out;
-       }
-
-       rc = send_message(control_daemon_fd, CM_MRESULT, OCFS2_FS_NAME,
-                         region->r_name, result, region->r_service);
-       if (rc) {
-               /* fprintf(stderr, "Unable to send MRESULT message: %s\n",
-                       strerror(-rc)); */
-               err = O2CB_ET_IO;
-               goto out;
-       }
-
-       rc = receive_message(control_daemon_fd, buf, &message, argv);
-       if (rc < 0) {
-               /* fprintf(stderr, "Error reading from daemon: %s\n",
-                       strerror(-rc)); */
-               err = O2CB_ET_IO;
-               goto out;
-       }
-
-       switch (message) {
-               case CM_STATUS:
-                       err = user_parse_status(argv, &error, &error_msg);
-                       if (err) {
-                               /* fprintf(stderr, "Bad status message: %s\n",
-                                       strerror(-rc)); */
-                               goto out;
-                       }
-                       if (error) {
-                               /* fprintf(stderr,
-                                       "Error %d from daemon: %s\n",
-                                       error, error_msg); */
-                               err = O2CB_ET_CONFIGURATION_ERROR;
-                       }
-                       break;
-
-               default:
-                       /* fprintf(stderr,
-                               "Unexpected message %s from daemon\n",
-                               message_to_string(message)); */
-                       err = O2CB_ET_INTERNAL_FAILURE;
-                       goto out;
-                       break;
-       }
-
-       err = 0;
-
-out:
-       if (control_daemon_fd != -1) {
-               close(control_daemon_fd);
-               control_daemon_fd = -1;
-       }
-
-       return err;
+       return 0;
 }
 
 static errcode_t user_group_leave(struct o2cb_cluster_desc *cluster,
-- 
1.8.4

++++++ 0003-Auto-setup-cluster_stack-based-on-what-is-on-disk.patch ++++++
>From 4b99b5a6042fe9b33079df64ab13817a309de528 Mon Sep 17 00:00:00 2001
From: Goldwyn Rodrigues <[email protected]>
Date: Fri, 27 Dec 2013 09:52:09 -0600
Subject: [PATCH] Auto setup cluster_stack based on what is on disk

This happens only the first time.
mount.ocfs2 reads the stack from the filesystems superblock. If the
stack is not setup, it will modprobe the modules and write the
appropriate stack name to cluster_stack file.
If it is already present, it tries to edit/re-write it, if different.
If it fails, the mount fails.
---
 include/o2cb/o2cb.h       |   1 +
 libo2cb/o2cb_abi.c        | 104 ++++++++++++++++++++++++++++++++++++++++++++++
 mount.ocfs2/mount.ocfs2.c |   6 +++
 3 files changed, 111 insertions(+)

diff --git a/include/o2cb/o2cb.h b/include/o2cb/o2cb.h
index d512cf9..5ef9754 100644
--- a/include/o2cb/o2cb.h
+++ b/include/o2cb/o2cb.h
@@ -208,5 +208,6 @@ void o2cb_control_close(void);
 errcode_t o2cb_control_node_down(const char *uuid, unsigned int nodeid);
 
 errcode_t o2cb_get_hb_ctl_path(char *buf, int count);
+errcode_t o2cb_setup_stack(char *stack_name);
 
 #endif  /* _O2CB_H */
diff --git a/libo2cb/o2cb_abi.c b/libo2cb/o2cb_abi.c
index 5eca49d..c751abf 100644
--- a/libo2cb/o2cb_abi.c
+++ b/libo2cb/o2cb_abi.c
@@ -29,6 +29,7 @@
 #include <sys/ioctl.h>
 #include <sys/ipc.h>
 #include <sys/sem.h>
+#include <sys/wait.h>
 #include <dirent.h>
 #include <fcntl.h>
 #include <unistd.h>
@@ -145,6 +146,22 @@ static ssize_t read_single_line_file(const char *file, 
char *line,
        return ret;
 }
 
+static int write_single_line_file(char *filename, char *line, size_t count)
+{
+       ssize_t ret = 0;
+       FILE *f;
+
+       f = fopen(filename, "w");
+       if (f) {
+               if (fputs(line, f))
+                       ret = strlen(line);
+               fclose(f);
+       } else
+               ret = -errno;
+
+       return ret;
+}
+
 static ssize_t read_stack_file(char *line, size_t count)
 {
        return read_single_line_file(CLUSTER_STACK_FILE, line, count);
@@ -2383,3 +2400,90 @@ errcode_t o2cb_get_hb_ctl_path(char *buf, int count)
 
        return 0;
 }
+
+#define MODPROBE_COMMAND       "/sbin/modprobe"
+#define USER_KERNEL_MODULE     "ocfs2_stack_user"
+#define O2CB_KERNEL_MODULE     "ocfs2_stack_o2cb"
+
+static int perform_modprobe(char *module_name)
+{
+       pid_t child;
+       int child_status;
+
+       char *argv[3];
+
+       argv[0] = MODPROBE_COMMAND;
+       argv[1] = module_name;
+       argv[2] = NULL;
+
+       child = fork();
+       if (child == 0) {
+               execv(MODPROBE_COMMAND, argv);
+               /* If execv fails, we have a problem */
+               return -EINVAL;
+       } else 
+               wait(&child_status);
+
+       return child_status;
+}
+
+errcode_t o2cb_setup_stack(char *stack_name)
+{
+       char line[64];
+       int modprobe_performed = 0, write_performed = 0;
+       errcode_t err = O2CB_ET_SERVICE_UNAVAILABLE;
+       int len;
+
+redo:
+       len = read_single_line_file(CLUSTER_STACK_FILE, line, sizeof(line));
+
+       if (len > 0) {
+               if (line[len - 1] == '\n') {
+                       line[len - 1] = '\0';
+                       len--;
+               }
+
+               if (len != OCFS2_STACK_LABEL_LEN) {
+                       err = O2CB_ET_INTERNAL_FAILURE;
+                       goto out;
+               }
+
+               if (!strncmp(line, stack_name, OCFS2_STACK_LABEL_LEN)) {
+                       err = 0;
+                       goto out;
+               }
+
+               if (!write_performed) {
+                       write_single_line_file(CLUSTER_STACK_FILE, stack_name,
+                                       strlen(stack_name));
+                       write_performed = 1;
+                       goto redo;
+               }
+
+       } else if (len == -ENOENT) {
+               if (!modprobe_performed) {
+                       perform_modprobe("ocfs2");
+                       if ((!strncmp(stack_name, OCFS2_PCMK_CLUSTER_STACK,
+                                               OCFS2_STACK_LABEL_LEN)) ||
+                               (!strncmp(stack_name, OCFS2_CMAN_CLUSTER_STACK,
+                                               OCFS2_STACK_LABEL_LEN)))
+                               perform_modprobe(USER_KERNEL_MODULE);
+                       else if (!strncmp(stack_name, classic_stack.s_name,
+                                               OCFS2_STACK_LABEL_LEN))
+                               perform_modprobe(O2CB_KERNEL_MODULE);
+
+                       write_single_line_file(CLUSTER_STACK_FILE, stack_name,
+                                       OCFS2_STACK_LABEL_LEN);
+                       write_performed = 1;
+                       goto redo;
+               } else
+                       err = O2CB_ET_INTERNAL_FAILURE;
+       } else {
+               err = O2CB_ET_INTERNAL_FAILURE;
+               goto out;
+       }
+
+       err = 0;
+out:
+       return err;
+}
diff --git a/mount.ocfs2/mount.ocfs2.c b/mount.ocfs2/mount.ocfs2.c
index f2ca5cb..c009d82 100644
--- a/mount.ocfs2/mount.ocfs2.c
+++ b/mount.ocfs2/mount.ocfs2.c
@@ -357,6 +357,12 @@ int main(int argc, char **argv)
        if (verbose)
                printf("device=%s\n", mo.dev);
 
+       ret = o2cb_setup_stack((char 
*)OCFS2_RAW_SB(fs->fs_super)->s_cluster_info.ci_stack);
+       if (ret) {
+               com_err(progname, ret, "while setting up stack\n");
+               goto bail;
+       }
+
        if (clustered) {
                ret = o2cb_init();
                if (ret) {
-- 
1.8.4

++++++ 0009-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch -> 
0004-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch ++++++
--- 
/work/SRC/openSUSE:Factory/ocfs2-tools/0009-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
      2013-10-09 09:44:54.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.ocfs2-tools.new/0004-mkfs.ocfs2-Abort-if-cluster-information-is-not-detec.patch
 2014-01-10 07:16:16.000000000 +0100
@@ -1,6 +1,6 @@
-From 14c5f3788b047024390c1a1ae40a0585417ed0d9 Mon Sep 17 00:00:00 2001
+From f7ea242d2bf76c71cfe7fd9555d44c2486610486 Mon Sep 17 00:00:00 2001
 From: Goldwyn Rodrigues <[email protected]>
-Date: Wed, 4 Sep 2013 23:56:39 -0500
+Date: Fri, 27 Dec 2013 10:01:33 -0600
 Subject: [PATCH] mkfs.ocfs2: Abort if cluster information is not detected
 
 ---
@@ -82,5 +82,5 @@
  int ocfs2_fill_cluster_information(State *s);
  int ocfs2_check_volume(State *s);
 -- 
-1.8.1.4
+1.8.4
 

++++++ 0010-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch -> 
0005-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch ++++++
--- 
/work/SRC/openSUSE:Factory/ocfs2-tools/0010-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
      2013-10-09 09:44:54.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.ocfs2-tools.new/0005-mkfs-Setup-cluster_stack-if-not-setup-based-on-what-.patch
 2014-01-10 07:16:16.000000000 +0100
@@ -1,6 +1,6 @@
-From 007b8d8d784a4108d5bde3cf1d0f1289a73957fd Mon Sep 17 00:00:00 2001
+From 8d9ac69db21d36c6e05a58a38da1091bbb70956d Mon Sep 17 00:00:00 2001
 From: Goldwyn Rodrigues <[email protected]>
-Date: Tue, 1 Oct 2013 09:39:17 -0500
+Date: Fri, 27 Dec 2013 10:05:23 -0600
 Subject: [PATCH] mkfs: Setup cluster_stack if not setup based on what is set
 
 ---
@@ -28,5 +28,5 @@
                if (ret) {
                        com_err(s->progname, ret,
 -- 
-1.8.1.4
+1.8.4
 

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to