diff options
author | Nicolas Chauvet <kwizart@gmail.com> | 2014-03-05 12:19:10 +0100 |
---|---|---|
committer | Nicolas Chauvet <kwizart@gmail.com> | 2014-08-09 22:11:35 +0200 |
commit | 7e8e408b1d929bd8b227b285a5817649f3abeebb (patch) | |
tree | f472fcd35c871b34d9b9db194a4842caf201cc91 | |
parent | 3f7b3ae795ae20036db10c6b0da66b6b4545bd33 (diff) | |
download | kernel-7e8e408b1d929bd8b227b285a5817649f3abeebb.tar.gz kernel-7e8e408b1d929bd8b227b285a5817649f3abeebb.tar.xz kernel-7e8e408b1d929bd8b227b285a5817649f3abeebb.zip |
Bump CMA to 64M by default as found in 3.15 multi_v7_defconfig
The commit d1c912c1001f was made into tegra_defconfig and later
forwared to multi_v7_deconfig as 0c86f089e66a93
Quoting original commit into the kernel tree:
- Allocate 64 MiB for CMA by default; the default 16MiB is not enough
for the majority of use-cases. This can still be overridden by the cma
command-line option.
If this patch is not applied, KMS drivers using CMA would
rapidly exhaust the allocated memory. This was seen on tegra_drm
(from tagr libdrm/opentegra with exa support on freedesktop.org)
...
kernel: host1x drm: failed to allocate buffer with size 2457600
...
On the other side, CMA allocated memory can easily be freed
http://lwn.net/Articles/486301/
"Freeing memory is much simpler process..."
Whereas they can only be allocated at boot time
https://lkml.org/lkml/2014/5/7/810
"CMA is introduced to provide physically contiguous pages at runtime.
For this purpose, it reserves memory at boot time."
This patch is about to have a convenant generic default
and to match upstream kernel default value.
Everything can be setup back into fedora tools such as arm-boot-config
At some point, tegra will move to IOMMU and will not rely on CMA
Tested on Toshiba AC100 (with 512M RAM with cma=128M zram=1x128M)
with opentegra DDX driver
-rw-r--r-- | config-arm-generic | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/config-arm-generic b/config-arm-generic index 3d923896..6e7796c6 100644 --- a/config-arm-generic +++ b/config-arm-generic @@ -163,7 +163,7 @@ CONFIG_THERMAL_GOV_USER_SPACE=y CONFIG_CMA=y CONFIG_DMA_CMA=y # CONFIG_CMA_DEBUG is not set -CONFIG_CMA_SIZE_MBYTES=16 +CONFIG_CMA_SIZE_MBYTES=64 CONFIG_CMA_SIZE_SEL_MBYTES=y # CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set # CONFIG_CMA_SIZE_SEL_MIN is not set |