lineage_android_kernel_xiao.../scripts
Masahiro Yamada b96d06e6d6 coccinelle: fix parallel build with CHECK=scripts/coccicheck
[ Upstream commit d7059ca0147adcd495f3c5b41f260e1ac55bb679 ]

The command "make -j8 C=1 CHECK=scripts/coccicheck" produces
lots of "coccicheck failed" error messages.

Julia Lawall explained the Coccinelle behavior as follows:
"The problem on the Coccinelle side is that it uses a subdirectory
with the name of the semantic patch to store standard output and
standard error for the different threads.  I didn't want to use a
name with the pid, so that one could easily find this information
while Coccinelle is running.  Normally the subdirectory is cleaned
up when Coccinelle completes, so there is only one of them at a time.
Maybe it is best to just add the pid.  There is the risk that these
subdirectories will accumulate if Coccinelle crashes in a way such
that they don't get cleaned up, but Coccinelle could print a warning
if it detects this case, rather than failing."

When scripts/coccicheck is used as CHECK tool and -j option is given
to Make, the whole of build process runs in parallel.  So, multiple
processes try to get access to the same subdirectory.

I notice spatch creates the subdirectory only when it runs in parallel
(i.e. --jobs <N> is given and <N> is greater than 1).

Setting NPROC=1 is a reasonable solution; spatch does not create the
subdirectory.  Besides, ONLINE=1 mode takes a single file input for
each spatch invocation, so there is no reason to parallelize it in
the first place.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-12-14 09:28:22 +01:00
..
basic fixdep: faster CONFIG_ search 2016-08-24 22:34:19 +02:00
coccinelle Coccinelle: flag conditions with no effect 2016-10-11 09:57:17 +02:00
dtc scripts/dtc: dt_to_config - kernel config options for a devicetree 2016-07-22 14:48:16 -05:00
gcc-plugins gcc-plugins: update gcc-common.h for gcc-7 2017-01-12 11:39:07 +01:00
gdb Revert "scripts/gdb: add a Radix Tree Parser" 2016-07-15 14:54:27 +09:00
genksyms kbuild: Regenerate genksyms lexer 2016-08-25 20:03:51 +02:00
kconfig kconfig/nconf: Fix hang when editing symbol with a long prompt 2017-01-09 08:32:25 +01:00
ksymoops
mod nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00
package kbuild: pkg: use --transform option to prefix paths in tar 2017-12-14 09:28:22 +01:00
selinux
tracing ftrace/scripts: Add helper script to bisect function tracing problem functions 2016-09-21 13:56:55 -04:00
.gitignore KEYS: Reserve an extra certificate symbol for inserting without recompiling 2016-02-26 15:30:20 +00:00
Kbuild.include kbuild: no gcc-plugins during cc-option tests 2016-08-08 17:49:05 -07:00
Lindent
Makefile GCC plugin infrastructure 2016-06-07 22:57:10 +02:00
Makefile.asm-generic kbuild: Remove stale asm-generic wrappers 2016-07-07 15:58:45 +02:00
Makefile.build kbuild: be more careful about matching preprocessed asm ___EXPORT_SYMBOL 2016-11-09 22:29:53 +01:00
Makefile.clean Shared library support 2016-06-07 22:57:10 +02:00
Makefile.dtbinst dtbsinstall: don't move target directory out of the way 2016-01-28 11:40:32 +01:00
Makefile.extrawarn Kbuild: enable -Wmaybe-uninitialized warnings by default 2016-11-11 08:45:08 -08:00
Makefile.fwinst
Makefile.gcc-plugins gcc-plugins: Add latent_entropy plugin 2016-10-10 14:51:44 -07:00
Makefile.headersinst
Makefile.help
Makefile.host Shared library support 2016-06-07 22:57:10 +02:00
Makefile.kasan
Makefile.lib Merge branch 'akpm' (patches from Andrew) 2016-08-02 21:08:07 -04:00
Makefile.modbuiltin
Makefile.modinst
Makefile.modpost kbuild: add arch specific post-link Makefile 2016-09-09 10:47:00 +02:00
Makefile.modsign
Makefile.ubsan Kbuild: enable -Wmaybe-uninitialized warning for "make W=1" 2016-11-11 08:45:08 -08:00
adjust_autoksyms.sh kbuild: fix adjust_autoksyms.sh for modules that need only one symbol 2016-05-10 17:25:29 +02:00
analyze_suspend.py PM / tools: scripts: AnalyzeSuspend v4.2 2016-07-15 23:34:14 +02:00
asn1_compiler.c ASN.1: fix open failure check on headername 2016-04-06 14:06:48 +01:00
bloat-o-meter scripts/bloat-o-meter: fix SIGPIPE 2016-11-11 08:12:37 -08:00
bootgraph.pl
check-lc_ctype.c
check_extable.sh
checkincludes.pl
checkkconfigsymbols.py checkkconfigsymbols: use arglist instead of cmd string 2016-08-28 11:08:34 +02:00
checkpatch.pl checkpatch: silence perl 5.26.0 unescaped left brace warnings 2017-07-21 07:42:21 +02:00
checkstack.pl
checksyscalls.sh
checkversion.pl
cleanfile
cleanpatch
coccicheck coccinelle: fix parallel build with CHECK=scripts/coccicheck 2017-12-14 09:28:22 +01:00
config
conmakehash.c
const_structs.checkpatch const_structs.checkpatch: add frequently used from Julia Lawall's list 2016-10-11 15:06:30 -07:00
decode_stacktrace.sh scripts/decode_stacktrace.sh: handle symbols in modules 2016-05-19 19:12:14 -07:00
decodecode
depmod.sh
diffconfig
docproc.c docproc: print a comment about autogeneration for rst output 2016-05-14 09:56:56 -06:00
export_report.pl
extract-cert.c
extract-ikconfig
extract-module-sig.pl KEYS: Provide a script to extract a module signature 2015-10-21 15:18:36 +01:00
extract-sys-certs.pl KEYS: Use the symbol value for list size, updated by scripts/insert-sys-cert 2016-02-26 15:32:05 +00:00
extract-vmlinux
extract_xc3028.pl [media] extract_xc3028.pl: move it to scripts/dir 2016-07-17 14:08:12 -03:00
faddr2line scripts/faddr2line: improve on base path filtering a bit 2016-09-19 14:49:08 -07:00
gcc-goto.sh
gcc-ld
gcc-plugin.sh gcc-plugins: abort builds cleanly when not supported 2016-08-08 17:49:05 -07:00
gcc-version.sh
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh scripts/has-stack-protector: add -fno-PIE 2016-11-09 22:28:05 +01:00
gen_initramfs_list.sh initramfs: Escape colons in depfile 2016-09-23 10:35:32 +02:00
get_dvb_firmware [media] doc-rst: move DVB avulse docs to Documentation/media 2016-07-17 14:02:45 -03:00
get_maintainer.pl get_maintainer: quiet noisy implicit -f vcs_file_exists checking 2016-08-26 17:39:34 -07:00
gfp-translate
headerdep.pl
headers.sh
headers_check.pl headers_check: don't warn about c++ guards 2016-05-24 14:12:48 +10:00
headers_install.sh
insert-sys-cert.c KEYS: Reserve an extra certificate symbol for inserting without recompiling 2016-02-26 15:30:20 +00:00
kallsyms.c ARM: 8553/1: kallsyms: remove --page-offset command line option 2016-04-07 21:57:16 +01:00
kernel-doc docs: Special-case function-pointer parameters in kernel-doc 2016-09-06 08:02:49 -06:00
kernel-doc-xml-ref
ld-version.sh ld-version: Drop the 4th and 5th version components 2016-05-13 14:02:05 +02:00
link-vmlinux.sh kbuild: allow architectures to use thin archives instead of ld -r 2016-09-09 10:31:19 +02:00
makelst
markup_oops.pl
mkcompile_h
mkmakefile
mksysmap
mkuboot.sh
mkversion
module-common.lds module: set __jump_table alignment to 8 2017-12-14 09:28:17 +01:00
namespace.pl kallsyms: add support for relative offsets in kallsyms address table 2016-03-15 16:55:16 -07:00
objdiff
patch-kernel
pnmtologo.c
profile2linkerlist.pl
prune-kernel scripts: add "prune-kernel" script to clean up old kernel images 2016-02-09 10:09:52 -08:00
recordmcount.c nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00
recordmcount.h recordmcount: Fix endianness handling bug for nop_mcount 2015-11-03 10:45:26 -05:00
recordmcount.pl nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00
setlocalversion kbuild: setlocalversion: print error to STDERR 2016-06-20 17:37:45 +02:00
show_delta
sign-file.c modsign: Make sign-file determine the format of the X.509 cert 2016-06-14 13:18:33 +01:00
sortextable.c parisc: Use generic extable search and sort routines 2016-03-23 16:00:46 +01:00
sortextable.h
spelling.txt spelling.txt: "modeled" is spelt correctly 2016-10-07 18:46:30 -07:00
stackdelta
stackusage
tags.sh scripts/tags.sh: enable code completion in VIM 2016-10-11 15:06:33 -07:00
unifdef.c
ver_linux ver_linux: rename ver_linux.awk to ver_linux 2016-08-31 13:59:31 +02:00
xen-hypercalls.sh
xz_wrap.sh