Add related code which make libcareplus can run basic demo on aarch64. Signed-off-by: Jiajie Li <lijiajie11@huawei.com>
47 lines
1.3 KiB
Diff
47 lines
1.3 KiB
Diff
From 3566489ee43a348f41bb0fd9c779f1064956ea82 Mon Sep 17 00:00:00 2001
|
|
From: Roman Rashchupkin <rrashchupkin@cloudlinux.com>
|
|
Date: Thu, 25 Jan 2018 10:18:33 +0300
|
|
Subject: [PATCH 12/89] Fix kpatch_process_init/kpatch_coroutines_free
|
|
|
|
---
|
|
src/kpatch_coro.c | 7 ++++---
|
|
src/kpatch_process.c | 4 ++--
|
|
2 files changed, 6 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/src/kpatch_coro.c b/src/kpatch_coro.c
|
|
index ff485fc..45d4a0b 100644
|
|
--- a/src/kpatch_coro.c
|
|
+++ b/src/kpatch_coro.c
|
|
@@ -622,7 +622,8 @@ void kpatch_coroutines_free(struct kpatch_process *proc)
|
|
if (proc->coro.unwd)
|
|
unw_destroy_addr_space(proc->coro.unwd);
|
|
|
|
- list_for_each_entry_safe(c, tmp, &proc->coro.coros, list) {
|
|
- kpatch_coro_free(c);
|
|
- }
|
|
+ if (!list_empty(&proc->coro.coros))
|
|
+ list_for_each_entry_safe(c, tmp, &proc->coro.coros, list) {
|
|
+ kpatch_coro_free(c);
|
|
+ }
|
|
}
|
|
diff --git a/src/kpatch_process.c b/src/kpatch_process.c
|
|
index d394925..2f85373 100644
|
|
--- a/src/kpatch_process.c
|
|
+++ b/src/kpatch_process.c
|
|
@@ -1121,10 +1121,10 @@ kpatch_process_init(kpatch_process_t *proc,
|
|
list_init(&proc->vmaholes);
|
|
proc->num_objs = 0;
|
|
|
|
- if (process_get_comm(proc))
|
|
- goto out_unlock;
|
|
if (kpatch_coroutines_init(proc))
|
|
goto out_unlock;
|
|
+ if (process_get_comm(proc))
|
|
+ goto out_unlock;
|
|
|
|
return 0;
|
|
|
|
--
|
|
2.23.0
|
|
|