[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <c54d0ede-4f41-4fcf-8fe7-d3f9e1bb63a4@app.fastmail.com>
Date: Fri, 26 Jan 2024 21:14:15 +0100
From: "Arnd Bergmann" <arnd@...db.de>
To: "Mathieu Desnoyers" <mathieu.desnoyers@...icios.com>,
"Dan Williams" <dan.j.williams@...el.com>,
"Vishal Verma" <vishal.l.verma@...el.com>,
"Dave Jiang" <dave.jiang@...el.com>, "Matthew Wilcox" <willy@...radead.org>,
"Andrew Morton" <akpm@...ux-foundation.org>,
"Linus Torvalds" <torvalds@...ux-foundation.org>,
linux-mm <linux-mm@...ck.org>, Linux-Arch <linux-arch@...r.kernel.org>,
nvdimm@...ts.linux.dev, linux-cxl@...r.kernel.org,
linux-kernel <linux-kernel@...r.kernel.org>,
"Russell King" <linux@...linux.org.uk>
Subject: Re: [REGRESSION] v5.13: FS_DAX unavailable on 32-bit ARM
On Fri, Jan 26, 2024, at 20:33, Mathieu Desnoyers wrote:
>
> A) I have prepared a patch series introducing cache_is_aliasing() with
> new Kconfig
> options:
>
> * ARCH_HAS_CACHE_ALIASING
> * ARCH_HAS_CACHE_ALIASING_DYNAMIC
>
> and implemented it for all architectures. The "DYNAMIC" implementation
> implements cache_is_aliasing() as a runtime check, which is what is needed
> on architectures like 32-bit ARM.
>
> With this we can basically narrow down the list of architectures which are
> unsupported by DAX to those which are really affected, without actually solving
> the issue for architectures with virtually aliased dcaches.
The dynamic option should only be required when building for
ARMv6, which is really rare. On an ARMv7-only configuration,
we know that the dcache is non-aliasing, so the compile-time
check should be sufficient.
Even on ARMv6, this could be done as a compile-time choice
by platform, since we mostly know what the chips can do:
bcm2835, imx3, wm8750 and s3c64xx are non-aliasing because
they are limited to 16KB L1 caches, while omap2 and as2500
are aliasing with 32KB caches. With realview/integrator it
depends on the exact CPU that was installed.
Arnd
Powered by blists - more mailing lists