From 2b35e4dcaca0b3c894cd4675f737258c9dabb675 Mon Sep 17 00:00:00 2001 From: "Isaac J. Manjarres" Date: Thu, 19 Mar 2020 14:35:27 -0700 Subject: [PATCH 1/4] mm/Kconfig: Relax CMA optimization dependencies The CMA performance optimizations depend on QGKI, which prevents them from being enabled on configurations that don't have a notion of GKI and QGKI. Thus, remove this dependency. This shouldn't cause any problems with the ABI surface with respect to GKI targets as the configs still have to be enabled explicitly anyway. Change-Id: I1bea32ccf23e485f491dfb27422f83d0919aedd6 Signed-off-by: Isaac J. Manjarres --- mm/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/Kconfig b/mm/Kconfig index 2c5a3693e769..2394ae5af38f 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -532,7 +532,7 @@ config CMA_AREAS config CMA_DIRECT_UTILIZATION bool "Allow clients to directly use CMA for page allocations" - depends on CMA && QGKI + depends on CMA help CMA pages are currently used as a fallback for moveable page allocations only when all regular moveable pages have been @@ -549,7 +549,7 @@ config CMA_DIRECT_UTILIZATION config CMA_PCP_LISTS bool "Create PCP lists for CMA memory" - depends on CMA && CMA_DIRECT_UTILIZATION && QGKI + depends on CMA && CMA_DIRECT_UTILIZATION help Improve memory utilization by creating PCP lists that contain CMA pages to satisfy order-0 allocations when appropriate. Increased From 6d728c9921c4b5bfcf673d5d2425ca318630880e Mon Sep 17 00:00:00 2001 From: "Isaac J. Manjarres" Date: Thu, 19 Mar 2020 14:37:50 -0700 Subject: [PATCH 2/4] arm64: defconfig: Enable CMA optimizations for genericarmv8-64 Enable the CMA optimizations for the genericarmv8-64 configuration. Change-Id: Ib65684f4d3c89d7a6bf9961d6538cbeb84cec638 Signed-off-by: Isaac J. Manjarres --- arch/arm64/configs/vendor/genericarmv8-64_defconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/configs/vendor/genericarmv8-64_defconfig b/arch/arm64/configs/vendor/genericarmv8-64_defconfig index 74f8009b737f..4f1e1285dc43 100644 --- a/arch/arm64/configs/vendor/genericarmv8-64_defconfig +++ b/arch/arm64/configs/vendor/genericarmv8-64_defconfig @@ -76,6 +76,8 @@ CONFIG_MODULE_SIG=y CONFIG_KSM=y CONFIG_MEMORY_FAILURE=y CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_CMA_DIRECT_UTILIZATION=y +CONFIG_CMA_PCP_LISTS=y CONFIG_NET=y CONFIG_PACKET=y CONFIG_UNIX=y From 851cb188d0695d1d484bfe6c0023703a11804c9c Mon Sep 17 00:00:00 2001 From: "Isaac J. Manjarres" Date: Thu, 19 Mar 2020 15:11:30 -0700 Subject: [PATCH 3/4] arm64: defconfig: Enable ZRAM on genericarmv8-64 Enable the configs necessary to enable ZRAM functionality on genericarmv8-64. Change-Id: Iebb618a4b716f0dee27f6ddd7e14975481d4a3c8 Signed-off-by: Isaac J. Manjarres --- arch/arm64/configs/vendor/genericarmv8-64_defconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/configs/vendor/genericarmv8-64_defconfig b/arch/arm64/configs/vendor/genericarmv8-64_defconfig index 4f1e1285dc43..827a48c87bf8 100644 --- a/arch/arm64/configs/vendor/genericarmv8-64_defconfig +++ b/arch/arm64/configs/vendor/genericarmv8-64_defconfig @@ -78,6 +78,7 @@ CONFIG_MEMORY_FAILURE=y CONFIG_TRANSPARENT_HUGEPAGE=y CONFIG_CMA_DIRECT_UTILIZATION=y CONFIG_CMA_PCP_LISTS=y +CONFIG_ZSMALLOC=y CONFIG_NET=y CONFIG_PACKET=y CONFIG_UNIX=y @@ -118,6 +119,7 @@ CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y CONFIG_BRCMSTB_GISB_ARB=y CONFIG_SIMPLE_PM_BUS=y CONFIG_VEXPRESS_CONFIG=y +CONFIG_ZRAM=y CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_NBD=m CONFIG_BLK_DEV_RAM=y From eee5991b7fd3f75af2f225960e4b2907203efa2b Mon Sep 17 00:00:00 2001 From: "Isaac J. Manjarres" Date: Thu, 19 Mar 2020 16:02:27 -0700 Subject: [PATCH 4/4] mm/Kconfig: Remove dependency on QCOM_MEM_OFFLINE for movable zone Enabling the movable zone shouldn't depend on QCOM_MEM_OFFLINE, so remove the dependency. Change-Id: Id5bd1a7b79adbf6f85c2007cd7d690a387258c83 Signed-off-by: Isaac J. Manjarres --- mm/Kconfig | 1 - 1 file changed, 1 deletion(-) diff --git a/mm/Kconfig b/mm/Kconfig index 2394ae5af38f..a8baf1da33fc 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -179,7 +179,6 @@ config MEMORY_HOTPLUG_MOVABLE_NODE bool "Add hot-added memory blocks to ZONE_MOVABLE type" default n depends on MEMORY_HOTPLUG - depends on QCOM_MEM_OFFLINE help When onlining memory blocks, this option helps to add the target memory block to ZONE_MOVABLE zone type. For successful offlining,