mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-29 13:28:27 +00:00
files: Merge shmalloc() to fle_init()
Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by: Andrei Vagin <avagin@virtuozzo.com>
This commit is contained in:
parent
7e9fe49f54
commit
82acfd4487
13
criu/files.c
13
criu/files.c
@ -692,12 +692,19 @@ int rst_file_params(int fd, FownEntry *fown, int flags)
|
|||||||
return 0;
|
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->pid = pid;
|
||||||
fle->fe = fe;
|
fle->fe = fe;
|
||||||
fle->received = 0;
|
fle->received = 0;
|
||||||
fle->stage = FLE_INITIALIZED;
|
fle->stage = FLE_INITIALIZED;
|
||||||
|
|
||||||
|
return fle;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int collect_fd(int pid, FdinfoEntry *e, struct rst_info *rst_info)
|
static int collect_fd(int pid, FdinfoEntry *e, struct rst_info *rst_info)
|
||||||
@ -708,12 +715,10 @@ static int collect_fd(int pid, FdinfoEntry *e, struct rst_info *rst_info)
|
|||||||
pr_info("Collect fdinfo pid=%d fd=%d id=%#x\n",
|
pr_info("Collect fdinfo pid=%d fd=%d id=%#x\n",
|
||||||
pid, e->fd, e->id);
|
pid, e->fd, e->id);
|
||||||
|
|
||||||
new_le = shmalloc(sizeof(*new_le));
|
new_le = alloc_fle(pid, e);
|
||||||
if (!new_le)
|
if (!new_le)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
fle_init(new_le, pid, e);
|
|
||||||
|
|
||||||
fdesc = find_file_desc(e);
|
fdesc = find_file_desc(e);
|
||||||
if (fdesc == NULL) {
|
if (fdesc == NULL) {
|
||||||
pr_err("No file for fd %d id %#x\n", e->fd, e->id);
|
pr_err("No file for fd %d id %#x\n", e->fd, e->id);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user