Bug 859259

Summary: parallel perf build fails
Product: Red Hat Enterprise Linux 6 Reporter: Eric Sandeen <esandeen>
Component: kernelAssignee: Eric Sandeen <esandeen>
Status: CLOSED ERRATA QA Contact: Guangze Bai <gbai>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.4CC: czhang, yshao, zab
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: kernel-2.6.32-315.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-21 06:38:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Eric Sandeen 2012-09-20 23:38:59 UTC
Description of problem:

make -j 16 of perf fails.  See https://brewweb.devel.redhat.com/getfile?taskID=4894302&name=build.log :

+ make -j16 -C tools/perf -s V=1 HAVE_CPLUS_DEMANGLE=1 NO_DWARF=1 prefix=/usr all
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Makefile:504: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
PERF_VERSION = 2.6.32-310.el6.fsfreeze3.i686.debug
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Makefile:504: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
    * new build flags or prefix
util/pmu.l:7:23: error: pmu-bison.h: No such file or directory
util/pmu.l: In function 'value':
util/pmu.l:16: error: 'PP_ERROR' undeclared (first use in this function)
util/pmu.l:16: error: (Each undeclared identifier is reported only once
util/pmu.l:16: error: for each function it appears in.)
util/pmu.l:18: error: 'perf_pmu_lval' undeclared (first use in this function)
util/pmu.l:19: error: 'PP_VALUE' undeclared (first use in this function)
util/pmu.l: In function 'perf_pmu_lex':
util/pmu.l:29: error: 'PP_CONFIG' undeclared (first use in this function)
util/pmu.l:30: error: 'PP_CONFIG1' undeclared (first use in this function)
util/pmu.l:31: error: 'PP_CONFIG2' undeclared (first use in this function)
make: *** [util/pmu-flex.o] Error 1
make: *** Waiting for unfinished jobs....

Version-Release number of selected component (if applicable):

kernel-2.6.32-302.el6.src.rpm

How reproducible:

Every time on a big cpu box.

Steps to Reproduce:

Add a sleep to perf/tools/Makefile:

 $(OUTPUT)util/pmu-bison.c: util/pmu.y
-       $(QUIET_BISON)$(BISON) -v util/pmu.y -d -o $(OUTPUT)util/pmu-bison.c
+       sleep 10; $(QUIET_BISON)$(BISON) -v util/pmu.y -d -o $(OUTPUT)util/pmu-bison.c

and:

make -j16 -C tools/perf -s V=1 HAVE_CPLUS_DEMANGLE=1 NO_DWARF=1 prefix=/usr all

in the kernel tree.  Solved by adding the dependency:

-$(OUTPUT)util/pmu-flex.c: util/pmu.l
+$(OUTPUT)util/pmu-flex.c: util/pmu.l util/pmu-bison.c
        $(QUIET_FLEX)$(FLEX) --header-file=$(OUTPUT)util/pmu-flex.h -t util/pmu.l > $(OUTPUT)util/pmu-flex.c

Comment 1 Zach Brown 2012-09-20 23:46:51 UTC
I also had a build fail in the same way on the same host.

http://download.devel.redhat.com/brewroot/work/tasks/4784/4894784/build.log

To me, the fix is obviously correct because pmu.l has a static include of pmu-bison.h.

$ grep bison tools/perf/util/pmu.l 
#include "pmu-bison.h"

Make it so!

Comment 2 RHEL Program Management 2012-09-20 23:50:30 UTC
This request was evaluated by Red Hat Product Management for
inclusion in a Red Hat Enterprise Linux release.  Product
Management has requested further review of this request by
Red Hat Engineering, for potential inclusion in a Red Hat
Enterprise Linux release for currently deployed products.
This request is not yet committed for inclusion in a release.

Comment 4 Jarod Wilson 2012-10-01 17:12:53 UTC
Patch(es) available on kernel-2.6.32-315.el6

Comment 9 errata-xmlrpc 2013-02-21 06:38:57 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0496.html