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

Commit dd6a85cc authored by Quang Luong's avatar Quang Luong
Browse files

uml: init: add USER_MODE_LINUX cflag, USER_MODE_LINUX case in init.cpp



Modified Android.mk to define cflag "USER_MODE_LINUX" if
TARGET_USER_MODE_LINUX := true in BoardCofig.mk.
Modified set_mmap_rnd_bits_action to return 0 if "USER_MODE_LINUX" is
defined. This is needed since uml does not support the mmap_rnd_bits
sysctl, and init would otherwise crash without this check.

Test: manual

Bug: 32523022
Change-Id: I409ef64a1fa253bfb3f9fb59d0267be159819bb8
Signed-off-by: default avatarQuang Luong <qal@google.com>
parent 3f4cea94
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -30,6 +30,10 @@ endif

init_options += -DLOG_UEVENTS=0

ifeq ($(TARGET_USER_MODE_LINUX), true)
    init_cflags += -DUSER_MODE_LINUX
endif

init_cflags += \
    $(init_options) \
    -Wall -Wextra \
+4 −1
Original line number Diff line number Diff line
@@ -379,7 +379,10 @@ static int set_mmap_rnd_bits_action(const std::vector<std::string>& args)
    int ret = -1;

    /* values are arch-dependent */
#if defined(__aarch64__)
#if defined(USER_MODE_LINUX)
    /* uml does not support mmap_rnd_bits */
    ret = 0;
#elif defined(__aarch64__)
    /* arm64 supports 18 - 33 bits depending on pagesize and VA_SIZE */
    if (set_mmap_rnd_bits_min(33, 24, false)
            && set_mmap_rnd_bits_min(16, 16, true)) {