Re: [ClusterLabs] [Announce] libqb 10.rc3 release

2016-03-01 Thread Christine Caulfield
On 26/02/16 07:58, Jan Pokorný wrote:
> On 26/02/16 14:27 +0900, Keisuke MORI wrote:
>> As of libqb-1.0rc3, Pacemaker fails to build upon it with the gcc
>> warnings as below.
>> There was no such a problem until 1.0rc2, and it seems that the
>> changes in the pull request #175 is related.
>>
>> https://github.com/ClusterLabs/libqb/pull/175
>>
>> {{{
>> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# rpm -qa | grep libqb
>> libqb-1.0rc3-1.el7.x86_64
>> libqb-devel-1.0rc3-1.el7.x86_64
>>
>> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# git checkout
>> Pacemaker-1.1.14
>> HEAD is now at 70404b0... Merge pull request #892 from kgaillot/1.1
>> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# make release
>> (snip)
>> In file included from ../../include/crm_internal.h:33:0,
>>  from ipc.c:19:
>> ipc.c: In function 'crm_ipcs_flush_events':
>> ../../include/crm/common/logging.h:140:23: error: format '%d' expects
>> argument of type 'int', but argument 10 has type 'ssize_t'
>> [-Werror=format=]
>>  static struct qb_log_callsite *trace_cs = NULL; \
>>^
>> ../../include/crm/common/logging.h:254:37: note: in expansion of macro
>> 'do_crm_log_unlikely'
>>  #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
>> fmt , ##args)
>>  ^
>> [...]
> 
> Looks like that PR of mine turned out to be generally a good thing as it
> effectively discovers wrong printf-format usage compared to the actual
> arguments, exactly according to what you report :-)
> 
> Will take care of the problematic code in Pacemaker.
> 
> 

Good work :-)

Chrissie


___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org


Re: [ClusterLabs] [Announce] libqb 10.rc3 release

2016-02-26 Thread Jan Pokorný
On 26/02/16 08:58 +0100, Jan Pokorný wrote:
> On 26/02/16 14:27 +0900, Keisuke MORI wrote:
>> As of libqb-1.0rc3, Pacemaker fails to build upon it with the gcc
>> warnings as below.
>> There was no such a problem until 1.0rc2, and it seems that the
>> changes in the pull request #175 is related.
>> 
>> https://github.com/ClusterLabs/libqb/pull/175
>> 
>> {{{
>> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# rpm -qa | grep libqb
>> libqb-1.0rc3-1.el7.x86_64
>> libqb-devel-1.0rc3-1.el7.x86_64
>> 
>> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# git checkout
>> Pacemaker-1.1.14
>> HEAD is now at 70404b0... Merge pull request #892 from kgaillot/1.1
>> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# make release
>> (snip)
>> In file included from ../../include/crm_internal.h:33:0,
>>  from ipc.c:19:
>> ipc.c: In function 'crm_ipcs_flush_events':
>> ../../include/crm/common/logging.h:140:23: error: format '%d' expects
>> argument of type 'int', but argument 10 has type 'ssize_t'
>> [-Werror=format=]
>>  static struct qb_log_callsite *trace_cs = NULL; \
>>^
>> ../../include/crm/common/logging.h:254:37: note: in expansion of macro
>> 'do_crm_log_unlikely'
>>  #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
>> fmt , ##args)
>>  ^
>> [...]
> 
> Looks like that PR of mine turned out to be generally a good thing as it
> effectively discovers wrong printf-format usage compared to the actual
> arguments, exactly according to what you report :-)
> 
> Will take care of the problematic code in Pacemaker.

https://github.com/ClusterLabs/pacemaker/pull/939

-- 
Jan (Poki)


pgpaNFhZ0yryR.pgp
Description: PGP signature
___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org


Re: [ClusterLabs] [Announce] libqb 10.rc3 release

2016-02-26 Thread Jan Pokorný
On 25/02/16 13:24 +, Christine Caulfield wrote:
> I am pleased to announce the third 1.0 release candidate release of
> libqb. Huge thanks to all those who have contributed to this release.

Once again, there are EPEL/Fedora builds for convenient testing:  
https://copr.fedorainfracloud.org/coprs/jpokorny/libqb/build/163316/

Note that upsteam spec file was used (make libqb.spec), only with
a slight adjustment of the Version & Release tags + pointing Source0 to
https://github.com/ClusterLabs/libqb/releases/download/v1.0rc3/libqb-1.0rc3.tar.xz


This time around, all users of libqb are strongly advised to try
building with this version of libqb to discover potential misuse of
printf-like format string vs. actual arguments serving for
substitution within it.  This is due to the newly introduced annotation
to give the compiler a hint about the printf-like semantics of the
arguments to particular functions:
https://github.com/ClusterLabs/libqb/pull/175

Warm thanks to Keisuke-san for pointing the possible issues arising
from this coding defensive measure, as he was first to report failure to
build Pacemaker as a direct consequence (I am fixing that right now):
http://oss.clusterlabs.org/pipermail/users/2016-February/002375.html

-- 
Jan (Poki)


pgpQS2GXKuRde.pgp
Description: PGP signature
___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org


Re: [ClusterLabs] [Announce] libqb 10.rc3 release

2016-02-26 Thread Jan Pokorný
On 26/02/16 14:27 +0900, Keisuke MORI wrote:
> As of libqb-1.0rc3, Pacemaker fails to build upon it with the gcc
> warnings as below.
> There was no such a problem until 1.0rc2, and it seems that the
> changes in the pull request #175 is related.
> 
> https://github.com/ClusterLabs/libqb/pull/175
> 
> {{{
> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# rpm -qa | grep libqb
> libqb-1.0rc3-1.el7.x86_64
> libqb-devel-1.0rc3-1.el7.x86_64
> 
> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# git checkout
> Pacemaker-1.1.14
> HEAD is now at 70404b0... Merge pull request #892 from kgaillot/1.1
> [root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# make release
> (snip)
> In file included from ../../include/crm_internal.h:33:0,
>  from ipc.c:19:
> ipc.c: In function 'crm_ipcs_flush_events':
> ../../include/crm/common/logging.h:140:23: error: format '%d' expects
> argument of type 'int', but argument 10 has type 'ssize_t'
> [-Werror=format=]
>  static struct qb_log_callsite *trace_cs = NULL; \
>^
> ../../include/crm/common/logging.h:254:37: note: in expansion of macro
> 'do_crm_log_unlikely'
>  #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
> fmt , ##args)
>  ^
> [...]

Looks like that PR of mine turned out to be generally a good thing as it
effectively discovers wrong printf-format usage compared to the actual
arguments, exactly according to what you report :-)

Will take care of the problematic code in Pacemaker.

-- 
Jan (Poki)


pgp2pRrOiPRpq.pgp
Description: PGP signature
___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org


Re: [ClusterLabs] [Announce] libqb 10.rc3 release

2016-02-25 Thread Keisuke MORI
Hi,

As of libqb-1.0rc3, Pacemaker fails to build upon it with the gcc
warnings as below.
There was no such a problem until 1.0rc2, and it seems that the
changes in the pull request #175 is related.

https://github.com/ClusterLabs/libqb/pull/175

{{{
[root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# rpm -qa | grep libqb
libqb-1.0rc3-1.el7.x86_64
libqb-devel-1.0rc3-1.el7.x86_64

[root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# git checkout
Pacemaker-1.1.14
HEAD is now at 70404b0... Merge pull request #892 from kgaillot/1.1
[root@build-centos71 pacemaker ((Pacemaker-1.1.14))]# make release
(snip)
In file included from ../../include/crm_internal.h:33:0,
 from ipc.c:19:
ipc.c: In function 'crm_ipcs_flush_events':
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 10 has type 'ssize_t'
[-Werror=format=]
 static struct qb_log_callsite *trace_cs = NULL; \
   ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
 ^
ipc.c:497:13: note: in expansion of macro 'crm_trace'
 crm_trace("Event %d to %p[%d] (%d compressed bytes) sent",
 ^
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 10 has type 'ssize_t'
[-Werror=format=]
 static struct qb_log_callsite *trace_cs = NULL; \
   ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
 ^
ipc.c:500:13: note: in expansion of macro 'crm_trace'
 crm_trace("Event %d to %p[%d] (%d bytes) sent: %.120s",
 ^
../../include/crm/common/logging.h:140:23: error: format '%s' expects
argument of type 'char *', but argument 11 has type 'void *'
[-Werror=format=]
 static struct qb_log_callsite *trace_cs = NULL; \
   ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
 ^
ipc.c:500:13: note: in expansion of macro 'crm_trace'
 crm_trace("Event %d to %p[%d] (%d bytes) sent: %.120s",
 ^
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 12 has type 'ssize_t'
[-Werror=format=]
 static struct qb_log_callsite *trace_cs = NULL; \
   ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
 ^
ipc.c:512:9: note: in expansion of macro 'crm_trace'
 crm_trace("Sent %d events (%d remaining) for %p[%d]: %s (%d)",
 ^
ipc.c: In function 'crm_ipcs_sendv':
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 8 has type 'ssize_t'
[-Werror=format=]
 static struct qb_log_callsite *trace_cs = NULL; \
   ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
 ^
ipc.c:661:13: note: in expansion of macro 'crm_trace'
 crm_trace("Response %d sent, %d bytes to %p[%d]",
header->qb.id, rc, c->ipcs, c->pid);
 ^
ipc.c: In function 'crm_ipc_close':
../../include/crm/common/logging.h:140:23: error: format '%p' expects
a matching 'void *' argument [-Werror=format=]
 static struct qb_log_callsite *trace_cs = NULL; \
   ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
 ^
ipc.c:831:9: note: in expansion of macro 'crm_trace'
 crm_trace("Disconnecting %s IPC connection %p (%p.%p)",
client->name, client, client->ipc);
 ^
cc1: all warnings being treated as errors
gmake[4]: *** [ipc.lo] Error 1
gmake[4]: *** Waiting for unfinished jobs
(snip)
}}}


2016-02-25 22:24 GMT+09:00 Christine Caulfield :
> I am pleased to announce the third 1.0 release candidate release of
> libqb. Huge thanks to all those who have contributed to this release.
>
> There are a couple of tiny things to tidy up before 1.0 so I'm going to
> try and close the release off by the end of next week (5th march) unless
> anything serious comes in.
>
> Changes from 1.0rc3 are mainly detail ones apart fr

[ClusterLabs] [Announce] libqb 10.rc3 release

2016-02-25 Thread Christine Caulfield
I am pleased to announce the third 1.0 release candidate release of
libqb. Huge thanks to all those who have contributed to this release.

There are a couple of tiny things to tidy up before 1.0 so I'm going to
try and close the release off by the end of next week (5th march) unless
anything serious comes in.

Changes from 1.0rc3 are mainly detail ones apart from one extra logging
feature.

Feature: allow changing the identifier for syslog (+tests)
ipc: Set send and receive buffer sizes
ipc: Set buffer size used by ipcs service
ipc: Return -errno when getsockopt/setsockopt fails
example: fix simplelog usage message
log: defined value as an index-pointer after static slots
log: convert log target defined values into enum values
log: better (fixed) documentation for funcs returning "slot" index
log: refactor static target slots state initialization
log: convert few more instances to use enum qb_log_target_slot
log: qblog.h unify descriptions before the code examples
CI: Multiple fixes
doc: Fix typos and reword several parts to be clearer
build: misc spec file cleanups
build: Add gcc pragmas for printf formats
build: grab "dependent_headers" from respective Makefile.am
build: header-based man pages: dependent_headers - blacklist
build: header-based man pages: include also qbdefs.h+qbrb.h
build: GCC < 4.6 does not support diagnostic push/pop pragmas
build: fix man3 pages not installed


The current release tarball is here:
https://github.com/ClusterLabs/libqb/releases/download/v1.0rc3/libqb-1.0rc3.tar.gz

The github repository is here:
https://github.com/ClusterLabs/libqb

Please report bugs and issues in bugzilla:
https://bugzilla.redhat.com

___
Users mailing list: Users@clusterlabs.org
http://clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org