From: Hyeonggon Yoo <42.hyeyoo@gmail.com>
To: vbabka@suse.cz, akpm@linux-foundation.org,
iamjoonsoo.kim@lge.com, rientjes@google.com, penberg@kernel.org,
cl@linux.com
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
nathan@kernel.org, naresh.kamboju@linaro.org,
clang-built-linux@googlegroups.com, linux-next@vger.kernel.org,
ndesaulniers@google.com, lkft-triage@lists.linaro.org,
sfr@canb.auug.org.au, arnd@arndb.de, akpm@linux-foundation.org
Subject: Re: [PATCH v3] mm, slub: change run-time assertion in kmalloc_index() to compile-time
Date: Sun, 16 May 2021 06:09:50 +0900 [thread overview]
Message-ID: <20210515210950.GA52841@hyeyoo> (raw)
In-Reply-To: <20210511173448.GA54466@hyeyoo>
Hello Vlastimil, recently kbuild-all test bot reported compile error on
clang 10.0.1, with defconfig.
Nathan Chancellor wrote:
> I think this happens because arch_prepare_optimized_kprobe() calls kzalloc()
> with a size of MAX_OPTINSN_SIZE, which is
>
> #define MAX_OPTINSN_SIZE \
> (((unsigned long)optprobe_template_end - \
> (unsigned long)optprobe_template_entry) + \
> MAX_OPTIMIZED_LENGTH + JMP32_INSN_SIZE)
> and the optprobe_template_{end,entry} are not evaluated as constants.
>
> I am not sure what the solution is. There seem to be a growing list of issues
> with LLVM 10 that were fixed in LLVM 11, which might necessitate requiring
> LLVM 11 and newer to build the kernel, given this affects a defconfig.
> Cheers,
> Nathan
I think it's because kmalloc compiles successfully when size is constant,
and kmalloc_index isn't. so I think compiler seems to be confused.
currently if size is non-constant, kmalloc calls dummy function __kmalloc,
which always returns NULL.
so what about changing kmalloc to do compile-time assertion too, and track
all callers that are calling kmalloc with non-constant argument.
How do you think? If you think it is the solution, I'll do that work.
next prev parent reply other threads:[~2021-05-15 21:10 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-11 17:34 [PATCH v3] mm, slub: change run-time assertion in kmalloc_index() to compile-time Hyeonggon Yoo
2021-05-11 17:38 ` Hyeonggon Yoo
2021-05-11 18:08 ` Vlastimil Babka
2021-05-13 2:52 ` Andrew Morton
2021-05-13 3:12 ` Hyeonggon Yoo
2021-05-13 3:40 ` Andrew Morton
2021-05-13 6:28 ` Hyeonggon Yoo
2021-05-13 8:46 ` Marco Elver
2021-05-13 8:51 ` Vlastimil Babka
2021-05-13 10:31 ` Marco Elver
2021-05-13 11:37 ` Vlastimil Babka
2021-05-13 12:08 ` Hyeonggon Yoo
2021-05-13 12:10 ` Hyeonggon Yoo
2021-05-13 12:03 ` Hyeonggon Yoo
2021-05-13 12:29 ` Marco Elver
2021-05-13 12:38 ` Hyeonggon Yoo
2021-05-13 13:08 ` Hyeonggon Yoo
2021-05-13 12:44 ` [PATCH] kfence: test: fix for "mm, slub: change run-time assertion in kmalloc_index() to compile-time" Marco Elver
2021-05-15 21:09 ` Hyeonggon Yoo [this message]
2021-05-15 21:24 ` [PATCH v3] mm, slub: change run-time assertion in kmalloc_index() to compile-time Vlastimil Babka
2021-05-15 21:56 ` Hyeonggon Yoo
2021-05-16 6:34 ` Nathan Chancellor
2021-05-18 0:38 ` Hyeonggon Yoo
2021-05-18 0:43 ` Nathan Chancellor
2021-05-18 1:53 ` Hyeonggon Yoo
2021-05-18 9:28 ` Vlastimil Babka
2021-05-18 11:18 ` Hyeonggon Yoo
2021-05-18 11:34 ` Vlastimil Babka
2021-05-19 5:45 ` Hyeonggon Yoo
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=20210515210950.GA52841@hyeyoo \
--to=42.hyeyoo@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=cl@linux.com \
--cc=clang-built-linux@googlegroups.com \
--cc=iamjoonsoo.kim@lge.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-next@vger.kernel.org \
--cc=lkft-triage@lists.linaro.org \
--cc=naresh.kamboju@linaro.org \
--cc=nathan@kernel.org \
--cc=ndesaulniers@google.com \
--cc=penberg@kernel.org \
--cc=rientjes@google.com \
--cc=sfr@canb.auug.org.au \
--cc=vbabka@suse.cz \
/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;
as well as URLs for NNTP newsgroup(s).