[PATCH] arm64: cache: Lower ARCH_DMA_MINALIGN to 64 (L1_CACHE_BYTES)

Arnd Bergmann arnd at arndb.de
Wed Jun 2 07:11:31 PDT 2021


On Wed, Jun 2, 2021 at 3:51 PM Mark Rutland <mark.rutland at arm.com> wrote:
>
> On Wed, Jun 02, 2021 at 03:25:41PM +0200, Marek Szyprowski wrote:
> > On 27.05.2021 14:43, Will Deacon wrote:
> > This patch landed in todays linux-next as commit 65688d2a05de ("arm64:
> > cache: Lower ARCH_DMA_MINALIGN to 64 (L1_CACHE_BYTES)"). It causes an
> > issue on Raspberry Pi 3b board. System boots to userspace fine, but then
> > it hangs somewhere during the init scripts after loading the modules. I
> > didn't manage to track where it hangs yet though.
>
> Ouch!
>
> I have a 3b in a drawer that I might be able to reproduce the issue
> with; can you tell me how you're booting that kernel? e.g. which FW and
> DT you're using?
>
> Is your filesystem on the SD card, or some USB storage? I'm guessing
> we'll need to stress DMA over one of those.

It could be something other than DMA in this case, possibly an out-of-bounds
access into a dynamically allocated structure that happens to work when there
is extra data at the end of it. Running that kernel with KASAN should help
rule this out.

Running the same kernel on a Pi 4, or on a virtual machine could also help
figure out if there is something hardware specific.

       Arnd



More information about the linux-arm-kernel mailing list