[SSSD] [PATCH] MONITOR: Disable inlining of function load_configuration

Michal Židek mzidek at redhat.com
Thu Dec 11 15:33:46 UTC 2014


On 12/08/2014 10:53 PM, Lukas Slebodnik wrote:
> On (08/12/14 22:07), Jakub Hrozek wrote:
>> On Mon, Dec 08, 2014 at 10:35:15AM +0100, Lukas Slebodnik wrote:
>>> ehlo,
>>>
>>> Michal tried to fix gcc warning im commit
>>> cff89439b21f8573c6896b09cb1a8d5f9de3144c
>>>
>>> The previous fix was not sufficient and similar warning appears after different
>>> change in function load_configuration.
>>>
>>> src/monitor/monitor.c: In function ‘main’:
>>> src/monitor/monitor.c:2962:24: error: ‘monitor’ may be used uninitialized
>>>                                 in this function [-Werror=maybe-uninitialized]
>>>       monitor->is_daemon = !opt_interactive;
>>>                          ^
>>> cc1: all warnings being treated as errors
>>>
>>> It's better to disable optimisation of function load_configuration after fail
>>> in chown(unlink) instead of checking errno for 0 and overriding it with EINVAL.
>>>
>>> LS
>>
>> I'm fine with the change and it gets rid of the ugly workaround. What OS
>> and what CFLAGS shall I use to test the fix?
> It is possible to reproduce warning with "-g -O2".
> I can see it on fedora 21, rawhide.
>
> fedora 20 and rhel7 has similar warning (I didn't tested with my patch)
> src/monitor/monitor.c: In function 'main':
> src/monitor/monitor.c:2263:9: warning: 'monitor' may be used uninitialized in this function [-Wmaybe-uninitialized]
>       tes = tevent_add_signal(ctx->ev, ctx, SIGHUP, 0,
>           ^
> src/monitor/monitor.c:2772:20: note: 'monitor' was declared here
>       struct mt_ctx *monitor;
>                      ^
>
> LS

In Centos 7 I had to use -O1 to see the warning.

The patch looks good to me. The warning disappears with this patch.

Ack from me.

Michal




More information about the sssd-devel mailing list