From a5e7a9d1cf44811332eff6a2687d5760497f4c6c Mon Sep 17 00:00:00 2001 From: Eric Date: Wed, 31 Oct 2018 16:21:49 -0700 Subject: [PATCH] build: kernel options, additions to top/busybox, modules (#253) Add kernel build options to conserve RAM. Measured 520k reduction. disable CRASHLOG interface, we can't really see it anyway CONFIG_KERNEL_CRASHLOG=n remove process core dump support (see above reasoning) CONFIG_KERNEL_ELF_CORE=n there is no "swap" CONFIG_KERNEL_SWAP=n remove debug symbols CONFIG_KERNEL_KALLSYMS=n remove debug info CONFIG_KERNEL_DEBUG_INFO=n more unnecessary kernel exports CONFIG_STRIP_KERNEL_EXPORTS=y remove libraries of unnecessary functions CONFIG_USE_MKLIBS=y compress /tmp CONFIG_PROCD_ZRAM_TMPFS=y seldom used key stroke CONFIG_KERNEL_MAGIC_SYSRQ=n Not used with AREDN CONFIG_PACKAGE_MAC80211_MESH=n Above options Ref: https://openwrt.org/docs/guide-user/additional-software/saving-space#modifying_build_configuration_variables ------------- Additional options CONFIG_BUSYBOX_DEFAULT_MKSWAP=n CONFIG_BUSYBOX_CONFIG_MKSWAP=n improved "top" command. CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_INTERACTIVE=y additional modules to build CONFIG_PACKAGE_kmod-usb3=m CONFIG_PACKAGE_block-mount=m CONFIG_PACKAGE_kmod-usb-storage=m CONFIG_PACKAGE_kmod-usb-storage-extras=m CONFIG_PACKAGE_kmod-usb-storage-uas=m Additional filesystem modules complementing USB storage CONFIG_PACKAGE_kmod-fs-vfat=m CONFIG_PACKAGE_kmod-fs-ntfs=m CONFIG_PACKAGE_kmod-fs-ext4=m CONFIG_PACKAGE_e2fsprogs=m Reduce log usage of /tmp and RAM I can't find my notes of course... CONFIG_LOG_BUF_SHIFT=16 CONFIG_LOG_CPU_MAX_BUF_SHIFT=16 additional options to support performance metrics CONFIG_BUSYBOX_CONFIG_IOSTAT=y CONFIG_BUSYBOX_CONFIG_RENICE=y CONFIG_BUSYBOX_CONFIG_FEATURE_PS_LONG=y --- configs/common.config | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/configs/common.config b/configs/common.config index 585a93dc..ac31c579 100644 --- a/configs/common.config +++ b/configs/common.config @@ -1,3 +1,15 @@ +CONFIG_KERNEL_CRASHLOG=n +CONFIG_KERNEL_SWAP=n +CONFIG_KERNEL_KALLSYMS=n +CONFIG_KERNEL_DEBUG_INFO=n +CONFIG_KERNEL_ELF_CORE=n +CONFIG_KERNEL_MAGIC_SYSRQ=n +CONFIG_PACKAGE_MAC80211_MESH=n +CONFIG_STRIP_KERNEL_EXPORTS=y +CONFIG_USE_MKLIBS=y +CONFIG_LOG_BUF_SHIFT=16 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=16 +CONFIG_PROCD_ZRAM_TMPFS=y CONFIG_KERNEL_IPV6=n CONFIG_KERNEL_IPV6_MULTIPLE_TABLES=n CONFIG_KERNEL_IPV6_SUBTREES=n @@ -10,6 +22,9 @@ CONFIG_BUSYBOX_CUSTOM=y CONFIG_BUSYBOX_DEFAULT_FEATURE_IPV6=n CONFIG_BUSYBOX_CONFIG_FEATURE_IPV6=n CONFIG_BUSYBOX_CONFIG_TELNETD=y +CONFIG_BUSYBOX_DEFAULT_MKSWAP=n +CONFIG_BUSYBOX_CONFIG_MKSWAP=n +CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_INTERACTIVE=y CONFIG_PACKAGE_dnsmasq=y CONFIG_PACKAGE_dropbear=y CONFIG_PACKAGE_iperf3=m @@ -20,6 +35,15 @@ CONFIG_PACKAGE_kmod-usb-ehci=m CONFIG_PACKAGE_kmod-usb-ohci=m CONFIG_PACKAGE_kmod-usb-uhci=m CONFIG_PACKAGE_kmod-usb2=m +CONFIG_PACKAGE_kmod-usb3=m +CONFIG_PACKAGE_block-mount=m +CONFIG_PACKAGE_kmod-fs-vfat=m +CONFIG_PACKAGE_kmod-fs-ntfs=m +CONFIG_PACKAGE_kmod-fs-ext4=m +CONFIG_PACKAGE_e2fsprogs=m +CONFIG_PACKAGE_kmod-usb-storage=m +CONFIG_PACKAGE_kmod-usb-storage-extras=m +CONFIG_PACKAGE_kmod-usb-storage-uas=m CONFIG_PACKAGE_libgcc=y CONFIG_PACKAGE_mtd=y CONFIG_PACKAGE_ppp=n @@ -78,4 +102,3 @@ CONFIG_PACKAGE_vtun=m CONFIG_IMAGEOPT=y CONFIG_VERSIONOPT=y CONFIG_VERSION_DIST="AREDN" -