Skip to content
Permalink
Browse files
android: Enable building ashmem and binder as modules
We want to enable use of the Android ashmem and binder drivers to
support Anbox, but they should not be built-in as that would waste
resources and increase security attack surface on systems that don't
need them.

- Add a MODULE_LICENSE declaration to ashmem
- Change the Makefiles to build each driver as an object with the
  "_linux" suffix (which is what Anbox expects)
- Change config symbol types to tristate
  • Loading branch information
bwhacks authored and heftig committed Oct 12, 2020
1 parent abb5da8 commit 30296a6a6401bac916ed1716761292ee4896cf7d
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 7 deletions.
@@ -9,7 +9,7 @@ config ANDROID
if ANDROID

config ANDROID_BINDER_IPC
bool "Android Binder IPC Driver"
tristate "Android Binder IPC Driver"
depends on MMU
default n
help
@@ -1,6 +1,7 @@
# SPDX-License-Identifier: GPL-2.0-only
ccflags-y += -I$(src) # needed for trace events

obj-$(CONFIG_ANDROID_BINDERFS) += binderfs.o
obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o binder_alloc.o
obj-$(CONFIG_ANDROID_BINDER_IPC_SELFTEST) += binder_alloc_selftest.o
obj-$(CONFIG_ANDROID_BINDER_IPC) += binder_linux.o
binder_linux-y := binder.o binder_alloc.o
binder_linux-$(CONFIG_ANDROID_BINDERFS) += binderfs.o
binder_linux-$(CONFIG_ANDROID_BINDER_IPC_SELFTEST) += binder_alloc_selftest.o
@@ -38,7 +38,7 @@ enum {
};
static uint32_t binder_alloc_debug_mask = BINDER_DEBUG_USER_ERROR;

module_param_named(debug_mask, binder_alloc_debug_mask,
module_param_named(alloc_debug_mask, binder_alloc_debug_mask,
uint, 0644);

#define binder_alloc_debug(mask, x...) \
@@ -4,7 +4,7 @@ menu "Android"
if ANDROID

config ASHMEM
bool "Enable the Anonymous Shared Memory Subsystem"
tristate "Enable the Anonymous Shared Memory Subsystem"
depends on SHMEM
help
The ashmem subsystem is a new shared memory allocator, similar to
@@ -3,4 +3,5 @@ ccflags-y += -I$(src) # needed for trace events

obj-y += ion/

obj-$(CONFIG_ASHMEM) += ashmem.o
obj-$(CONFIG_ASHMEM) += ashmem_linux.o
ashmem_linux-y += ashmem.o
@@ -24,6 +24,7 @@
#include <linux/bitops.h>
#include <linux/mutex.h>
#include <linux/shmem_fs.h>
#include <linux/module.h>
#include "ashmem.h"

#define ASHMEM_NAME_PREFIX "dev/ashmem/"
@@ -965,3 +966,5 @@ static int __init ashmem_init(void)
return ret;
}
device_initcall(ashmem_init);

MODULE_LICENSE("GPL v2");

0 comments on commit 30296a6

Please sign in to comment.