linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Guenter Roeck <linux@roeck-us.net>
Cc: Ingo Molnar <mingo@kernel.org>,
	Clark Williams <williams@redhat.com>,
	linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	Adrian Hunter <adrian.hunter@intel.com>,
	David Ahern <dsahern@gmail.com>, Jiri Olsa <jolsa@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	Wang Nan <wangnan0@huawei.com>
Subject: Re: [PATCH 19/28] perf beauty: Wire up the mmap flags table generator to the Makefile
Date: Mon, 5 Nov 2018 16:13:56 -0300	[thread overview]
Message-ID: <20181105191356.GF7077@kernel.org> (raw)
In-Reply-To: <20181105184612.GD7077@kernel.org>

Em Mon, Nov 05, 2018 at 03:46:12PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Mon, Nov 05, 2018 at 02:11:40PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Mon, Nov 05, 2018 at 07:44:33AM -0800, Guenter Roeck escreveu:
> > > On Wed, Oct 31, 2018 at 01:44:59PM -0300, Arnaldo Carvalho de Melo wrote:
> > > > From: Arnaldo Carvalho de Melo <acme@redhat.com>
> 
> > > > Now when we run 'make -C tools/perf O=/tmp/build/perf' we end up with:
> 
> > > >   $ cat /tmp/build/perf/trace/beauty/generated/mmap_flags_array.c
> > > >   static const char *mmap_flags[] = {
> > > > 	[ilog2(0x40) + 1] = "32BIT",
> <SNIP>
> > > > +include ../scripts/Makefile.arch
> 
> > > >  # The default target of this Makefile is...
> > > >  all:
> > > > @@ -385,6 +386,8 @@ export INSTALL SHELL_PATH
> > > >  SHELL = $(SHELL_PATH)
> 
> > > >  linux_uapi_dir := $(srctree)/tools/include/uapi/linux
> > > > +asm_generic_uapi_dir := $(srctree)/tools/include/uapi/asm-generic
> > > > +arch_asm_uapi_dir := $(srctree)/tools/arch/$(ARCH)/include/uapi/asm/
> 
> > > This doesn't work for me. With v4.20-rc1:
> 
> > > $ make ARCH=x86_64 defconfig
> > > *** Default configuration is based on 'x86_64_defconfig'
>  
> > I'll fix this, its the ARCH that needs to be normalized to x86 before
> > building the path...
> 
> Can you try with the following patch?

I did the tests and it seems to work, its the same method used by the
kernel sources, so I have this in place now:

commit e2c39f36c354a06c6e9d32d4fdf8660b41803d82
Author: Arnaldo Carvalho de Melo <acme@redhat.com>
Date:   Mon Nov 5 15:46:51 2018 -0300

    perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers
    
    Guenter reported that using ARCH=x86_64 to build perf has regressed:
    
      $ make -C tools/perf O=/tmp/build/perf ARCH=x86_64
      make: Entering directory '/home/acme/git/perf/tools/perf'
        BUILD:   Doing 'make -j4' parallel build
        HOSTCC   /tmp/build/perf/fixdep.o
        HOSTLD   /tmp/build/perf/fixdep-in.o
        LINK     /tmp/build/perf/fixdep
    
      Auto-detecting system features:
      ...                         dwarf: [ on  ]
      <SNIP>
      ...                           bpf: [ on  ]
    
        GEN      /tmp/build/perf/common-cmds.h
      make[2]: *** No rule to make target '/home/acme/git/perf/tools/arch/x86_64/include/uapi/asm//mman.h', needed by '/tmp/build/perf/trace/beauty/generated/mmap_flags_array.c'.  Stop.
      make[2]: *** Waiting for unfinished jobs....
        PERF_VERSION = 4.19.gf6c23e3
      make[1]: *** [Makefile.perf:207: sub-make] Error 2
      make: *** [Makefile:70: all] Error 2
      make: Leaving directory '/home/acme/git/perf/tools/perf'
      $
    
    This is because we must use $(SRCARCH) where we were using $(ARCH), so
    that, just like the top level Makefile, we get this done:
    
      # Additional ARCH settings for x86
      ifeq ($(ARCH),i386)
              SRCARCH := x86
      endif
      ifeq ($(ARCH),x86_64)
              SRCARCH := x86
      endif
    
    Which is done in tools/scripts/Makefile.arch, so switch to use
    $(SRCARCH).
    
    Reported-by: Guenter Roeck <linux@roeck-us.net>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Clark Williams <williams@redhat.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Wang Nan <wangnan0@huawei.com>
    Fixes: fbd7458db757 ("perf beauty: Wire up the mmap flags table generator to the Makefile")
    Link: https://lkml.kernel.org/r/20181105184612.GD7077@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 3ccb4f0bf088..d95655489f7e 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -387,7 +387,7 @@ SHELL = $(SHELL_PATH)
 
 linux_uapi_dir := $(srctree)/tools/include/uapi/linux
 asm_generic_uapi_dir := $(srctree)/tools/include/uapi/asm-generic
-arch_asm_uapi_dir := $(srctree)/tools/arch/$(ARCH)/include/uapi/asm/
+arch_asm_uapi_dir := $(srctree)/tools/arch/$(SRCARCH)/include/uapi/asm/
 
 beauty_outdir := $(OUTPUT)trace/beauty/generated
 beauty_ioctl_outdir := $(beauty_outdir)/ioctl

  reply	other threads:[~2018-11-05 19:14 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-31 16:44 [GIT PULL 00/24] perf/urgent improvements and fixes Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 01/28] tools include uapi: Grab a copy of linux/fs.h Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 02/28] perf beauty: Add a generator for MS_ mount/umount's flag constants Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 03/28] perf beauty: Switch from GPL v2.0 to LGPL v2.1 Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 04/28] perf beauty: Introduce strarray__scnprintf_flags() Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 05/28] perf trace beauty: Allow syscalls to mask an argument before considering it Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 06/28] perf trace beauty: Beautify mount/umount's 'flags' argument Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 07/28] perf trace: Consider syscall aliases too Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 08/28] perf trace: Beautify the umount's 'name' argument Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 09/28] perf trace: Beautify mount's first pathname arg Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 10/28] perf top: Allow disabling the overwrite mode Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 11/28] perf top: Do not use overwrite mode by default Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 12/28] perf unwind: Take pgoff into account when reporting elf to libdwfl Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 13/28] perf cs-etm: Correct CPU mode for samples Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 14/28] perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 15/28] tools include uapi: Update linux/fs.h copy Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 16/28] tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 17/28] tools include uapi: Update asound.h copy Arnaldo Carvalho de Melo
2018-10-31 17:00   ` Takashi Iwai
2018-10-31 17:27     ` Joe Perches
2018-10-31 18:32       ` Takashi Iwai
2018-10-31 19:29       ` Arnaldo Carvalho de Melo
2018-11-01 11:54         ` Takashi Sakamoto
2018-11-01 13:04           ` Arnaldo Carvalho de Melo
2018-11-01 13:57             ` Takashi Sakamoto
2018-10-31 19:28     ` Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 18/28] perf beauty: Add a generator for MAP_ mmap's flag constants Arnaldo Carvalho de Melo
2018-10-31 16:44 ` [PATCH 19/28] perf beauty: Wire up the mmap flags table generator to the Makefile Arnaldo Carvalho de Melo
2018-11-05 15:44   ` Guenter Roeck
2018-11-05 17:11     ` Arnaldo Carvalho de Melo
2018-11-05 18:46       ` Arnaldo Carvalho de Melo
2018-11-05 19:13         ` Arnaldo Carvalho de Melo [this message]
2018-11-05 21:18           ` Guenter Roeck
2018-11-06 19:18         ` [tip:perf/urgent] perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers tip-bot for Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 20/28] perf trace beauty: Use the mmap flags table generated from headers Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 21/28] tools include uapi: Update linux/mmap.h copy Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 22/28] tools headers: Sync the various kvm.h header copies Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 23/28] tools headers uapi: Update linux/netlink.h header copy Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 24/28] tools headers uapi: Update linux/if_link.h " Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 25/28] perf top: Start display thread earlier Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 26/28] perf tools: Don't clone maps from parent when synthesizing forks Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 27/28] perf intel-pt: Insert callchain context into synthesized callchains Arnaldo Carvalho de Melo
2018-10-31 16:45 ` [PATCH 28/28] perf intel-pt/bts: Calculate cpumode for synthesized samples Arnaldo Carvalho de Melo
2018-10-31 21:56 ` [GIT PULL 00/24] perf/urgent improvements and fixes Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181105191356.GF7077@kernel.org \
    --to=acme@kernel.org \
    --cc=acme@redhat.com \
    --cc=adrian.hunter@intel.com \
    --cc=dsahern@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=wangnan0@huawei.com \
    --cc=williams@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).