Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 882b7ca1 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

ANDROID: GKI: do not export symbol_get/put()



People keep trying to use these in Android kernels, and they should not
be used, use the correct, real, symbol name instead.

Turn off a number of things in the allmodconfig builds that were using
these symbols to not break the build.  That was for build-testing only,
no functional changes.

Bug: 157965270
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
Change-Id: I13bf351b3ae59fa6dfed7bd41dfff8c8d521e3a4
parent bafbd059
Loading
Loading
Loading
Loading
+32 −0
Original line number Diff line number Diff line
DEFCONFIG=allmodconfig

# When trying to prevent others from using symbol_get/put we need to exclude a
# number of in-kernel modules that use those functions.
SYMBOL_GET_USERS="			\
	-d CAIF				\
	-d DELL_LAPTOP			\
	-d DRM_I915			\
	-d DVB_USB			\
	-d DVB_USB_V2			\
	-d FSL_ENETC			\
	-d FSL_ENETC_VF			\
	-d INTEL_IPS			\
	-d KVM				\
	-d MEDIA_DIGITAL_TV_SUPPORT	\
	-d MEDIA_PCI_SUPPORT		\
	-d MEDIA_RADIO_SUPPORT		\
	-d MTD_CFI			\
	-d MTD_GEN_PROBE		\
	-d MTD_HYPERBUS			\
	-d MTD_JEDECPROBE		\
	-d MTD_TS5500			\
	-d NFS_V4			\
	-d SAMPLE_HW_BREAKPOINT		\
	-d VFIO				\
	-d VIDEO_CX231XX		\
	-d VIDEO_EM28XX			\
	-d VIDEO_GO7007			\
	-d VIDEO_PVRUSB2		\
	-d VIDEO_TM6000			\
	-d VIDEO_USBVISION		\
"

POST_DEFCONFIG_CMDS="update_config"
function update_config() {
    ${KERNEL_DIR}/scripts/config --file ${OUT_DIR}/.config \
@@ -7,6 +38,7 @@ function update_config() {
         -d CPU_BIG_ENDIAN \
         -d STM \
         -d TEST_MEMCAT_P \
         ${SYMBOL_GET_USERS} \
         -e UNWINDER_FRAME_POINTER \

    (cd ${OUT_DIR} && \
+0 −2
Original line number Diff line number Diff line
@@ -1079,7 +1079,6 @@ void __symbol_put(const char *symbol)
	module_put(owner);
	preempt_enable();
}
EXPORT_SYMBOL(__symbol_put);

/* Note this assumes addr is a function, which it currently always is. */
void symbol_put_addr(void *addr)
@@ -2259,7 +2258,6 @@ void *__symbol_get(const char *symbol)

	return sym ? (void *)kernel_symbol_value(sym) : NULL;
}
EXPORT_SYMBOL_GPL(__symbol_get);

/*
 * Ensure that an exported symbol [global namespace] does not already exist