diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-08-25 16:40:38 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-08-25 16:40:38 -0400 |
| commit | 1bc276775d93faf42a3bb1c684cdb838ded8be56 (patch) | |
| tree | 7f822bffe2487d71057f0d9f008eef158b636c57 /scripts | |
| parent | b8dcdab36f5394a09b66516057cccf61a81a3877 (diff) | |
| parent | d503ac531a5246e4d910f971b213807fea925956 (diff) | |
Merge tag 'kbuild-v4.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
Pull more Kbuild updates from Masahiro Yamada:
- add build_{menu,n,g,x}config targets for compile-testing Kconfig
- fix and improve recursive dependency detection in Kconfig
- fix parallel building of menuconfig/nconfig
- fix syntax error in clang-version.sh
- suppress distracting log from syncconfig
- remove obsolete "rpm" target
- remove VMLINUX_SYMBOL(_STR) macro entirely
- fix microblaze build with CONFIG_DYNAMIC_FTRACE
- move compiler test for dead code/data elimination to Kconfig
- rename well-known LDFLAGS variable to KBUILD_LDFLAGS
- misc fixes and cleanups
* tag 'kbuild-v4.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
kbuild: rename LDFLAGS to KBUILD_LDFLAGS
kbuild: pass LDFLAGS to recordmcount.pl
kbuild: test dead code/data elimination support in Kconfig
initramfs: move gen_initramfs_list.sh from scripts/ to usr/
vmlinux.lds.h: remove stale <linux/export.h> include
export.h: remove VMLINUX_SYMBOL() and VMLINUX_SYMBOL_STR()
Coccinelle: remove pci_alloc_consistent semantic to detect in zalloc-simple.cocci
kbuild: make sorting initramfs contents independent of locale
kbuild: remove "rpm" target, which is alias of "rpm-pkg"
kbuild: Fix LOADLIBES rename in Documentation/kbuild/makefiles.txt
kconfig: suppress "configuration written to .config" for syncconfig
kconfig: fix "Can't open ..." in parallel build
kbuild: Add a space after `!` to prevent parsing as file pattern
scripts: modpost: check memory allocation results
kconfig: improve the recursive dependency report
kconfig: report recursive dependency involving 'imply'
kconfig: error out when seeing recursive dependency
kconfig: add build-only configurator targets
scripts/dtc: consolidate include path options in Makefile
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/Kbuild.include | 4 | ||||
| -rw-r--r-- | scripts/Makefile.build | 6 | ||||
| -rw-r--r-- | scripts/Makefile.lib | 2 | ||||
| -rw-r--r-- | scripts/Makefile.modpost | 2 | ||||
| -rwxr-xr-x | scripts/clang-version.sh | 2 | ||||
| -rw-r--r-- | scripts/coccinelle/api/alloc/zalloc-simple.cocci | 41 | ||||
| -rw-r--r-- | scripts/dtc/Makefile | 18 | ||||
| -rwxr-xr-x | scripts/gen_initramfs_list.sh | 328 | ||||
| -rw-r--r-- | scripts/kconfig/Makefile | 16 | ||||
| -rw-r--r-- | scripts/kconfig/conf.c | 5 | ||||
| -rw-r--r-- | scripts/kconfig/symbol.c | 58 | ||||
| -rw-r--r-- | scripts/kconfig/tests/err_recursive_dep/Kconfig (renamed from scripts/kconfig/tests/warn_recursive_dep/Kconfig) | 3 | ||||
| -rw-r--r-- | scripts/kconfig/tests/err_recursive_dep/__init__.py | 10 | ||||
| -rw-r--r-- | scripts/kconfig/tests/err_recursive_dep/expected_stderr | 38 | ||||
| -rw-r--r-- | scripts/kconfig/tests/warn_recursive_dep/__init__.py | 9 | ||||
| -rw-r--r-- | scripts/kconfig/tests/warn_recursive_dep/expected_stderr | 30 | ||||
| -rwxr-xr-x | scripts/link-vmlinux.sh | 4 | ||||
| -rw-r--r-- | scripts/mod/modpost.c | 8 |
18 files changed, 127 insertions, 457 deletions
diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include index 7c98f60e2266..c75413d05a63 100644 --- a/scripts/Kbuild.include +++ b/scripts/Kbuild.include | |||
| @@ -163,8 +163,8 @@ cc-ldoption = $(call try-run,\ | |||
| 163 | $(CC) $(1) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -nostdlib -x c /dev/null -o "$$TMP",$(1),$(2)) | 163 | $(CC) $(1) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -nostdlib -x c /dev/null -o "$$TMP",$(1),$(2)) |
| 164 | 164 | ||
| 165 | # ld-option | 165 | # ld-option |
| 166 | # Usage: LDFLAGS += $(call ld-option, -X, -Y) | 166 | # Usage: KBUILD_LDFLAGS += $(call ld-option, -X, -Y) |
| 167 | ld-option = $(call try-run, $(LD) $(LDFLAGS) $(1) -v,$(1),$(2),$(3)) | 167 | ld-option = $(call try-run, $(LD) $(KBUILD_LDFLAGS) $(1) -v,$(1),$(2),$(3)) |
| 168 | 168 | ||
| 169 | # ar-option | 169 | # ar-option |
| 170 | # Usage: KBUILD_ARFLAGS := $(call ar-option,D) | 170 | # Usage: KBUILD_ARFLAGS := $(call ar-option,D) |
diff --git a/scripts/Makefile.build b/scripts/Makefile.build index 93b8e24b0e15..1c48572223d1 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build | |||
| @@ -190,7 +190,7 @@ cmd_modversions_c = \ | |||
| 190 | $(call cmd_gensymtypes_c,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \ | 190 | $(call cmd_gensymtypes_c,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \ |
| 191 | > $(@D)/.tmp_$(@F:.o=.ver); \ | 191 | > $(@D)/.tmp_$(@F:.o=.ver); \ |
| 192 | \ | 192 | \ |
| 193 | $(LD) $(LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) \ | 193 | $(LD) $(KBUILD_LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) \ |
| 194 | -T $(@D)/.tmp_$(@F:.o=.ver); \ | 194 | -T $(@D)/.tmp_$(@F:.o=.ver); \ |
| 195 | rm -f $(@D)/.tmp_$(@F) $(@D)/.tmp_$(@F:.o=.ver); \ | 195 | rm -f $(@D)/.tmp_$(@F) $(@D)/.tmp_$(@F:.o=.ver); \ |
| 196 | else \ | 196 | else \ |
| @@ -220,7 +220,7 @@ sub_cmd_record_mcount = set -e ; perl $(srctree)/scripts/recordmcount.pl "$(ARCH | |||
| 220 | "$(if $(CONFIG_CPU_BIG_ENDIAN),big,little)" \ | 220 | "$(if $(CONFIG_CPU_BIG_ENDIAN),big,little)" \ |
| 221 | "$(if $(CONFIG_64BIT),64,32)" \ | 221 | "$(if $(CONFIG_64BIT),64,32)" \ |
| 222 | "$(OBJDUMP)" "$(OBJCOPY)" "$(CC) $(KBUILD_CFLAGS)" \ | 222 | "$(OBJDUMP)" "$(OBJCOPY)" "$(CC) $(KBUILD_CFLAGS)" \ |
| 223 | "$(LD)" "$(NM)" "$(RM)" "$(MV)" \ | 223 | "$(LD) $(KBUILD_LDFLAGS)" "$(NM)" "$(RM)" "$(MV)" \ |
| 224 | "$(if $(part-of-module),1,0)" "$(@)"; | 224 | "$(if $(part-of-module),1,0)" "$(@)"; |
| 225 | recordmcount_source := $(srctree)/scripts/recordmcount.pl | 225 | recordmcount_source := $(srctree)/scripts/recordmcount.pl |
| 226 | endif # BUILD_C_RECORDMCOUNT | 226 | endif # BUILD_C_RECORDMCOUNT |
| @@ -394,7 +394,7 @@ cmd_modversions_S = \ | |||
| 394 | $(call cmd_gensymtypes_S,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \ | 394 | $(call cmd_gensymtypes_S,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \ |
| 395 | > $(@D)/.tmp_$(@F:.o=.ver); \ | 395 | > $(@D)/.tmp_$(@F:.o=.ver); \ |
| 396 | \ | 396 | \ |
| 397 | $(LD) $(LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) \ | 397 | $(LD) $(KBUILD_LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) \ |
| 398 | -T $(@D)/.tmp_$(@F:.o=.ver); \ | 398 | -T $(@D)/.tmp_$(@F:.o=.ver); \ |
| 399 | rm -f $(@D)/.tmp_$(@F) $(@D)/.tmp_$(@F:.o=.ver); \ | 399 | rm -f $(@D)/.tmp_$(@F) $(@D)/.tmp_$(@F:.o=.ver); \ |
| 400 | else \ | 400 | else \ |
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index df0fff252619..61e596650ed3 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib | |||
| @@ -162,7 +162,7 @@ a_flags = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(LINUXINCLUDE) \ | |||
| 162 | cpp_flags = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(LINUXINCLUDE) \ | 162 | cpp_flags = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(LINUXINCLUDE) \ |
| 163 | $(__cpp_flags) | 163 | $(__cpp_flags) |
| 164 | 164 | ||
| 165 | ld_flags = $(LDFLAGS) $(ldflags-y) $(LDFLAGS_$(@F)) | 165 | ld_flags = $(KBUILD_LDFLAGS) $(ldflags-y) $(LDFLAGS_$(@F)) |
| 166 | 166 | ||
| 167 | DTC_INCLUDE := $(srctree)/scripts/dtc/include-prefixes | 167 | DTC_INCLUDE := $(srctree)/scripts/dtc/include-prefixes |
| 168 | 168 | ||
diff --git a/scripts/Makefile.modpost b/scripts/Makefile.modpost index dd92dbbbaa68..7d4af0d0accb 100644 --- a/scripts/Makefile.modpost +++ b/scripts/Makefile.modpost | |||
| @@ -120,7 +120,7 @@ ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink) | |||
| 120 | # Step 6), final link of the modules with optional arch pass after final link | 120 | # Step 6), final link of the modules with optional arch pass after final link |
| 121 | quiet_cmd_ld_ko_o = LD [M] $@ | 121 | quiet_cmd_ld_ko_o = LD [M] $@ |
| 122 | cmd_ld_ko_o = \ | 122 | cmd_ld_ko_o = \ |
| 123 | $(LD) -r $(LDFLAGS) \ | 123 | $(LD) -r $(KBUILD_LDFLAGS) \ |
| 124 | $(KBUILD_LDFLAGS_MODULE) $(LDFLAGS_MODULE) \ | 124 | $(KBUILD_LDFLAGS_MODULE) $(LDFLAGS_MODULE) \ |
| 125 | -o $@ $(filter-out FORCE,$^) ; \ | 125 | -o $@ $(filter-out FORCE,$^) ; \ |
| 126 | $(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true) | 126 | $(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true) |
diff --git a/scripts/clang-version.sh b/scripts/clang-version.sh index dbf0a31eb111..e65fbc3079d4 100755 --- a/scripts/clang-version.sh +++ b/scripts/clang-version.sh | |||
| @@ -12,7 +12,7 @@ | |||
| 12 | 12 | ||
| 13 | compiler="$*" | 13 | compiler="$*" |
| 14 | 14 | ||
| 15 | if !( $compiler --version | grep -q clang) ; then | 15 | if ! ( $compiler --version | grep -q clang) ; then |
| 16 | echo 0 | 16 | echo 0 |
| 17 | exit 1 | 17 | exit 1 |
| 18 | fi | 18 | fi |
diff --git a/scripts/coccinelle/api/alloc/zalloc-simple.cocci b/scripts/coccinelle/api/alloc/zalloc-simple.cocci index 92b20913055f..d819275b7fde 100644 --- a/scripts/coccinelle/api/alloc/zalloc-simple.cocci +++ b/scripts/coccinelle/api/alloc/zalloc-simple.cocci | |||
| @@ -35,8 +35,7 @@ statement S; | |||
| 35 | 35 | ||
| 36 | * x = (T)\(kmalloc(E1, ...)\|vmalloc(E1)\|dma_alloc_coherent(...,E1,...)\| | 36 | * x = (T)\(kmalloc(E1, ...)\|vmalloc(E1)\|dma_alloc_coherent(...,E1,...)\| |
| 37 | kmalloc_node(E1, ...)\|kmem_cache_alloc(...)\|kmem_alloc(E1, ...)\| | 37 | kmalloc_node(E1, ...)\|kmem_cache_alloc(...)\|kmem_alloc(E1, ...)\| |
| 38 | devm_kmalloc(...,E1,...)\|kvmalloc(E1, ...)\|pci_alloc_consistent(...,E1,...)\| | 38 | devm_kmalloc(...,E1,...)\|kvmalloc(E1, ...)\|kvmalloc_node(E1,...)\); |
| 39 | kvmalloc_node(E1,...)\); | ||
| 40 | if ((x==NULL) || ...) S | 39 | if ((x==NULL) || ...) S |
| 41 | * memset((T2)x,0,E1); | 40 | * memset((T2)x,0,E1); |
| 42 | 41 | ||
| @@ -124,15 +123,6 @@ statement S; | |||
| 124 | - x = (T)kvmalloc(E1,E2); | 123 | - x = (T)kvmalloc(E1,E2); |
| 125 | + x = (T)kvzalloc(E1,E2); | 124 | + x = (T)kvzalloc(E1,E2); |
| 126 | | | 125 | | |
| 127 | - x = pci_alloc_consistent(E2,E1,E3); | ||
| 128 | + x = pci_zalloc_consistent(E2,E1,E3); | ||
| 129 | | | ||
| 130 | - x = (T *)pci_alloc_consistent(E2,E1,E3); | ||
| 131 | + x = pci_zalloc_consistent(E2,E1,E3); | ||
| 132 | | | ||
| 133 | - x = (T)pci_alloc_consistent(E2,E1,E3); | ||
| 134 | + x = (T)pci_zalloc_consistent(E2,E1,E3); | ||
| 135 | | | ||
| 136 | - x = kvmalloc_node(E1,E2,E3); | 126 | - x = kvmalloc_node(E1,E2,E3); |
| 137 | + x = kvzalloc_node(E1,E2,E3); | 127 | + x = kvzalloc_node(E1,E2,E3); |
| 138 | | | 128 | | |
| @@ -389,35 +379,6 @@ msg="WARNING: kvzalloc should be used for %s, instead of kvmalloc/memset" % (x) | |||
| 389 | coccilib.report.print_report(p[0], msg) | 379 | coccilib.report.print_report(p[0], msg) |
| 390 | 380 | ||
| 391 | //----------------------------------------------------------------- | 381 | //----------------------------------------------------------------- |
| 392 | @r8 depends on org || report@ | ||
| 393 | type T, T2; | ||
| 394 | expression x; | ||
| 395 | expression E1,E2,E3; | ||
| 396 | statement S; | ||
| 397 | position p; | ||
| 398 | @@ | ||
| 399 | |||
| 400 | x = (T)pci_alloc_consistent@p(E2,E1,E3); | ||
| 401 | if ((x==NULL) || ...) S | ||
| 402 | memset((T2)x,0,E1); | ||
| 403 | |||
| 404 | @script:python depends on org@ | ||
| 405 | p << r8.p; | ||
| 406 | x << r8.x; | ||
| 407 | @@ | ||
| 408 | |||
| 409 | msg="%s" % (x) | ||
| 410 | msg_safe=msg.replace("[","@(").replace("]",")") | ||
| 411 | coccilib.org.print_todo(p[0], msg_safe) | ||
| 412 | |||
| 413 | @script:python depends on report@ | ||
| 414 | p << r8.p; | ||
| 415 | x << r8.x; | ||
| 416 | @@ | ||
| 417 | |||
| 418 | msg="WARNING: pci_zalloc_consistent should be used for %s, instead of pci_alloc_consistent/memset" % (x) | ||
| 419 | coccilib.report.print_report(p[0], msg) | ||
| 420 | //----------------------------------------------------------------- | ||
| 421 | @r9 depends on org || report@ | 382 | @r9 depends on org || report@ |
| 422 | type T, T2; | 383 | type T, T2; |
| 423 | expression x; | ||
