From abcdf83e230f13bd02a9efa40477d8a879f4e596 Mon Sep 17 00:00:00 2001 From: Lucchetto Date: Wed, 16 Sep 2020 18:48:36 +0200 Subject: msm8996-common: Adapt libinit to Android 11 Change-Id: Ia6b6f753891b639dad4e380bdba6b594faf2a550 --- init/Android.bp | 5 ++++- init/init_msm8996.cpp | 29 ++++++++++++++++++++--------- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/init/Android.bp b/init/Android.bp index 7cc57b6..dad6e26 100644 --- a/init/Android.bp +++ b/init/Android.bp @@ -1,5 +1,5 @@ // -// Copyright (C) 2019 The LineageOS Project +// Copyright (C) 2019-2020 The LineageOS Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -21,5 +21,8 @@ cc_library_static { include_dirs: [ "system/core/base/include", "system/core/init" + ], + shared_libs: [ + "libbase", ] } diff --git a/init/init_msm8996.cpp b/init/init_msm8996.cpp index e2de323..bdaaaa8 100644 --- a/init/init_msm8996.cpp +++ b/init/init_msm8996.cpp @@ -1,7 +1,7 @@ /* Copyright (c) 2015, The Linux Foundation. All rights reserved. Copyright (C) 2016 The CyanogenMod Project. - Copyright (C) 2017-2018 The LineageOS Project. + Copyright (C) 2017-2021 The LineageOS Project. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are @@ -36,8 +36,8 @@ #include "property_service.h" #include "vendor_init.h" -using android::base::GetProperty; -using android::init::property_set; +#define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_ +#include char const *heapminfree; char const *heapmaxfree; @@ -59,16 +59,27 @@ void check_device() } } +void property_override(char const prop[], char const value[], bool add = true) +{ + auto pi = (prop_info *) __system_property_find(prop); + + if (pi != nullptr) { + __system_property_update(pi, value, strlen(value)); + } else if (add) { + __system_property_add(prop, strlen(prop), value, strlen(value)); + } +} + void vendor_load_properties() { check_device(); - property_set("dalvik.vm.heapstartsize", "8m"); - property_set("dalvik.vm.heapgrowthlimit", "256m"); - property_set("dalvik.vm.heapsize", "512m"); - property_set("dalvik.vm.heaptargetutilization", "0.75"); - property_set("dalvik.vm.heapminfree", heapminfree); - property_set("dalvik.vm.heapmaxfree", heapmaxfree); + property_override("dalvik.vm.heapstartsize", "8m"); + property_override("dalvik.vm.heapgrowthlimit", "256m"); + property_override("dalvik.vm.heapsize", "512m"); + property_override("dalvik.vm.heaptargetutilization", "0.75"); + property_override("dalvik.vm.heapminfree", heapminfree); + property_override("dalvik.vm.heapmaxfree", heapmaxfree); } -- cgit v1.2.3