mirror of
https://gitee.com/openharmony/startup_init
synced 2025-03-01 17:08:26 +00:00
!1555 FIX: 实现l0产品param workspace大小自定义
Merge pull request !1555 from cheng_jinsong/1123_mem
This commit is contained in:
commit
7b3ce3fd74
@ -28,5 +28,8 @@ declare_args() {
|
||||
enable_ohos_startup_init_lite_use_posix_file_api = false
|
||||
config_ohos_startup_init_lite_data_path = "/"
|
||||
|
||||
# config memory size for liteos-m
|
||||
config_ohos_startup_init_lite_memory_size = 5120
|
||||
|
||||
# boot_kernel_extended_cmdline for extend cmdline
|
||||
}
|
||||
|
@ -69,6 +69,10 @@ if (defined(ohos_lite)) {
|
||||
"PARAMWORKSPACE_NEED_MUTEX",
|
||||
]
|
||||
}
|
||||
if (defined(config_ohos_startup_init_lite_memory_size)) {
|
||||
defines +=
|
||||
[ "PARAM_WORKSPACE_MAX=${config_ohos_startup_init_lite_memory_size}" ]
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (use_musl) {
|
||||
|
@ -59,7 +59,9 @@ extern "C" {
|
||||
#ifdef STARTUP_INIT_TEST
|
||||
#define PARAM_WORKSPACE_MAX (1024 * 50)
|
||||
#else
|
||||
#define PARAM_WORKSPACE_MAX (1024 * 4)
|
||||
#ifndef PARAM_WORKSPACE_MAX
|
||||
#define PARAM_WORKSPACE_MAX (1024 * 5)
|
||||
#endif
|
||||
#endif
|
||||
#define PARAM_WORKSPACE_SMALL PARAM_WORKSPACE_MAX
|
||||
#define PARAM_WORKSPACE_DEF PARAM_WORKSPACE_MAX
|
||||
|
@ -103,6 +103,10 @@ static_library("param_init_lite") {
|
||||
"PARAM_SUPPORT_CYCLE_CHECK",
|
||||
]
|
||||
}
|
||||
if (defined(config_ohos_startup_init_lite_memory_size)) {
|
||||
defines +=
|
||||
[ "PARAM_WORKSPACE_MAX=${config_ohos_startup_init_lite_memory_size}" ]
|
||||
}
|
||||
}
|
||||
|
||||
static_library("param_client_lite") {
|
||||
@ -148,5 +152,10 @@ static_library("param_client_lite") {
|
||||
include_dirs += [ "$root_out_dir/gen/init" ]
|
||||
defines += [ "PARAM_LOAD_CFG_FROM_CODE" ]
|
||||
}
|
||||
|
||||
if (defined(config_ohos_startup_init_lite_memory_size)) {
|
||||
defines +=
|
||||
[ "PARAM_WORKSPACE_MAX=${config_ohos_startup_init_lite_memory_size}" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -215,13 +215,26 @@ INIT_LOCAL_API int ParamMutexDelete(ParamMutex *mutex)
|
||||
#endif
|
||||
|
||||
#ifdef __LITEOS_M__
|
||||
__attribute__((weak)) void* GetSysParamMem(uint32_t spaceSize)
|
||||
{
|
||||
return malloc(spaceSize);
|
||||
}
|
||||
|
||||
__attribute__((weak)) void FreeSysParamMem(void *mem)
|
||||
{
|
||||
if (mem == NULL) {
|
||||
return;
|
||||
}
|
||||
free(mem);
|
||||
}
|
||||
|
||||
INIT_LOCAL_API void *GetSharedMem(const char *fileName, MemHandle *handle, uint32_t spaceSize, int readOnly)
|
||||
{
|
||||
PARAM_CHECK(spaceSize <= PARAM_WORKSPACE_MAX, return NULL, "Invalid spaceSize %u", spaceSize);
|
||||
UNUSED(fileName);
|
||||
UNUSED(handle);
|
||||
UNUSED(readOnly);
|
||||
return (void *)malloc(spaceSize);
|
||||
return GetSysParamMem(spaceSize);
|
||||
}
|
||||
|
||||
INIT_LOCAL_API void FreeSharedMem(const MemHandle *handle, void *mem, uint32_t dataSize)
|
||||
@ -229,7 +242,7 @@ INIT_LOCAL_API void FreeSharedMem(const MemHandle *handle, void *mem, uint32_t d
|
||||
PARAM_CHECK(mem != NULL && handle != NULL, return, "Invalid mem or handle");
|
||||
UNUSED(handle);
|
||||
UNUSED(dataSize);
|
||||
free(mem);
|
||||
FreeSysParamMem(mem);
|
||||
}
|
||||
|
||||
INIT_LOCAL_API void paramMutexEnvInit(void)
|
||||
|
Loading…
x
Reference in New Issue
Block a user