From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751934AbbEKOfn (ORCPT ); Mon, 11 May 2015 10:35:43 -0400 Received: from mail.kernel.org ([198.145.29.136]:44084 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750981AbbEKOfl (ORCPT ); Mon, 11 May 2015 10:35:41 -0400 Date: Mon, 11 May 2015 11:35:36 -0300 From: Arnaldo Carvalho de Melo To: Namhyung Kim Cc: Ingo Molnar , Peter Zijlstra , Jiri Olsa , LKML , David Ahern , Joonsoo Kim , Minchan Kim , Pekka Enberg , linux-mm@kvack.org Subject: Re: [PATCH 4/6] perf kmem: Print gfp flags in human readable string Message-ID: <20150511143536.GP28183@kernel.org> References: <1429592107-1807-1-git-send-email-namhyung@kernel.org> <1429592107-1807-5-git-send-email-namhyung@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1429592107-1807-5-git-send-email-namhyung@kernel.org> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Tue, Apr 21, 2015 at 01:55:05PM +0900, Namhyung Kim escreveu: > Save libtraceevent output and print it in the header. > +static int parse_gfp_flags(struct perf_evsel *evsel, struct perf_sample *sample, > + unsigned int gfp_flags) > +{ > + struct pevent_record record = { > + .cpu = sample->cpu, > + .data = sample->raw_data, > + .size = sample->raw_size, > + }; > + struct trace_seq seq; > + char *str, *pos; > + > + if (nr_gfps) { > + struct gfp_flag key = { > + .flags = gfp_flags, > + }; > + > + if (bsearch(&key, gfps, nr_gfps, sizeof(*gfps), gfpcmp)) > + return 0; > + } > + > + trace_seq_init(&seq); > + pevent_event_info(&seq, evsel->tp_format, &record); > + > + str = strtok_r(seq.buffer, " ", &pos); This introduced a problem I only now noticed, possibly because my compiler was upgraded: [acme@zoo linux]$ git bisect good 0e11115644b39ff9e986eb308b6c44ca75cd475f is the first bad commit commit 0e11115644b39ff9e986eb308b6c44ca75cd475f Author: Namhyung Kim Date: Tue Apr 21 13:55:05 2015 +0900 perf kmem: Print gfp flags in human readable string Save libtraceevent output and print it in the header. ------------------------------------------------- GEN /tmp/build/perf/common-cmds.h PERF_VERSION = 4.1.rc2.ga20d87 CC /tmp/build/perf/builtin-kmem.o builtin-kmem.c: In function ‘perf_evsel__process_page_alloc_event’: builtin-kmem.c:743:427: error: ‘pos’ may be used uninitialized in this function [-Werror=maybe-uninitialized] new->human_readable = strdup(str + 10); ^ builtin-kmem.c:716:14: note: ‘pos’ was declared here char *str, *pos; ^ cc1: all warnings being treated as errors /home/git/linux/tools/build/Makefile.build:68: recipe for target '/tmp/build/perf/builtin-kmem.o' failed make[2]: *** [/tmp/build/perf/builtin-kmem.o] Error 1 Makefile.perf:330: recipe for target '/tmp/build/perf/builtin-kmem.o' failed make[1]: *** [/tmp/build/perf/builtin-kmem.o] Error 2 Makefile:87: recipe for target 'builtin-kmem.o' failed make: *** [builtin-kmem.o] Error 2 make: Leaving directory '/home/git/linux/tools/perf' ------ Trying to fix it by initializing it to NULL. - Arnaldo