lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20161019180548.GF25522@kernel.org>
Date:   Wed, 19 Oct 2016 15:05:48 -0300
From:   Arnaldo Carvalho de Melo <acme@...nel.org>
To:     Steven Rostedt <rostedt@...dmis.org>
Cc:     Namhyung Kim <namhyung@...nel.org>,
        Honggyu Kim <hong.gyu.kim@....com>,
        linux-kernel@...r.kernel.org,
        Arnaldo Carvalho de Melo <acme@...hat.com>
Subject: Re: [PATCH 1/3] tools lib traceevent: Add -O2 option to traceevent

Em Wed, Oct 19, 2016 at 02:48:45PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Tue, Oct 18, 2016 at 11:29:53AM -0400, Steven Rostedt escreveu:
> > On Tue, 18 Oct 2016 11:01:09 +0900
> > Namhyung Kim <namhyung@...nel.org> wrote:
> > 
> > > Hi Honggyu,
> > > 
> > > You need to CC relevant maintainers when you send patches to LKML.
> > > For the libtraceevent, they are Arnaldo and Steven.  You can use
> > > scripts/get_maintainer.pl for this job later.  In addition running
> > > scripts/checkpatch.pl before sending patches is a good habit.
> > > 
> > > Arnaldo and Steve,
> > > 
> > > This is from uftrace building libtraceevent with the optimization flag
> > > and we want to fix the upstream as well.
> > > 
> > 
> > Acked-by: Steven Rostedt <rostedt@...dmis.org>
> 
> So right after applying this patch I get these new warnings, investigating...

Some are the compiler not grokking logic where the compiler gets
confused with logic that tests one variable to use another and thinks it
is using garbage (uninitialized stuff), I tried to follow the logic and
I think it got slightly more confused than me, as I _think_ its not a
problem, but the one on the case entry for

  OLD_RINGBUF_TYPE_TIME_EXTEND

in old_update_pointers() looks like a bug, unless some macro magic is
taking place that updates that 'lenght' variable.

Rostedt, that -O2 unleashed some warnings, please check, I'll defer
applying those patches till it doesn't show these warnings, i.e. till
other patches fixing these issues or simply silencing the compiler with
a harmless init gets submitted,

Thanks,

- Arnaldo
 
> [acme@...et linux]$ gcc -v
> Using built-in specs.
> COLLECT_GCC=gcc
> COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/6.2.1/lto-wrapper
> Target: x86_64-redhat-linux
> Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --disable-libgcj --with-isl --enable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
> Thread model: posix
> gcc version 6.2.1 20160916 (Red Hat 6.2.1-2) (GCC) 
> [acme@...et linux]$ 
> 
>   LD       /tmp/build/perf/plugin_mac80211-in.o
> kbuffer-parse.c: In function ‘__old_next_event’:
> kbuffer-parse.c:339:27: warning: ‘length’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>   kbuf->next = kbuf->index + length;
>                ~~~~~~~~~~~~^~~~~~~~
> kbuffer-parse.c:297:15: note: ‘length’ was declared here
>   unsigned int length;
>                ^~~~~~
>   CC       /tmp/build/perf/plugin_sched_switch.o
>   CC       /tmp/build/perf/run-command.o
> event-parse.c: In function ‘pevent_find_event_by_name’:
> event-parse.c:3513:21: warning: ‘event’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>   pevent->last_event = event;
>   ~~~~~~~~~~~~~~~~~~~^~~~~~~
>   CC       /tmp/build/perf/sigchain.o
>   LD       /tmp/build/perf/plugin_sched_switch-in.o
>   CC       /tmp/build/perf/plugin_function.o
> event-parse.c: In function ‘pevent_data_lat_fmt’:
> event-parse.c:5156:4: warning: ‘migrate_disable’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>     trace_seq_printf(s, "%d", migrate_disable);
>     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> event-parse.c:5163:4: warning: ‘lock_depth’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>     trace_seq_printf(s, "%d", lock_depth);
>     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> plugin_function.c: In function ‘function_handler’:
> plugin_function.c:133:6: warning: ‘index’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>   int index;
>       ^~~~~
>   CC       /tmp/build/perf/subcmd-config.o
>   GEN      perf-archive
>   LD       /tmp/build/perf/plugin_function-in.o
>   GEN      perf-with-kcore
>   CC       /tmp/build/perf/plugin_xen.o
> event-parse.c: In function ‘pevent_event_info’:
> event-parse.c:5003:7: warning: ‘len_arg’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>        trace_seq_printf(s, format, len_arg, (char)val);
>        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> event-parse.c:4846:6: note: ‘len_arg’ was declared here
>   int len_arg;
>       ^~~~~~~
>   MKDIR    /tmp/build/perf/util/
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ