From 2dd91a8fa0658c8c8e3e843a5b31adba1ee2941f Mon Sep 17 00:00:00 2001 From: wanghaoxu Date: Tue, 8 Nov 2022 07:33:28 +0000 Subject: [PATCH 1/2] add log for ipc crash problem Signed-off-by: wanghaoxu --- frameworks/liteipc_linux/src/liteipc_adapter.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/frameworks/liteipc_linux/src/liteipc_adapter.c b/frameworks/liteipc_linux/src/liteipc_adapter.c index 3141362..474527d 100644 --- a/frameworks/liteipc_linux/src/liteipc_adapter.c +++ b/frameworks/liteipc_linux/src/liteipc_adapter.c @@ -398,13 +398,22 @@ static bool IsValidCB(IpcMsg* ipcMsg) static void HandleSpawnLooper(const IpcContext *context, const struct FuncPair *funcPair) { pthread_t thread; + LOG(ERROR, "enter handlespawnlooper funcpair is %p", funcPair); struct BinderThreadDesc *btd = (struct BinderThreadDesc *)malloc(sizeof(struct BinderThreadDesc)); + LOG(ERROR, "malloc finished! btd is %p", btd); if (btd == NULL) { return; } btd->context = context; - btd->func = funcPair->func; - btd->argv = funcPair->argv; + if (funcPair != NULL) { + btd->func = funcPair->func; + btd->argv = funcPair->argv; + } else { + LOG(ERROR, "funcPair is NULL!"); + btd->func = NULL; + btd->argv = NULL; + } + int ret = pthread_create(&thread, NULL, BinderThreadRoutine, btd); if (ret != 0) { free(btd); -- Gitee From 640377276a53cd6be1397fa2cf3e16971eb97dc6 Mon Sep 17 00:00:00 2001 From: wanghaoxu Date: Thu, 12 Jan 2023 08:28:03 +0000 Subject: [PATCH 2/2] fix ipcio max size Signed-off-by: wanghaoxu --- frameworks/liteipc/src/serializer.c | 2 +- interfaces/kits/liteipc_adapter.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/frameworks/liteipc/src/serializer.c b/frameworks/liteipc/src/serializer.c index 6bf26df..53465ba 100755 --- a/frameworks/liteipc/src/serializer.c +++ b/frameworks/liteipc/src/serializer.c @@ -24,7 +24,7 @@ #include "sys_binder.h" #endif -#define MAX_IO_SIZE 8192UL +#define MAX_IO_SIZE 64512UL #define MAX_OBJ_NUM 32UL #define MAX_DATA_BUFF_SIZE 65536UL diff --git a/interfaces/kits/liteipc_adapter.h b/interfaces/kits/liteipc_adapter.h index 937d88c..bf09115 100755 --- a/interfaces/kits/liteipc_adapter.h +++ b/interfaces/kits/liteipc_adapter.h @@ -35,7 +35,7 @@ extern "C" { #define IPC_WAIT_FOREVER 0XFFFFFFFF #define IPC_TIMEOUT_MIN 10 /* unit:ms */ #define IPC_INVAILD_TIMER_ID (timer_t)-1 -#define IPC_IO_DATA_MAX 8192UL +#define IPC_IO_DATA_MAX 64512UL typedef enum { LITEIPC_FLAG_DEFAULT = 0, // send and reply -- Gitee