All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] Kbuild fixes for v4.16-rc5
@ 2018-03-10 13:48 Masahiro Yamada
  2018-03-10 18:44 ` Linus Torvalds
  0 siblings, 1 reply; 3+ messages in thread
From: Masahiro Yamada @ 2018-03-10 13:48 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Linux Kernel Mailing List, Linux Kbuild mailing list, masahiroy

Hi Linus,

Please pull more Kbuild fixes for v4.16.



The following changes since commit 661e50bc853209e41a5c14a290ca4decc43cbfd1:

  Linux 4.16-rc4 (2018-03-04 14:54:11 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
tags/kbuild-fixes-v4.16-2

for you to fetch changes up to 55fe6da9efba102866e2fb5b40b04b6a4b26c19e:

  kbuild: Handle builtin dtb file names containing hyphens (2018-03-09
01:14:38 +0900)

----------------------------------------------------------------
Kbuild fixes for v4.16 (2nd)

- make fixdep parse kconfig.h to fix missing rebuild

- replace hyphens with underscores in builtin DTB label names

- fix typos

----------------------------------------------------------------
James Hogan (1):
      kbuild: Handle builtin dtb file names containing hyphens

Matteo Croce (1):
      scripts/bloat-o-meter: fix typos in help

Rasmus Villemoes (3):
      fixdep: remove stale references to uml-config.h
      fixdep: remove some false CONFIG_ matches
      fixdep: do not ignore kconfig.h

 scripts/Makefile.lib   |  8 ++++----
 scripts/basic/fixdep.c | 15 +++++----------
 scripts/bloat-o-meter  |  2 +-
 3 files changed, 10 insertions(+), 15 deletions(-)


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL] Kbuild fixes for v4.16-rc5
  2018-03-10 13:48 [GIT PULL] Kbuild fixes for v4.16-rc5 Masahiro Yamada
@ 2018-03-10 18:44 ` Linus Torvalds
  2018-03-12  7:53   ` Masahiro Yamada
  0 siblings, 1 reply; 3+ messages in thread
From: Linus Torvalds @ 2018-03-10 18:44 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: Linux Kbuild mailing list

On Sat, Mar 10, 2018 at 5:48 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
>
> Please pull more Kbuild fixes for v4.16.

Pulled.

And I really don't think these are the reason, but I wonder if you've
looked at why an empty build seems to have become slower lately?

I do "allmodconfig" builds between each pull, and it used to be in the
40+ second range. Now it's in the "just over a minute" range. That's
with absolutely nothing actually being built.

That "nothing rebuilt" is actually the big expense for me for the
later -rc handling, since it completely dominates when the pull
requests shrink (even if *something* gets rebuilt, the one minute for
the empty build is 90+% of the time).

It might not be kbuild that has triggered this, it might be something
else. But some trivial profiling shows that it's definitely pretty
much all in make, although 'modpost' does show up:

  83.18%  make
  11.30%  modpost
   5.10%  sh
   0.31%  cat
   0.03%  cc1
   0.01%  grep
   ...

The above was just from

    perf record -e cycles:pp make -j16

and then doing a

    perf report --sort=comm

to see a very high-level overview.

Pretty much all of the time in 'make' is spent on parsing, it seems:

   5.24%  make      [.] hash_find_slot
   3.86%  make      [.] __strlen_avx2
   3.76%  make      [.] _int_malloc
   3.25%  make      [.] target_environment
   2.82%  make      [.] __memmove_avx_unaligned_erms
   2.49%  make      [.] __strcmp_sse2_unaligned
   2.41%  modpost   [.] parse_file
   2.21%  make      [.] malloc
   2.18%  make      [.] 0x000000000001e1f3
   2.10%  make      [.] glob
   2.06%  make      [.] __strchr_avx2
   1.92%  make      [.] parse_variable_definition
   1.76%  make      [.] _int_free
   1.52%  make      [.] parse_file_seq
   1.49%  make      [.] find_next_token
   ....

and maybe it's 'make' that has gotten upgraded and slowed down, and
it's not our build system at all.

Yes, my build times continually do go up as the kernel grows, so
that's normal. It's just that there seems to have been a fairly big
jump in the last month or so.

I haven't tried to bisect anything, I thought I'd just mention it in
case you go "yeah, I'm aware.."

                     Linus

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL] Kbuild fixes for v4.16-rc5
  2018-03-10 18:44 ` Linus Torvalds
@ 2018-03-12  7:53   ` Masahiro Yamada
  0 siblings, 0 replies; 3+ messages in thread
From: Masahiro Yamada @ 2018-03-12  7:53 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Linux Kbuild mailing list

Hi Linus,


2018-03-11 3:44 GMT+09:00 Linus Torvalds <torvalds@linux-foundation.org>:
> On Sat, Mar 10, 2018 at 5:48 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>>
>> Please pull more Kbuild fixes for v4.16.
>
> Pulled.
>
> And I really don't think these are the reason, but I wonder if you've
> looked at why an empty build seems to have become slower lately?
>
> I do "allmodconfig" builds between each pull, and it used to be in the
> 40+ second range. Now it's in the "just over a minute" range. That's
> with absolutely nothing actually being built.
>
> That "nothing rebuilt" is actually the big expense for me for the
> later -rc handling, since it completely dominates when the pull
> requests shrink (even if *something* gets rebuilt, the one minute for
> the empty build is 90+% of the time).
>
> It might not be kbuild that has triggered this, it might be something
> else. But some trivial profiling shows that it's definitely pretty
> much all in make, although 'modpost' does show up:
>
>   83.18%  make
>   11.30%  modpost
>    5.10%  sh
>    0.31%  cat
>    0.03%  cc1
>    0.01%  grep
>    ...
>
> The above was just from
>
>     perf record -e cycles:pp make -j16
>
> and then doing a
>
>     perf report --sort=comm
>
> to see a very high-level overview.
>
> Pretty much all of the time in 'make' is spent on parsing, it seems:
>
>    5.24%  make      [.] hash_find_slot
>    3.86%  make      [.] __strlen_avx2
>    3.76%  make      [.] _int_malloc
>    3.25%  make      [.] target_environment
>    2.82%  make      [.] __memmove_avx_unaligned_erms
>    2.49%  make      [.] __strcmp_sse2_unaligned
>    2.41%  modpost   [.] parse_file
>    2.21%  make      [.] malloc
>    2.18%  make      [.] 0x000000000001e1f3
>    2.10%  make      [.] glob
>    2.06%  make      [.] __strchr_avx2
>    1.92%  make      [.] parse_variable_definition
>    1.76%  make      [.] _int_free
>    1.52%  make      [.] parse_file_seq
>    1.49%  make      [.] find_next_token
>    ....
>
> and maybe it's 'make' that has gotten upgraded and slowed down, and
> it's not our build system at all.
>
> Yes, my build times continually do go up as the kernel grows, so
> that's normal. It's just that there seems to have been a fairly big
> jump in the last month or so.
>
> I haven't tried to bisect anything, I thought I'd just mention it in
> case you go "yeah, I'm aware.."


No.  I am not aware of it.
I tried empty building for several tags.
The build time was almost constant for me.

I saw about increase by 6 seconds
between v4.15 between v4.16-rc1,
but I think this is quite normal.




The full log of my experiments are below:



[1] v4.15-rc1

masahiro@pug:~/workspace/linux$ git describe
v4.15-rc1
masahiro@pug:~/workspace/linux$ time make all
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  CHK     scripts/mod/devicetable-offsets.h
  CHK     include/generated/compile.h
  CHK     kernel/config_data.h
  CHK     include/generated/uapi/linux/version.h
  DATAREL arch/x86/boot/compressed/vmlinux
Kernel: arch/x86/boot/bzImage is ready  (#38)
  Building modules, stage 2.
  MODPOST 6586 modules
WARNING: modpost: missing MODULE_LICENSE() in drivers/auxdisplay/img-ascii-lcd.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/gpio/gpio-ath79.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/gpio/gpio-iop.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/iio/accel/kxsd9-i2c.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/iio/adc/qcom-vadc-common.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/media/platform/mtk-vcodec/mtk-vcodec-common.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/media/platform/soc_camera/soc_scale_crop.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/media/platform/tegra-cec/tegra_cec.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/mtd/nand/denali_pci.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/pinctrl/pxa/pinctrl-pxa2xx.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/power/reset/zx-reboot.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/staging/comedi/drivers/ni_atmio.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in net/9p/9pnet_xen.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
sound/soc/codecs/snd-soc-pcm512x-spi.o
see include/linux/module.h for more information

real 1m42.019s
user 1m12.828s
sys 0m19.732s

[2] v4.15

masahiro@pug:~/workspace/linux$ git describe
v4.15
masahiro@pug:~/workspace/linux$ time make all
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  CHK     scripts/mod/devicetable-offsets.h
  CHK     include/generated/compile.h
  CHK     kernel/config_data.h
  CHK     include/generated/uapi/linux/version.h
  DATAREL arch/x86/boot/compressed/vmlinux
Kernel: arch/x86/boot/bzImage is ready  (#33)
  Building modules, stage 2.
  MODPOST 6585 modules
WARNING: modpost: missing MODULE_LICENSE() in drivers/auxdisplay/img-ascii-lcd.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/gpio/gpio-ath79.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/gpio/gpio-iop.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/iio/accel/kxsd9-i2c.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/iio/adc/qcom-vadc-common.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/media/platform/mtk-vcodec/mtk-vcodec-common.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/media/platform/soc_camera/soc_scale_crop.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/media/platform/tegra-cec/tegra_cec.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/mtd/nand/denali_pci.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
drivers/pinctrl/pxa/pinctrl-pxa2xx.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in drivers/power/reset/zx-reboot.o
see include/linux/module.h for more information
WARNING: modpost: missing MODULE_LICENSE() in
sound/soc/codecs/snd-soc-pcm512x-spi.o
see include/linux/module.h for more information

real 1m41.114s
user 1m12.596s
sys 0m19.416s

[3] v4.16-rc1

masahiro@pug:~/workspace/linux$ git describe
v4.16-rc1
masahiro@pug:~/workspace/linux$ time make all
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  CHK     scripts/mod/devicetable-offsets.h
  CHK     include/generated/compile.h
  CHK     kernel/config_data.h
  CHK     include/generated/uapi/linux/version.h
  DATAREL arch/x86/boot/compressed/vmlinux
Kernel: arch/x86/boot/bzImage is ready  (#37)
  Building modules, stage 2.
  MODPOST 6666 modules

real 1m47.057s
user 1m15.952s
sys 0m21.496s


[4] v4.16-rc2

masahiro@pug:~/workspace/linux$ git describe
v4.16-rc2
masahiro@pug:~/workspace/linux$ time make all
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  CHK     scripts/mod/devicetable-offsets.h
  CHK     include/generated/compile.h
  CHK     kernel/config_data.h
  CHK     include/generated/uapi/linux/version.h
  DATAREL arch/x86/boot/compressed/vmlinux
Kernel: arch/x86/boot/bzImage is ready  (#36)
  Building modules, stage 2.
  MODPOST 6666 modules

real 1m47.064s
user 1m15.916s
sys 0m21.640s


[5] v4.16-rc5

masahiro@pug:~/workspace/linux$ git describe
v4.16-rc5
masahiro@pug:~/workspace/linux$ time make all
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  DESCEND  objtool
  CHK     scripts/mod/devicetable-offsets.h
  CHK     include/generated/compile.h
  CHK     kernel/config_data.h
  CHK     include/generated/uapi/linux/version.h
  DATAREL arch/x86/boot/compressed/vmlinux
Kernel: arch/x86/boot/bzImage is ready  (#35)
  Building modules, stage 2.
  MODPOST 6664 modules

real 1m47.242s
user 1m15.576s
sys 0m22.088s




-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-03-12  7:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-10 13:48 [GIT PULL] Kbuild fixes for v4.16-rc5 Masahiro Yamada
2018-03-10 18:44 ` Linus Torvalds
2018-03-12  7:53   ` Masahiro Yamada

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.