Re: cma can't activate area on arm64
From: Nicolas Saenz Julienne <hidden>
Date: 2020-02-28 20:16:32
Also in:
linux-mm
On Fri, 2020-02-28 at 11:56 -0800, Jonathan Richardson wrote:
This is stingray (arch/arm64/boot/dts/broadcom/stingray/bcm958742k.dts). cma is specified on cmdline as "cma=1G". The full boot log was in the attachment.
Would you mind attaching it again, I was added to the conversation later.
quoted
you use a fixed base? Also, do you want the CMA in ZONE_DMA or ZONE_DMA32?I'm not sure which zone we want it in. I'm assuming ZONE_DMA32. Before that change there was only one zone. If I disable ZONE_DMA I don't see the error, though I haven't tested anything. I don't really understand why ZONE_DMA is enabled by default if it's a requirement for Rpi only. I'm assuming it should work as is with both zones enabled but not clear how cma spans the two zones. Was there a reason for having both zones enabled as the default?
It's enabled by default to be able to boot all boards with a common kernel image. IIRC the allocation algo for CMA placement tries to fit it as high as possible in ZONE_DMA32, but I can't really say much more without the logs. Regards, Nicolas