[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <a5fa8b23-4ec8-475f-be5e-538b53d6f82d@app.fastmail.com>
Date: Mon, 27 Feb 2023 17:15:58 +0100
From: "Arnd Bergmann" <arnd@...db.de>
To: "Dmitry Rokosov" <ddrokosov@...rdevices.ru>
Cc: "Neil Armstrong" <neil.armstrong@...aro.org>,
"Alexey Romanov" <avromanov@...rdevices.ru>,
"Rob Herring" <robh+dt@...nel.org>,
krzysztof.kozlowski+dt@...aro.org,
"Kevin Hilman" <khilman@...libre.com>, jbrunet@...libre.com,
martin.blumenstingl@...glemail.com,
"Linus Walleij" <linus.walleij@...aro.org>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-amlogic@...ts.infradead.org, linux-kernel@...r.kernel.org,
kernel@...rdevices.ru
Subject: Re: [PATCH v1 0/3] Meson A1 32-bit support
On Mon, Feb 27, 2023, at 16:51, Dmitry Rokosov wrote:
> On Mon, Feb 27, 2023 at 03:58:50PM +0100, Arnd Bergmann wrote:
>>
>> I would argue that is a problem with buildroot, and using a 32-bit
>> kernel is not something we should encourage over fixing buildroot
>> to do it right, or building the kernel separately from the rootfs.
>>
>> We do allow building support for a couple of ARMv8 SoCs in 32-bit
>> mode, but that is usually because they ship with a 32-bit bootrom
>> and cannot actually run a 64-bit kernel.
>
> To be honest, I didn't know about this principle. It looks like a very
> rational approach "start from max supported bitness".
> Based on overall maintainers opinion, we have to prepare a patch for
> buildroot to support compat mode :)
That would be great, thanks a lot!
For what it's worth, the main arguments in favor of running a 64-bit
kernel with compat user space over a 32-bit kernel are support for:
- larger RAM sizes without highmem (most 32-bit kernels only
support 768MB of lowmem, and highmem sucks)
- larger virtual address space (4GB vs 3GB or less)
- CPU specific errata workarounds (arch/arm/ only has those for 32-bit cpus)
- mitigations for common attacks such as spectre
- security hardening that depends on larger address space
(KASLR, BTI, ptrauth, PAN, ...)
- emulating instructions that were removed in Armv8 (setend, swp, ...)
Most of these don't apply in userspace, so the incentive to
run smaller 32-bit userland on systems with less than 1GB of
RAM usually outweighs the benefits of 64-bit userspace.
Arnd
Powered by blists - more mailing lists