Messages in this thread | | | From | Arnd Bergmann <> | Date | Fri, 11 Oct 2019 12:25:29 +0200 | Subject | Re: [PATCH 3/3] arm64: configs: unset CPU_BIG_ENDIAN |
| |
On Thu, Oct 3, 2019 at 1:15 PM John Garry <john.garry@huawei.com> wrote: > On 03/10/2019 08:40, Anders Roxell wrote: > > On Tue, 1 Oct 2019 at 16:04, John Garry <john.garry@huawei.com> wrote: > >> On 26/09/2019 20:30, Anders Roxell wrote: > >>> it doesn't get enabled when building allmodconfig kernels. When doing a > >>> 'make savedefconfig' CONFIG_CPU_BIG_ENDIAN will be dropped. > >> > >> So without having to pass KCONFIG_ALLCONFIG or do anything else, what > >> about a config for CONFIG_CPU_LITTLE_ENDIAN instead? I'm not sure if > >> that was omitted for a specific reason. > > > > Oh, I tried to elaborate on the idea in the cover letter, that using > > the defconfig > > as base and then configure the rest as modules is to get a bootable kernel > > that have as many features turned on as possible. That will make it possible > > to run as wide a range of testsuites as possible on a single kernel. > > > > Does that make it clearer ? > > Hi Anders, > > Yeah, I got the idea. > > So when you say "'make savedefconfig' CONFIG_CPU_BIG_ENDIAN will be > dropped", I don't know what the rules are in terms of resyncing the > common defconfig (I was under the impression that it's done per release > cycle by the arm soc maintainers, but can't find evidence as such), but > your change may be easily lost in this way.
We don't do it every release, but occasionally someone sends a patch with a refresh, and this might easily get missed.
We could force the allmodconfig kernel to be little-endian by default, using a choice statement to pick endianess like arch/mips and arch/sh do, the effect would be that an allmodconfig kernel gains a few more options that depend on !BIG_ENDIAN, but we would no longer catch a class of endianess bugs in drivers that we otherwise get warnings for. No idea what is better here.
Arnd
| |