On Thu, Nov 11, 2010 at 12:31 PM, nozawat <noza...@gmail.com> wrote: > Hi Andrew, > > I ran it. However, an error has been output. > Probably I have a feeling that glib does not move well. > I attached ha-log. > > I feel like cannot read a library well. > It is contents of core as follows.
you'll need the debuginfo package installed > ---- > $ gdb /usr/sbin/corosync core.27920 > GNU gdb Fedora (6.8-37.el5) > Copyright (C) 2008 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later > <http://gnu.org/licenses/gpl.html> > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. Type "show copying" > and "show warranty" for details. > This GDB was configured as "x86_64-redhat-linux-gnu"... > > warning: core file may not match specified executable file. > Core was generated by `/usr/lib64/heartbeat/pengine'. > Program terminated with signal 11, Segmentation fault. > [New process 27920] > #0 0x00002b247fa8b53a in ?? () > (gdb) where > #0 0x00002b247fa8b53a in ?? () > #1 0x00002b247ebc5027 in ?? () > #2 0x0000000000000000 in ?? () > ------ > > Regards, > Tomo > > 2010/11/11 Andrew Beekhof <and...@beekhof.net> >> >> On Thu, Nov 11, 2010 at 10:26 AM, nozawat <noza...@gmail.com> wrote: >> > Hi Andrew, >> > >> > Thanks for a revision. >> > I confirmed completion of compiling it. >> > I revised it a little, I attach a patch. >> >> Thanks! Did you try running it? >> >> > >> > Regards, >> > Tomo >> > >> > >> > 2010/11/11 Andrew Beekhof <and...@beekhof.net> >> >> >> >> This might be a little better: >> >> >> >> diff -r dd75da218e4f configure.ac >> >> --- a/configure.ac Fri Oct 29 12:12:45 2010 +0200 >> >> +++ b/configure.ac Tue Nov 09 13:20:55 2010 +0100 >> >> @@ -654,7 +654,7 @@ AC_MSG_RESULT(using $GLIBCONFIG) >> >> >> >> AC_CHECK_LIB(glib-2.0, g_hash_table_get_values) >> >> if test "x$ac_cv_lib_glib_2_0_g_hash_table_get_values" != x""yes; then >> >> - AC_MSG_ERROR(Your version of Glib is too old, you need at least >> >> 2.14) >> >> + AC_MSG_WARN(Your version of Glib is too old, you should have at >> >> least >> >> 2.14) >> >> fi >> >> >> >> # >> >> diff -r dd75da218e4f include/crm/common/util.h >> >> --- a/include/crm/common/util.h Fri Oct 29 12:12:45 2010 +0200 >> >> +++ b/include/crm/common/util.h Tue Nov 09 13:20:55 2010 +0100 >> >> @@ -298,4 +298,59 @@ extern int node_score_infinity; >> >> extern xmlNode *create_operation_update(xmlNode *parent, lrm_op_t >> >> *op, const char *caller_version, int target_rc, const char *origin, >> >> int level); >> >> extern void free_lrm_op(lrm_op_t *op); >> >> >> >> +#if HAVE_LIBGLIB_2_0 >> >> + >> >> +#else >> >> + >> >> +typedef struct fake_ghi >> >> +{ >> >> + int offset; >> >> + GHashTable *hash; >> >> + GList *values; >> >> + >> >> +} GHashTableIter; >> >> + >> >> +static inline void g_hash_append_value(gpointer key, gpointer value, >> >> gpointer user_data) >> >> +{ >> >> + GList **values = (GList **)user_data; >> >> + *values = g_list_append(*values, value); >> >> +} >> >> + >> >> +static inline GList *g_hash_table_get_values(GHashTable *hash_table); >> >> +{ >> >> + GList *values = NULL; >> >> + g_hash_table_foreach(hash_table, g_hash_append_value, &values); >> >> +} >> >> + >> >> +static inline void g_hash_table_iter_init(GHashTableIter *iter, >> >> GHashTable *hash_table) >> >> +{ >> >> + iter->offset = 0; >> >> + iter->hash = hash_table; >> >> + >> >> + /* iter->values = g_hash_table_get_values(hash_table); */ >> >> + >> >> + /* We could cache the values, but then we need to clean up the >> >> list >> >> + * later which doesn't fit the glib2 API >> >> + * So instead we calculate it in _next() every time its needed >> >> + */ >> >> +} >> >> + >> >> + >> >> +static inline gboolean g_hash_table_iter_next(GHashTableIter *iter, >> >> gpointer *key, gpointer *value) >> >> +{ >> >> + GList *values = iter->values; >> >> + if(iter->values == NULL) { >> >> + values = g_hash_table_get_values(iter->hash_table); >> >> + } >> >> + >> >> + iter->offset++; >> >> + *value = g_list_nth_data(values, iter->offset); >> >> + >> >> + if(iter->values == NULL) { >> >> + g_list_free(values); >> >> + } >> >> + return (*value) != NULL; >> >> +} >> >> + >> >> #endif >> >> + >> >> +#endif >> >> >> >> _______________________________________________ >> >> Pacemaker mailing list: Pacemaker@oss.clusterlabs.org >> >> http://oss.clusterlabs.org/mailman/listinfo/pacemaker >> >> >> >> Project Home: http://www.clusterlabs.org >> >> Getting started: >> >> http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> >> Bugs: >> >> >> >> http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker >> > >> > >> > _______________________________________________ >> > Pacemaker mailing list: Pacemaker@oss.clusterlabs.org >> > http://oss.clusterlabs.org/mailman/listinfo/pacemaker >> > >> > Project Home: http://www.clusterlabs.org >> > Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> > Bugs: >> > >> > http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker >> > >> > >> >> _______________________________________________ >> Pacemaker mailing list: Pacemaker@oss.clusterlabs.org >> http://oss.clusterlabs.org/mailman/listinfo/pacemaker >> >> Project Home: http://www.clusterlabs.org >> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> Bugs: >> http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker > > > _______________________________________________ > Pacemaker mailing list: Pacemaker@oss.clusterlabs.org > http://oss.clusterlabs.org/mailman/listinfo/pacemaker > > Project Home: http://www.clusterlabs.org > Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf > Bugs: > http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker > > _______________________________________________ Pacemaker mailing list: Pacemaker@oss.clusterlabs.org http://oss.clusterlabs.org/mailman/listinfo/pacemaker Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker