From: Ingo Molnar <mingo@kernel.org>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-arch <linux-arch@vger.kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Nathan Chancellor <nathan@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Peter Zijlstra <peterz@infradead.org>,
Ard Biesheuvel <ardb@kernel.org>,
Josh Poimboeuf <jpoimboe@redhat.com>,
Jonathan Corbet <corbet@lwn.net>
Subject: Re: [ANNOUNCE] "Fast Kernel Headers" Tree -v2
Date: Thu, 13 Jan 2022 09:27:33 +0100 [thread overview]
Message-ID: <Yd/idffvv8QIQcEU@gmail.com> (raw)
In-Reply-To: <CAK8P3a3SpYe101RSFD5rzbTQNyQyfG1eb1sCY+rBO-DKVqBdBw@mail.gmail.com>
* Arnd Bergmann <arnd@arndb.de> wrote:
> On Mon, Jan 10, 2022 at 11:03 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > On Sat, Jan 8, 2022 at 5:26 PM Ingo Molnar <mingo@kernel.org> wrote:
> > I've started building randconfig kernels for arm64 and x86, and fixing
> > up things that come up, a few things I have noticed out so far:
>
> I have run into a couple more specific issues:
>
> * net/smc/smc_ib.c:824:26: error: implicit declaration of function
> 'cache_line_size' [-Werror=implicit-function-declaration]
> cache_line_size is generally provided by linux/cache.h, which includes
> asm/cache.h.
> This works on arm64, but not on x86, where asm/cache.h would have to include
> asm/cpufeature.h, and but it would be good to avoid that because of the implicit
> linux/percpu.h and linux/bitops.h inclusions. Also, if I add the
> include, I get this
> build failure instead: include/linux/smp_types.h:88:33: error:
> requested alignment '20'
> is not a positive power of 2
Note that this particular one should be fixed in the WIP branch, which is
at:
git://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git sched/headers
> * arm64 has a couple of issues around asm/memory.h, linux/mm_types.h and
> asm/page.h that can cause loops. I think my latest version has it figured
> out, but there is probably room for optimization.
Yeah, this is like the 5th attempt at finding a robust solution. :-/
> * There is no general way to get the get_order() definition, other than
> including asm/page.h from .c files. On arm64, this shows up in a couple
> of files after the cleanup. Only xtensa and ia64 define their own version
> of get_order(), and I think we should just remove those and move the
> generic version to linux/getorder.h, where any file using it can pick it
> up. For randconfig builds, I had to add asm/page.h to
> net/xdp/xsk_queue.c, mm/memtest.c and
> drivers/target/iscsi/iscsi_target_nego.c, after I removed the indirect
> include from arch/arm64/include/asm/mmu.h in the previous step.
Would including <linux/mm_page_address.h> be sufficient? That already has
an <asm/page.h> inclusion and is vaguely related.
I tried to avoid as many low level headers as possible from the main types
headers - and the get_order() functionality also brings in bitops
definitions, which I'm still hoping to be able to reduce from its current
~95% utilization in a distro kernel ...
We could add <linux/page_api.h> as well, as a standardized header. We
already have page_types.h and et_order() is a page types API.
Thanks,
Ingo
next prev parent reply other threads:[~2022-01-13 8:27 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-08 16:26 [ANNOUNCE] "Fast Kernel Headers" Tree -v2 Ingo Molnar
2022-01-10 22:03 ` Arnd Bergmann
2022-01-11 16:23 ` Arnd Bergmann
2022-01-11 17:08 ` David Laight
2022-01-13 8:27 ` Ingo Molnar [this message]
2022-01-13 9:20 ` Arnd Bergmann
2022-01-19 12:31 ` Ingo Molnar
2022-01-19 17:20 ` Arnd Bergmann
2022-01-22 9:18 ` Ingo Molnar
2022-01-13 8:57 ` Ingo Molnar
2022-01-13 10:16 ` Arnd Bergmann
2022-03-15 10:35 ` [TREE] "Fast Kernel Headers" Tree -v3 Ingo Molnar
2022-03-22 7:59 ` Kari Argillander
2022-03-22 15:37 ` Randy Dunlap
2022-03-22 16:22 ` Kari Argillander
2022-03-22 19:03 ` Kari Argillander
2023-11-04 9:07 ` Lucas Tanure
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=Yd/idffvv8QIQcEU@gmail.com \
--to=mingo@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=ardb@kernel.org \
--cc=arnd@arndb.de \
--cc=corbet@lwn.net \
--cc=gregkh@linuxfoundation.org \
--cc=jpoimboe@redhat.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nathan@kernel.org \
--cc=peterz@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.