From: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Randy Dunlap <rdunlap@infradead.org>,
Linux-Sparse <linux-sparse@vger.kernel.org>
Subject: Re: sparse problem with Linux kernel v5.5
Date: Thu, 6 Feb 2020 12:46:19 +0100 [thread overview]
Message-ID: <20200206114619.bfszxgs6jmdgroo6@ltop.local> (raw)
In-Reply-To: <CAHk-=wgQM29j0BJ-b0fTfwA9nc_fiS09Mi2oO8hX34oRxR6+xA@mail.gmail.com>
On Thu, Feb 06, 2020 at 07:18:45AM +0000, Linus Torvalds wrote:
> On Thu, Feb 6, 2020 at 4:49 AM Randy Dunlap <rdunlap@infradead.org> wrote:
> >
> > Also, what is errno 137? (0x89)
>
> I think that's just "killed by signal 9" (the high bit is "killed by
> signal", the low bits are the signal number).
>
> SIGKILL - oom? What does 'dmesg' say? Maybe there's some exponential
> memory use triggered by something in that bpf_sk_storage file..
>
Hi Randy,
What config are you using?
Here, on next-20200205 (commit 14b549456391a8b8f812529896b2690c16349734)
the file bpf_sk_storage.c is not compiled with the default config
(I suppose because of CONFIG_BPF_SYSCALL).
With allyesconfig, I see nothing particular ('-fmem-report' added):
$ time sparse -fmem-report -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise -Wno-return-void -Wno-unknown-attribute -D__x86_64__ --arch=x86 -mlittle-endian -m64 -Wp,-MD,net/core/.bpf_sk_storage.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/8/include -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Wno-format-security -std=gnu89 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -fno-jump-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -O2 --param=allow-store-data-races=0 -fno-reorder-blocks -fno-ipa-cp-clone -fno-partial-inlining -Wframe-larger-than=2048 -fstack-protector-strong -Wno-unused-but-set-variable -Wimplicit-fallthrough -Wno-unused-const-variable -fno-var-tracking-assignments -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -fno-inline-functions-called-once -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -fmacro-prefix-map=./= -fcf-protection=none -Wno-packed-not-aligned -fsanitize=kernel-address -fasan-shadow-offset=0xdffffc0000000000 --param asan-globals=1 --param asan-instrumentation-with-call-threshold=0 --param asan-stack=1 --param asan-instrument-allocas=1 -fsanitize-coverage=trace-pc -fsanitize-coverage=trace-cmp -DKBUILD_MODFILE='"net/core/bpf_sk_storage"' -DKBUILD_BASENAME='"bpf_sk_storage"' -DKBUILD_MODNAME='"bpf_sk_storage"' net/core/bpf_sk_storage.c; echo $?
allocator: allocs, bytes, total, %usage, average
tokens: 0, 0, 0, 0.00%, 0.00
identifiers: 56223, 2262233, 2490368, 90.84%, 40.24
symbols: 799200, 172627200, 173441024, 99.53%, 216.00
expressions: 39852179, 2550539456, 2555543552, 99.80%, 64.00
statements: 663762, 53100960, 53182464, 99.85%, 80.00
scopes: 18206, 291296, 294912, 98.77%, 16.00
basic_block: 1736, 180544, 196608, 91.83%, 104.00
instruction: 7289, 583120, 589824, 98.86%, 80.00
pseudo: 5181, 207240, 229376, 90.35%, 40.00
pseudo_user: 6967, 111472, 131072, 85.05%, 16.00
ptr list: 961807, 123111296, 123600896, 99.60%, 128.00
multijmp: 275, 6600, 32768, 20.14%, 24.00
asm rules: 241, 5784, 32768, 17.65%, 24.00
asm constraints: 218, 6976, 32768, 21.29%, 32.00
contexts: 42, 672, 32768, 2.05%, 16.00
strings: 11288, 329766, 360448, 91.49%, 29.21
bytes: 31957, 125216, 131072, 95.53%, 3.92
total: 42416571, 2903489831, 2910322688, 99.77%, 68.45
real 0m5.391s
user 0m3.594s
sys 0m1.797s
0
In short, using 3G of RAM in 5secs without errors.
-- Luc
next prev parent reply other threads:[~2020-02-06 11:46 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-06 4:49 sparse problem with Linux kernel v5.5 Randy Dunlap
2020-02-06 4:58 ` Randy Dunlap
2020-02-06 7:18 ` Linus Torvalds
2020-02-06 11:46 ` Luc Van Oostenryck [this message]
2020-02-06 18:25 ` Randy Dunlap
2020-02-06 20:06 ` Luc Van Oostenryck
2020-02-06 23:47 ` Linus Torvalds
2020-02-07 0:34 ` Martin KaFai Lau
2020-02-07 10:35 ` Luc Van Oostenryck
2020-02-07 6:34 ` Uwe Kleine-König
2020-02-07 8:29 ` Martin KaFai Lau
2020-02-07 11:34 ` Uwe Kleine-König
2020-02-07 12:43 ` Luc Van Oostenryck
2020-02-07 10:31 ` Luc Van Oostenryck
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=20200206114619.bfszxgs6jmdgroo6@ltop.local \
--to=luc.vanoostenryck@gmail.com \
--cc=linux-sparse@vger.kernel.org \
--cc=rdunlap@infradead.org \
--cc=torvalds@linux-foundation.org \
/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