Commit 650be3d2 authored by Andrey Vagin's avatar Andrey Vagin Committed by Pavel Emelyanov

mm: clean up parasite (v2)

Now it has only one descritor for dumping pages

v2: remove rudiments
Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
parent e869c16d
......@@ -57,12 +57,8 @@ struct parasite_dump_pages_args {
struct vma_entry vma_entry;
unsigned long nrpages_dumped; /* how many pages are dumped */
int fd_type;
};
#define PG_PRIV 0
#define PG_SHARED 1
/*
* Misc sfuff, that is too small for separate file, but cannot
* be read w/o using parasite
......
......@@ -568,10 +568,8 @@ int parasite_dump_pages_seized(struct parasite_ctl *ctl, struct list_head *vma_a
pr_info_vma(vma_area);
parasite_dumppages.vma_entry = vma_area->vma;
if (vma_area_is(vma_area, VMA_ANON_PRIVATE) ||
vma_area_is(vma_area, VMA_FILE_PRIVATE)) {
parasite_dumppages.fd_type = PG_PRIV;
} else {
if (!vma_area_is(vma_area, VMA_ANON_PRIVATE) &&
!vma_area_is(vma_area, VMA_FILE_PRIVATE)) {
pr_warn("Unexpected VMA area found\n");
continue;
}
......
......@@ -113,20 +113,18 @@ static inline int should_dump_page(struct vma_entry *vmae, unsigned char mincore
#endif
}
static int fd_pages[2] = { -1, -1 };
static int fd_pages = -1;
static int dump_pages_init(parasite_status_t *st)
{
int ret;
ret = fd_pages[PG_PRIV] = recv_fd(tsock);
if (ret < 0)
fd_pages = recv_fd(tsock);
if (fd_pages < 0)
goto err;
return 0;
err:
SET_PARASITE_RET(st, ret);
SET_PARASITE_RET(st, fd_pages);
return -1;
}
......@@ -145,7 +143,7 @@ static int dump_pages(struct parasite_dump_pages_args *args)
args->nrpages_dumped = 0;
prot_old = prot_new = 0;
fd = fd_pages[args->fd_type];
fd = fd_pages;
/* Start from the end of file */
sys_lseek(fd, 0, SEEK_END);
......@@ -239,8 +237,7 @@ err:
static int dump_pages_fini(void)
{
sys_close(fd_pages[PG_PRIV]);
sys_close(fd_pages);
return 0;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment