Skip to content

Commit 1f17430

Browse files
Swetha ChikkaboraiahGerrit - the friendly Code Review server
Swetha Chikkaboraiah
authored and
Gerrit - the friendly Code Review server
committed
AndroidKernel: Disable debugfs for user builds
Debugfs is not needed on user builds, so disabling same at compile time for ARM 64. Change-Id: If6708c9de060584ebcba4cac9bad8e85d6a5ab7f Signed-off-by: Swetha Chikkaboraiah <schikk@codeaurora.org>
1 parent 3a91551 commit 1f17430

File tree

2 files changed

+46
-3
lines changed

2 files changed

+46
-3
lines changed

AndroidKernel.mk

+17-3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ ifneq ($(TARGET_KERNEL_APPEND_DTB), true)
1010
$(info Using DTB Image)
1111
INSTALLED_DTBIMAGE_TARGET := $(PRODUCT_OUT)/dtb.img
1212
endif
13+
MAKE_ARGS := $(strip $(TARGET_KERNEL_MAKE_ARGS))
14+
KERNEL_DISABLE_DEBUGFS := $(TARGET_KERNEL_DISABLE_DEBUGFS)
1315

1416
TARGET_KERNEL_MAKE_ENV := $(strip $(TARGET_KERNEL_MAKE_ENV))
1517
ifeq ($(TARGET_KERNEL_MAKE_ENV),)
@@ -138,6 +140,7 @@ $(info Using appended DTB)
138140
TARGET_PREBUILT_INT_KERNEL := $(TARGET_PREBUILT_INT_KERNEL)-dtb
139141
endif
140142

143+
KERNEL_DEBUGFS := $(KERNEL_OUT)/tmp
141144
KERNEL_HEADERS_INSTALL := $(KERNEL_OUT)/usr
142145
KERNEL_MODULES_INSTALL ?= system
143146
KERNEL_MODULES_OUT ?= $(PRODUCT_OUT)/$(KERNEL_MODULES_INSTALL)/lib/modules
@@ -162,6 +165,9 @@ mpath=`dirname $$mdpath`; rm -rf $$mpath;\
162165
fi
163166
endef
164167

168+
$(KERNEL_OUT): $(KERNEL_DEBUGFS)
169+
mkdir -p $(KERNEL_OUT)
170+
165171
ifneq ($(KERNEL_LEGACY_DIR),true)
166172
$(KERNEL_USR): $(KERNEL_HEADERS_INSTALL)
167173
rm -rf $(KERNEL_SYMLINK)
@@ -170,9 +176,6 @@ $(KERNEL_USR): $(KERNEL_HEADERS_INSTALL)
170176
$(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_USR)
171177
endif
172178

173-
$(KERNEL_OUT):
174-
mkdir -p $(KERNEL_OUT)
175-
176179
$(KERNEL_CONFIG): $(KERNEL_OUT)
177180
$(MAKE) -C $(TARGET_KERNEL_SOURCE) O=$(BUILD_ROOT_LOC)$(KERNEL_OUT) $(KERNEL_MAKE_ENV) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(real_cc) $(KERNEL_DEFCONFIG)
178181
$(hide) if [ ! -z "$(KERNEL_CONFIG_OVERRIDE)" ]; then \
@@ -206,6 +209,17 @@ $(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_OUT) $(KERNEL_HEADERS_INSTALL)
206209
$(clean-module-folder)
207210
endif
208211

212+
$(KERNEL_DEBUGFS):
213+
KERNEL_DIR=$(TARGET_KERNEL_SOURCE) \
214+
DEFCONFIG=$(KERNEL_DEFCONFIG) \
215+
OUT_DIR=$(KERNEL_OUT) \
216+
ARCH=$(KERNEL_ARCH) \
217+
CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) \
218+
DISABLE_DEBUGFS=$(KERNEL_DISABLE_DEBUGFS) \
219+
$(TARGET_KERNEL_SOURCE)/disable_dbgfs.sh \
220+
$(real_cc) \
221+
$(TARGET_KERNEL_MAKE_ARGS)
222+
209223
$(KERNEL_HEADERS_INSTALL): $(KERNEL_OUT)
210224
$(hide) if [ ! -z "$(KERNEL_HEADER_DEFCONFIG)" ]; then \
211225
rm -f $(BUILD_ROOT_LOC)$(KERNEL_CONFIG) && \

disable_dbgfs.sh

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#!/bin/bash
2+
# SPDX-License-Identifier: GPL-2.0
3+
4+
# disable debugfs for user builds
5+
export MAKE_ARGS=$@
6+
7+
if [ ${DISABLE_DEBUGFS} == "true" ]; then
8+
echo "build variant ${TARGET_BUILD_VARIANT}"
9+
if [ ${TARGET_BUILD_VARIANT} == "user" ] && \
10+
[ ${ARCH} == "arm64" ]; then
11+
echo "combining fragments for user build"
12+
(cd $KERNEL_DIR && \
13+
ARCH=${ARCH} CROSS_COMPILE=${CROSS_COMPILE}\
14+
./scripts/kconfig/merge_config.sh \
15+
./arch/${ARCH}/configs/$DEFCONFIG \
16+
./arch/${ARCH}/configs/vendor/debugfs.config
17+
make ${MAKE_ARGS} ARCH=${ARCH} \
18+
CROSS_COMPILE=${CROSS_COMPILE} savedefconfig
19+
mv defconfig ./arch/${ARCH}/configs/$DEFCONFIG
20+
rm .config)
21+
else
22+
if [[ ${DEFCONFIG} == *"perf_defconfig" ]] && \
23+
[ ${ARCH} == "arm64" ]; then
24+
echo "resetting perf defconfig"
25+
(cd ${KERNEL_DIR} && \
26+
git checkout arch/$ARCH/configs/$DEFCONFIG)
27+
fi
28+
fi
29+
fi

0 commit comments

Comments
 (0)