[CRIU] [PATCH 16/28] files: Merge shmalloc() to fle_init()

Kirill Tkhai ktkhai at virtuozzo.com
Mon Jun 5 20:25:47 MSK 2017


Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
---
 criu/files.c |   13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/criu/files.c b/criu/files.c
index 6d21b9e1f..eeb53271e 100644
--- a/criu/files.c
+++ b/criu/files.c
@@ -685,12 +685,19 @@ int rst_file_params(int fd, FownEntry *fown, int flags)
 	return 0;
 }
 
-static void fle_init(struct fdinfo_list_entry *fle, int pid, FdinfoEntry *fe)
+static struct fdinfo_list_entry *alloc_fle(int pid, FdinfoEntry *fe)
 {
+	struct fdinfo_list_entry *fle;
+
+	fle = shmalloc(sizeof(*fle));
+	if (!fle)
+		return NULL;
 	fle->pid = pid;
 	fle->fe = fe;
 	fle->received = 0;
 	fle->stage = FLE_INITIALIZED;
+
+	return fle;
 }
 
 int collect_fd(int pid, FdinfoEntry *e, struct rst_info *rst_info)
@@ -701,12 +708,10 @@ int collect_fd(int pid, FdinfoEntry *e, struct rst_info *rst_info)
 	pr_info("Collect fdinfo pid=%d fd=%d id=%#x\n",
 		pid, e->fd, e->id);
 
-	new_le = shmalloc(sizeof(*new_le));
+	new_le = alloc_fle(pid, e);
 	if (!new_le)
 		return -1;
 
-	fle_init(new_le, pid, e);
-
 	fdesc = find_file_desc(e);
 	if (fdesc == NULL) {
 		pr_err("No file for fd %d id %#x\n", e->fd, e->id);



More information about the CRIU mailing list