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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210902124529.GH303522@leoy-ThinkPad-X240s>
Date:   Thu, 2 Sep 2021 20:45:29 +0800
From:   Leo Yan <leo.yan@...aro.org>
To:     Arnaldo Carvalho de Melo <acme@...nel.org>
Cc:     James Clark <james.clark@....com>, mathieu.poirier@...aro.org,
        coresight@...ts.linaro.org, linux-perf-users@...r.kernel.org,
        mike.leach@...aro.org, suzuki.poulose@....com,
        Peter Zijlstra <peterz@...radead.org>,
        Ingo Molnar <mingo@...hat.com>,
        Mark Rutland <mark.rutland@....com>,
        Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
        Jiri Olsa <jolsa@...hat.com>,
        Namhyung Kim <namhyung@...nel.org>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] perf build: Report failure for testing feature
 libopencsd

On Thu, Sep 02, 2021 at 09:22:21AM -0300, Arnaldo Carvalho de Melo wrote:
> Em Thu, Sep 02, 2021 at 04:18:00PM +0800, Leo Yan escreveu:
> > When build perf tool with passing option 'CORESIGHT=1' explicitly, if
> > the feature test fails for library libopencsd, the build doesn't
> > complain the feature failure and continue to build the tool with
> > disabling the CoreSight feature insteadly.
> > 
> > This patch changes the building behaviour, when build perf tool with the
> > option 'CORESIGHT=1' and detect the failure for testing feature
> > libopencsd, the build process will be aborted and it shows the complaint
> > info.
> 
> Thanks, added some committer notes to show that it now works:
> 
> commit 8fb36b1f54873870262810d3db10526559e1d6c2
> Author: Leo Yan <leo.yan@...aro.org>
> Date:   Thu Sep 2 16:18:00 2021 +0800
> 
>     perf build: Report failure for testing feature libopencsd
>     
>     When build perf tool with passing option 'CORESIGHT=1' explicitly, if
>     the feature test fails for library libopencsd, the build doesn't
>     complain the feature failure and continue to build the tool with
>     disabling the CoreSight feature insteadly.
>     
>     This patch changes the building behaviour, when build perf tool with the
>     option 'CORESIGHT=1' and detect the failure for testing feature
>     libopencsd, the build process will be aborted and it shows the complaint
>     info.
>     
>     Committer testing:
>     
>     First make sure there is no opencsd library installed:
>     
>       $ rpm -qa | grep -i csd
>       $ sudo rm -rf `find /usr/local -name "*csd*"`
>       $ find /usr/local -name "*csd*"
>       $
>     
>     Then cleanup the perf build output directory:
>     
>       $ rm -rf /tmp/build/perf ; mkdir -p /tmp/build/perf ;
>       $
>     
>     And try to build explicitely asking for coresight:
>     
>       $ make O=/tmp/build/perf CORESIGHT=1 O=/tmp/build/perf -C tools/perf install-bin

The build command contains duplicate 'O=/tmp/build/perf'.

>       make: Entering directory '/var/home/acme/git/perf/tools/perf'
>         BUILD:   Doing 'make -j24' parallel build
>         HOSTCC  /tmp/build/perf/fixdep.o
>         HOSTLD  /tmp/build/perf/fixdep-in.o
>         LINK    /tmp/build/perf/fixdep
>       Makefile.config:493: *** Error: No libopencsd library found or the version is not up-to-date. Please install recent libopencsd to build with CORESIGHT=1.  Stop.
>       make[1]: *** [Makefile.perf:238: sub-make] Error 2
>       make: *** [Makefile:113: install-bin] Error 2
>       make: Leaving directory '/var/home/acme/git/perf/tools/perf'
>       $
>     
>     Now install the opencsd library present in Fedora 34:
>     
>       $ sudo dnf install opencsd-devel
>       <SNIP>
>       Installed:
>         opencsd-1.0.0-1.fc34.x86_64 opencsd-devel-1.0.0-1.fc34.x86_64
>       Complete!
>       $
>     
>     Try again building with coresight:
>     
>       $ make O=/tmp/build/perf CORESIGHT=1 O=/tmp/build/perf -C tools/perf install-bin
>       make: Entering directory '/var/home/acme/git/perf/tools/perf'
>         BUILD:   Doing 'make -j24' parallel build
>       Makefile.config:493: *** Error: No libopencsd library found or the version is not up-to-date. Please install recent libopencsd to build with CORESIGHT=1.  Stop.
>       make[1]: *** [Makefile.perf:238: sub-make] Error 2
>       make: *** [Makefile:113: install-bin] Error 2
>       make: Leaving directory '/var/home/acme/git/perf/tools/perf'
>       $
>     
>     Since Fedora 34 is pretty recent, one assumes we need to get it from its
>     upstream git repository, use rpm to find where that is:
>     
>       $ rpm -q --qf "%{URL}\n" opencsd
>       https://github.com/Linaro/OpenCSD
>       $
>     
>     Go there, clone the repo, build it and install into /usr/local, then try
>     again:
>     
>       $ cd ~acme/git/perf
>       $ make O=/tmp/build/perf VF=1 CORESIGHT=1 O=/tmp/build/perf -C tools/perf install-bin | grep -i opencsd
>       ...                    libopencsd: [ on  ]
>         PERF_VERSION = 5.14.g454719f67a3d
>       $ export LD_LIBRARY_PATH=/usr/local/lib
>       $ ldd ~/bin/perf | grep opencsd
>             libopencsd_c_api.so.1 => /usr/local/lib/libopencsd_c_api.so.1 (0x00007f28f78a4000)
>             libopencsd.so.1 => /usr/local/lib/libopencsd.so.1 (0x00007f28f6a2e000)
>       $
>     
>     Now it works.

Good to know the very detailed steps.  Thanks a lot for writing up
this!

Leo

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ