Masahiro Yamada
4f67ca0965
kconfig: fix memory leak when EOF is encountered in quotation
...
[ Upstream commit fbac5977d81cb2b2b7e37b11c459055d9585273c ]
An unterminated string literal followed by new line is passed to the
parser (with "multi-line strings not supported" warning shown), then
handled properly there.
On the other hand, an unterminated string literal at end of file is
never passed to the parser, then results in memory leak.
[Test Code]
----------(Kconfig begin)----------
source "Kconfig.inc"
config A
bool "a"
-----------(Kconfig end)-----------
--------(Kconfig.inc begin)--------
config B
bool "b\No new line at end of file
---------(Kconfig.inc end)---------
[Summary from Valgrind]
Before the fix:
LEAK SUMMARY:
definitely lost: 16 bytes in 1 blocks
...
After the fix:
LEAK SUMMARY:
definitely lost: 0 bytes in 0 blocks
...
Eliminate the memory leak path by handling this case. Of course, such
a Kconfig file is wrong already, so I will add an error message later.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-01-26 09:38:34 +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
scripts/gdb/linux/tasks.py: fix get_thread_info
2018-01-23 19:57:08 +01:00
genksyms
kbuild: Regenerate genksyms lexer
2016-08-25 20:03:51 +02:00
kconfig
kconfig: fix memory leak when EOF is encountered in quotation
2019-01-26 09:38:34 +01:00
ksymoops
mod
kbuild: Consolidate header generation from ASM offset information
2018-11-23 08:20:34 +01:00
package
builddeb: Fix header package regarding dtc source links
2018-05-30 07:50:39 +02:00
selinux
selinux: explicitly declare the role "base_r"
2015-07-13 13:32:00 -04:00
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
adjust_autoksyms.sh
kbuild: make scripts/adjust_autoksyms.sh robust against timestamp races
2018-05-30 07:50:37 +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
DocBook: Use a fixed encoding for output
2015-09-28 01:31:48 -06:00
check_extable.sh
scripts: add check_extable.sh script.
2015-04-13 21:03:02 +09:30
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
checkstack.pl: fix for aarch64
2019-01-13 10:03:48 +01:00
checksyscalls.sh
x86/asm/entry: Move the arch/x86/syscalls/ definitions to arch/x86/entry/syscalls/
2015-06-04 07:37:37 +02:00
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
kbuild: make missing $DEPMOD a Warning instead of an Error
2018-09-15 09:43:01 +02:00
diffconfig
vfs,ext2: remove CONFIG_EXT2_FS_XIP and rename CONFIG_FS_XIP to CONFIG_FS_DAX
2015-02-16 17:56:04 -08:00
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
KEYS: Remove unnecessary header #inclusions from extract-cert.c
2015-09-25 16:31:45 +01:00
extract-ikconfig
scripts/extract-ikconfig: Support LZ4-compressed images.
2015-04-15 14:01:12 +02:00
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
CRIS: Fix headers_install
2014-12-20 00:01:12 +01:00
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
Kbuild.include
kbuild: fix linker feature test macros when cross compiling with Clang
2018-12-13 09:20:30 +01:00
kernel-doc
scripts/kernel-doc: Don't fail with status != 0 if error encountered with -none
2018-02-25 11:05:47 +01:00
kernel-doc-xml-ref
scripts/kernel-doc: Adding cross-reference links to html documentation.
2015-08-16 22:11:16 -06:00
ld-version.sh
ld-version: Drop the 4th and 5th version components
2016-05-13 14:02:05 +02:00
Lindent
scripts/Lindent: handle missing indent gracefully
2015-09-04 16:54:41 -07:00
link-vmlinux.sh
kbuild: allow architectures to use thin archives instead of ld -r
2016-09-09 10:31:19 +02:00
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: Add support to generate LLVM assembly files
2018-11-23 08:20:35 +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: suppress packed-not-aligned warning for default setting only
2018-12-08 13:05:04 +01:00
Makefile.fwinst
kbuild: include $(src)/Makefile rather than $(obj)/Makefile
2015-04-02 16:42:08 +02:00
Makefile.gcc-plugins
gcc-plugins: Add latent_entropy plugin
2016-10-10 14:51:44 -07:00
Makefile.headersinst
Makefile.help
Makefile.host
kbuild: Add __cc-option macro
2018-11-23 08:20:35 +01:00
Makefile.kasan
kasan: don't emit builtin calls when sanitization is off
2018-08-17 20:59:29 +02:00
Makefile.lib
kbuild: fix asm-offset generation to work with clang
2018-11-23 08:20:35 +01:00
Makefile.modbuiltin
Makefile.modinst
modsign: Abort modules_install when signing fails
2015-08-07 16:26:13 +01:00
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
makelst
markup_oops.pl
mkcompile_h
mkmakefile
mksysmap
mksysmap: Add h8300 local symbol pattern
2015-06-23 13:35:47 +09:00
mkuboot.sh
mkversion
module-common.lds
objtool, modules: Discard objtool annotation sections for modules
2018-01-17 09:38:58 +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
scripts: add stackdelta script
2015-08-28 17:04:40 +02:00
stackusage
scripts: add stackusage script
2015-08-28 17:04:40 +02:00
tags.sh
tags: honor COMPILED_SOURCE with apart output directory
2018-04-13 19:48:21 +02:00
unifdef.c
unifdef: use memcpy instead of strncpy
2018-12-08 13:05:05 +01:00
ver_linux
ver_linux: rename ver_linux.awk to ver_linux
2016-08-31 13:59:31 +02:00
xen-hypercalls.sh
xen: build infrastructure for generating hypercall depending symbols
2015-03-16 14:49:13 +00:00
xz_wrap.sh